RTP 流... MPEG-2 还是 MPEG-4?
我正在使用 RTP TS(有效负载 33)以 MPEG-2 和 MPEG-4 格式传输一些视频文件,然后对它们执行一些任务。
我如何知道我收到的 RTP 流中的视频类型(MPEG-2 或 MPEG-4)?
是否有任何标头或字段表明它是什么?
感谢您的帮助。
I'm using RTP TS (Payload 33) to stream some video files in MPEG-2 and MPEG-4, and then perform some tasks over them.
How could I know what type of video (MPEG-2 o MPEG-4) is inside the RTP stream I receive?
Is there any header or field which indicates the one it is?
Thanks for your help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您使用rtsp协议接收流,您可以检查SDP(会话描述协议)的视频格式。
例如:
a=rtpmap:96 MP4 (96 表示有效负载类型)
十进制中的 96 是二进制的 1100000,所以如果 RTP 标头第二个字节的最后 7 位是 1100000 ,那就是要点!
我只是接收 MPEG4 流媒体,因此您可以使用相同的方式尝试使用 MPEG2。
If you use the rtsp protocol recive streaming you can check the video format of SDP(Session Description Protocol).
ex:
a=rtpmap:96 MP4 (96 means the payload type)
96 in decade is 1100000 in binary so if the last 7 bits of the second byte of RTP header is 1100000 , that is point!
I just recive MPEG4 streaming so the MPEG2 you can try it use the same way.
或者,如果您没有 SDP,您可以解析数据包。
如果您处理 PAT 和 PMT,则可以从 PES 标头中检索 PID 的流 ID。
Alternatively if you don't have SDP, you can parse the packets.
If you process the PAT and PMT, you can retrieve the stream id for your PID from the PES header.