2

当我SSF_STREAM_INFO在 SSF SDK 多路复用器中添加一个新的时,生成的标头数据似乎不包含正确的CodecPrivateData参数值。

<param name="CodecPrivateData" value="0000000100000001" valuetype="data" />

我的印象是,流畅的流播放器使用此信息来解码单个帧。看,当我从我的编码器播放我的实时流时,我的视频源中出现了一个空白帧。

如果CodecPrivateData应该包含有关解码帧的信息,我该如何正确设置它以及使用什么数据?很确定它属于MPEG2VIDEOINFO结构(我用于流信息的pTypeSpecificInfo字段)。

下面是多路复用器生成的更多标头信息。有人对这个有经验么?一些指示会有所帮助!

`<?xml version="1.0" encoding="utf-8"?>
<smil xmlns="http://www.w3.org/2001/SMIL20/Language">
    <head></head>
    <body>
        <switch>
            <video src="Streams" systemBitrate="500000">
                <param name="trackID" value="1" valuetype="data" />
                <param name="FourCC" value="AVC1" valueType="data" />
                <param name="MaxWidth" value="320" valueType="data" />
                <param name="MaxHeight" value="240" valueType="data" />
                <param name="CodecPrivateData" value="0000000100000001" valuetype="data" />
            </video>
        </switch>
    </body>
</smil>`

我的编码器正在将实时 h.264 视频输入编码到 SSF 多路复用器中。所以我MPEG2VIDEOINFO为我的pTypeSpecificInfo.

4

1 回答 1

2

AVC1 的编解码器私有数据应该是

NAL_START_CODE SPS NAL_START_CODE PPS

在哪里

NAL_START_CODE是字节序列 00,00,00,01

SPS是序列参数集,并且

PPS是图片参数集

来源:https ://msdn.microsoft.com/en-us/library/ff728116%28v=vs.95%29.aspx

于 2016-01-21T17:29:53.670 回答