检索嵌入在 R Shiny 应用程序中的视频播放时间
Posted
技术标签:
【中文标题】检索嵌入在 R Shiny 应用程序中的视频播放时间【英文标题】:Retrieving a video's play-time that is embedded in an R Shiny app 【发布时间】:2020-06-01 23:26:45 【问题描述】:我正在尝试在 Shiny 应用程序中嵌入视频,并有一个操作按钮,当按下该按钮时,它会记录视频的播放时间。出于这个问题的目的,我真的只想在屏幕上粘贴/渲染文本播放时间。我正在使用下面的代码来获取视频,并且我已经看到了完全在 html 中完成此操作的方法,但似乎无法让它在 Shiny 中工作。
library(shiny)
library(tidyverse)
library(shinyjs)
ui <- fluidPage(
useShinyjs(),
tags$video(src = "my_video.mp4", type = "viedo/mp4", width = "500px", height = "300px", controls = "controls"),
actionButton(inputId = "get_time", label = "Get Time"),
textOutput("currentTime")
)
server <- function(input, output, session)
shinyApp(ui, server)
【问题讨论】:
【参考方案1】:这是一种方法。
library(shiny)
js <-
"Shiny.setInputValue('time', document.getElementById('myVideo').currentTime);"
ui <- fluidPage(
tags$video(id = "myVideo", src = "my_video.mp4", type = "video/mp4",
width = "500px", height = "300px", controls = "controls"),
actionButton(inputId = "get_time", label = "Get Time", onclick = js),
textOutput("currentTime")
)
server <- function(input, output, session)
output[["currentTime"]] <- renderText(
input[["time"]]
)
shinyApp(ui, server)
【讨论】:
以上是关于检索嵌入在 R Shiny 应用程序中的视频播放时间的主要内容,如果未能解决你的问题,请参考以下文章
R Shiny 如何在根据用户选择从 mysqlDB 检索数据时使用 renderPlot 构建条形图
如何使用 DT、R 和 Shiny 在表格的单元格中嵌入图像