gpt4 book ai didi

websocket - 如何使用 ffmpeg 通过 websocket 流式传输 mp4

转载 作者:行者123 更新时间:2023-12-04 22:47:26 62 4
gpt4 key购买 nike

我在 nodejs 中编写了一个示例,它通过 mp4 格式的 websocket 连接将一些输入流式传输到客户端。在客户端,mp4 包被添加到 MediaSourceBuffer。
这运行良好,但前提是客户端从第一个包的开头获取流。所以另一个客户端不能播放当前的Stream,因为他不会从一开始就得到Stream。
我尝试(尝试和错误)保存第一个包 ffmpeg 发送并在新连接开始时发送它,然后是当前流。然后 MediaSourceBuffer 由于编码错误而中断..
这是 ffmpeg 命令:

-i someInput -g 59 
-vcodec libx264 -profile:v baseline
-f mp4 -movflags empty_moov+omit_tfhd_offset+frag_keyframe+default_base_moof
-reset_timestamps 1
-
“empty_moov+omit_tfhd_offset+frag_keyframe+default_base_moof”部分应该使 Streampackages 独立于将 moovatom 放在每个部分的开头并按关键帧将各部分调整为 59 帧,所以我不明白为什么我不能查看Stream 开始后开始。

最佳答案

该命令的输出本身不是“流”。它是一系列连接的片段。必须完整接收每个片段。如果接收到部分片段,它将使解析器感到困惑,以至于无法识别下一个片段的开始。此外,第一个片段输出称为初始化片段。这个初始化片段必须首先发送给客户端。之后可以播放任何片段。因此,它必须由服务器缓存。

关于websocket - 如何使用 ffmpeg 通过 websocket 流式传输 mp4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31834456/

62 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com