当我添加新的 SSF_STREAM_INFO
时在 SSF SDK 复用器中,生成的 header 数据似乎不包含 CodecPrivateData
的正确值参数。
<param name="CodecPrivateData" value="0000000100000001" valuetype="data" />
我的印象是,流畅的流媒体播放器使用此信息来解码各个帧。看,当我从编码器回放实时流时,我的视频源中出现空白帧。
如果CodecPrivateData
应该包含有关解码帧的信息,我如何正确设置它以及使用什么数据?很确定属于 MPEG2VIDEOINFO
结构(我用于流信息的 pTypeSpecificInfo
字段)。
下面是复用器生成的更多 header 信息。有人对这个有经验么?一些指示会很有帮助!
`<?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
.
最佳答案
AVC1 的编解码器私有(private)数据应该是
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
关于format - 平滑流式传输编解码器私有(private)数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32490988/