gal*_*arm 12 ffmpeg video-streaming html5-video media-source mpeg-dash
我正在尝试使用媒体源扩展API将H.264内容直播到HTML5.
以下方法效果很好:
ffmpeg -i rtsp://10.50.1.29/media/video1 -vcodec copy -f mp4 -reset_timestamps 1 -movflags frag_keyframe+empty_moov -loglevel quiet out.mp4
然后:
mp4box -dash 1000 -frag 1000 -frag-rap out.mp4
我可以使用MP4Box输出(out_dashinit.mp4)并通过Web Sockets(块大块)将其发送到将客户端提供给媒体源API的JavaScript客户端.
但是,这对于实时内容来说不是一个好方法.
我现在要做的是创建一个单独的管道,以便以最小的可能延迟实时完成.使用FFmpeg,可以将输出重定向到stdout而不是out.mp4抓取内容.我无法弄清楚是否可以将MP4Box组合到管道中.
stdout)的东西,并可以逐步这样做,以便每当输出数据准备好,我将能够采取它并将其传输到Web客户端,基本上生成一个永无止境的虚线MP4.Pab*_*lla 11
您不需要MP4Box来生成所需的输出,但是您需要自己在内容中查找生成的文件中的框.
基本上你会生成一个fMP4with H264,并向浏览器发送moov初始化框和moof+mdat你生成的每个MP4片段的框.你必须用JavaScript编写播放器代码,你可能无法使用标准的DASH播放器.
要生成正确的碎片MP4,您需要将其传递给ffmpeg : -movflags empty_moov+omit_tfhd_offset+frag_keyframe+default_base_moof.
请务必使用最新版本.
| 归档时间: |
|
| 查看次数: |
14157 次 |
| 最近记录: |