r-音乐文件不能在闪亮中播放



目标

用户在闪亮的应用上播放音乐

代码

我正在尝试使用闪亮的howlerjs扩展,让用户在闪亮的应用程序上播放音乐。以下是表现良好的一揽子回购的一个例子:

library(shiny)
library(howler)
audio_files_dir <- system.file( "examples/_audio", package = "howler")
addResourcePath("sample_audio", audio_files_dir)
audio_files <- file.path("sample_audio", list.files(audio_files_dir, ".mp3$"))

ui <- fluidPage(
title = "howler Example",
useHowlerJS(),

h3("Howler Example"),
howlerPlayer("sound", audio_files),
howlerSeekSlider("sound"),
howlerPreviousButton("sound"),
howlerBackButton("sound"),
howlerPlayPauseButton("sound"),
howlerForwardButton("sound"),
howlerNextButton("sound"),
howlerVolumeSlider("sound"),
tags$br(),
tags$br(),
tags$p(
"Track Name:",
textOutput("sound_track", container = tags$strong, inline = TRUE)
),
tags$p(
"Currently playing:",
textOutput("sound_playing", container = tags$strong, inline = TRUE)
),
tags$p(
"Duration:",
textOutput("sound_seek", container = tags$strong, inline = TRUE),
"/",
textOutput("sound_duration", container = tags$strong, inline = TRUE)
)
)
server <- function(input, output, session) {
output$sound_playing <- renderText({
if (isTRUE(input$sound_playing)) "Yes" else "No"
})

output$sound_duration <- renderText({
sprintf(
"%02d:%02.0f",
input$sound_duration %/% 60,
input$sound_duration %% 60
)
})

output$sound_seek <- renderText({
sprintf(
"%02d:%02.0f",
input$sound_seek %/% 60,
input$sound_seek %% 60
)
})

output$sound_track <- renderText({
req(input$sound_track)
sub("\.\w+$", "", basename(input$sound_track))
})
}
shinyApp(ui, server)

audio_files包含包作者提供的示例文件:

> file.path("sample_audio", list.files(audio_files_dir, ".mp3$"))
[1] "sample_audio/80s_vibe.mp3"    "sample_audio/rave_digger.mp3"
[3] "sample_audio/running_out.mp3"  

问题

我只做了一个改变。我将audio_files代码替换为音频文件的路径,如下所示:

audio_files <- list.files(path = "Music/", pattern= ".mp3$", full.names = TRUE)
> list.files(path = "Music/", pattern= ".mp3$", full.names = TRUE)
[1] "Music/l1.mp3" "Music/l2.mp3" "Music/l3.mp3"

其他一切都保持不变。应用程序打开时没有任何错误/警告。但是新的音乐文件不会播放。两个问题:

  1. 我在上面的代码中做错了什么,我的本地音频文件不在应用程序中播放,但在外部播放
  2. 请推荐其他用户界面来选择闪亮的音乐

为了使用新目录中的音乐,您还需要将addResourcePath更改为相关路径。在这种情况下,如果您使用addResourcePath("Music", "Music"),这应该足以让它工作。

最新更新