【问题标题】:html5 is it possible to LIVE stream a .webm as it's being generatedhtml5 是否可以在生成 .webm 时对其进行直播
【发布时间】:2021-03-15 18:56:45
【问题描述】:

我正在使用带有记录功能的openvidu https://openvidu.io/

此记录功能,生成实时.webm

当我把它放在视频标签中时

<video width="90%" height="669" controls id="webmlive" preload="metadata" >
      <source src="..../recordings/sessionName/id121212.webm" type="video/webm" >
    </video>

并添加这个

<script>
        
        webmlive = document.getElementById("webmlive");
        
        webmlive.addEventListener("loadedmetadata" , function() {
            console.log("vStreamDuration "+webmlive.duration);
        }, false);
        
    </script>

日志显示“vStreamDuration Infinity”

默认从 0 开始播放,但无法滚动视频,只能暂停工作...

我怎样才能在最后一点开始播放并让用户决定滚动到开头...

【问题讨论】:

  • 您应该使用为实时流媒体构建的格式。像 HLS 或 DASH
  • @szatmary 我知道 HLS 和 DASH,但是 openvidu 中的内置功能正在生成一个 .webm,我可以使用像 .currentTime=0 或任何值这样的 JavaScript 来控制时间线播放,视频将在指定时间播放...但我需要一种方法来动态“重新加载”视频元数据...我敢肯定那里有办法...但隐藏...跨度>
  • 这是可能的,但您必须自己使用媒体源扩展进行大量实施工作。

标签: video-streaming html5-video video-player


【解决方案1】:

我发现了类似的东西

参数 -re -framerate 强制以输入帧率进行编码,如果不是,它将在流的中间停止...

ffmpeg -re -framerate 29.97 -i "https://example.com/recordings/weex-7/str_CAM_HGgs_con_XZQOm4Zem0.webm" -c:v libx264 -c:a aac -ac 1 -strict -2 -crf 18 -profile:v baseline -maxrate 1000k -bufsize 1835k -pix_fmt yuv420p -flags -global_header -hls_time 10 -hls_list_size 6 -hls_wrap 10 -start_number 1 'index.m3u8'

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-23
    • 2014-01-19
    • 1970-01-01
    • 1970-01-01
    • 2018-03-01
    • 2011-07-13
    • 2021-09-05
    • 2013-07-03
    相关资源
    最近更新 更多