RTP RTSP implementation in javascript

RTP RTSP implementation in javascript

本文关键字:javascript in implementation RTSP RTP      更新时间:2023-09-26

我有一个客户端程序和一个服务器程序。服务器在我的本地主机上,它有我的.mpeg视频。

使用节点JS,我应该从服务器流式传输视频。客户端请求消息,如播放/暂停/恢复/倒带等,所以我想我必须使用RTSP来确定通过RTP发送什么。但我不知道从哪里开始。

到目前为止,我所拥有的只是RegEx来过滤消息,例如,在客户端上有播放/暂停/设置等按钮,所以我可以获取文本。我有一个开关。但如果我设置好了,我该怎么办?

p.S我不允许使用RTSP模块或RTP模块。必须从头开始。

当通过有线传输mpeg文件时,您必须分别处理RTSP和RTP。RTSP用于信令、会话建立和启动底层RTP流。如果您需要在node.js中这样做,我建议加载一个已经实现RTSP/RTP的库(创建自己的库是一项艰巨的任务,但也是可行的)。

关于在node.js中加载c++库的一些信息是:如何从node.js使用c++库?

因此,基本上,您需要从mpeg文件中提取原始h264流。为此,我推荐ffmpeg或其他一些理解mpeg文件结构的库/代码。然后,您需要将RTP数据包中的编码帧打包;然后您将从服务器发送回客户端。然后,客户端将编码的帧拆包为实际帧;然后将它们解码/显示在屏幕上。

我推荐阅读http://www.ietf.org/rfc/rfc3984.txt有关H264视频打包的标准方式的信息。

这是一种非常通用的方法,但它会给你一个大致的想法。希望这些信息能有所帮助,祝你好运。