我使用Media Foundation SDK将视频编码为WMV。我看到可以使用属性设置B帧的数量,但我不知道如何/在何处设置它。
该属性称为MFPKEY_NUMBFRAMES,在此处描述: http://msdn.microsoft.com/en-us/library/windows/desktop/ff819354%28v=vs.85%29.aspx
我们的代码大致如下:
我是否应该在IMFAttribute上设置b-frame属性,同时我还设置了视频比特率?
答案 0 :(得分:1)
该属性适用于Windows Media Video 9 Encoder。也就是说,您需要在拓扑上找到它并在那里调整属性。其他拓扑元素(例如多路复用器)可能会接受其他属性,但这个属性没有效果。
MSDN为您提供了Configuring a WMV Encoder中的st4ep说明以及
所在的步骤要指定目标比特率,请在媒体类型上设置
MF_MT_AVG_BITRATE
属性。
您还可以更改其他编码器属性。还有一步一步的详细Tutorial: 1-Pass Windows Media Encoding,其中显示了整个过程的步骤。