我想实现以下目标,但尚不清楚是否可行。
当前方案:
[OBS流/视频流]-> [AWS/外部流服务]->客户端
所需方案:
[OBS流/视频流]-> [用于插入元数据的我的自定义Node.js服务器]-> [AWS/外部流服务]->客户端
这个想法:
这个想法是,例如,我想将流同步到某些弹出窗口。默认协议(protocol)流似乎是OBS的RTMP,但也许可以更改。在直播期间的给定时间,网站上的html5视频播放器可以从直播中读取这些标签(通过一些额外的库,例如video.js),并告诉JS应用程序显示一些文本。 最后,归结为将视频流同步到文本流(例如,来自Websocket连接)
潜在的解决方案:
给定带有音频的视频流,是否可以做到这一点?如果是这样,流的格式是什么?如何注入(inject)元数据?
编辑:在浏览器中如果没有Flash,似乎不支持RTMP。这是不行的,所以我将需要使用其他流格式,例如HLS/FLV?
最佳答案
听起来像使用Liquidsoap之类的内容作为流服务器可以解决将元数据插入流中的问题。有很多用于处理元数据的选项供您探索。
至于客户端解码,您也许可以在服务 worker 中使用JavaScript可读流将服务器输出拆分为元数据/视频并按您认为合适的方式进行处理。
我在无限的mp3流上处理带内元数据时也做过类似的事情,这可能会给您一些关于从哪里开始的想法。您可以找到该here的代码
关于javascript - 将元数据插入实时视频流,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61278858/