为iOS videotoolbox的不完整的H264流合成SPS和PPS



我有一个轴IP摄像头(M1054),该轴线通过RTSP发送H264/RTP流。

不幸的是,它们根本不发送SP和PPS nalus,它们仅转移(碎片)编解码器。

我正在尝试使用需要H264 SPS和PPS元组正确设置CMFormatDescription的iOS VideoToolbox框架来解码该流。

我想知道如何从查看实际的H264片来合成必要的参数集?

Update :我捕获了一个示例会话,mplayer设法通过Wireshark显示流。捕获文件在这里,您可以看到整个RTSP设置以及几秒钟的RTP。

rtp由3组流程组成。

  1. 媒体的RTP
  2. 用于控制连接的RTSP
  3. 用于发送者确认和时间戳的RTCP。

尽管SPS/PPS通常位于流中的频带中,并且通过RTP运输 - 它不需要存在(并且可能不应该在那里)。SPS/PPS作为设置过程(RTSP)的一部分发送。我通常建议在调试器中运行http://www.live555.com/以了解该过程的详细信息 - 但是http://www.live5555.com/当前已下降。

在极少数情况下,您可以从众所周知的约束H.264流中重新创建SPS/PPS。但是总的来说你不能。因此,sps/pps是H.264流的元数据,并未冗余地存储在其他任何地方。

因此,如果您熟悉设置过程-RTSP-这很明显。

最新更新