我有一台AXIS IP摄像机(M1054),可通过RTSP发送H264 / RTP流。
不幸的是,它们根本不发送SPS和PPS NALU,它们仅传输(分段的)编解码器片。
我正在尝试使用iOS的VideoToolbox
框架解码该流,该框架需要H264 SPS和PPS元组正确设置CMFormatDescription
。
我不知道如何通过查看实际的H264 slice 来综合必要的参数集?
更新:我已经捕获了一个示例 session ,其中mplayer
设法通过Wireshark显示流。捕获文件is here,您可以看到整个RTSP设置以及几秒钟的RTP。
最佳答案
RTP包含3组流。
媒体的
尽管SPS / PPS通常在流中处于频带内,并通过RTP进行传输-但它不必在那里(也可能不应该在那里)。 SPS / PPS作为设置过程(RTSP)的一部分进行传输。我通常建议在调试器中运行http://www.live555.com/以了解该过程的详细信息-但http://www.live555.com/当前处于关闭状态。
在极少数情况下,您可以从众所周知的受限H.264流中重新创建SPS / PPS。但是总的来说你不能。因此,SPS / PPS是H.264流的元数据,不会在其他任何位置重复存储。
因此,如果您熟悉设置过程-RTSP-这将非常明显。