MediaFoundationSDKを使用してビデオをWMVにエンコードしています。プロパティを使用してBフレームの数を設定できることはわかりますが、設定方法や設定場所がわかりません。
このプロパティはMFPKEY_NUMBFRAMESと呼ばれ、ここで説明されています:http: //msdn.microsoft.com/en-us/library/windows/desktop/ff819354%28v=vs.85%29.aspx
私たちのコードは大まかに次のことを行います。
- MFStartupを呼び出す
- MFCreateAttributesを1回呼び出すと、マルチプレクサ、ビデオ、およびオーディオの属性を設定できます。
- たとえば、ビデオビットレートを設定して、前の手順で作成したIMFAttributesを構成します。pVideoOverrides-> SetUINT32(MF_MT_AVG_BITRATE、m_iVideoBitrateBPS);
- IMFReadWriteClassFactory :: CreateInstanceFromURLを呼び出して、シンクライターを作成します
- フレームごとに、シンクライターでWriteSampleを呼び出します
- MFShutdownに電話する
ビデオビットレートも設定するIMFAttributeにb-framesプロパティを設定する必要がありますか?