FMLE = フラッシュ ライブ メディア エンコーダー 3.0
この質問をAdobe Forumに投稿しましたが、そのフォーラムにプログラミング経験のある人がいるかどうかはわかりません。
私は、ビデオ キャプチャおよびオーディオ キャプチャ デバイスを作成する開発者です。デバイスは、他のエンコーダーで既に動作しています。デバイスは directshow で書かれています。FMLE と統合していますが、この問題が発生しました。
オーディオ デバイスには、FMLE で使用できるボリューム バーがありません。FMLE エラーは、「The selected audio device "censored (company secret)" does not allow setting volume intensity. Disableing the volume slider control.」 です。
私のオーディオ デバイスは、標準の directshow フィルター インターフェイスと共にこれらのインターフェイスを実装します。
- IBasicAudio
- IAMAudioInputMixer
queryinterface にトレースポイントを配置し、FMLE クエリを見つけました (コメント文字列内のコメント)
- {IID_IUnknown}
- {IID_IPersistPropertyBag}
- {IID_IBaseFilter}
- {IID_IAMOpenProgress}
- {IID_IAMDeviceRemoval}
- {IID_IMediaFilter}
- {IID_IAMBufferNegotiation}
- {IID_IAMStreamConfig}
- {IID_IPin}
- {IID_IReferenceClock}
- {IID_IMediaSeeking}
- {IID_IMediaPosition}
- {IID_IVideoWindow} // WTF ?? クエリ ビデオ ウィンドウ ?
- {IID_IBasicAudio}
- {2DD74950-A890-11D1-ABE8-00A0C905F375} // これは非同期ストリームだと思います。
私は何が欠けていますか? FMLE は IAMAudioInputMixer を使用しませんか? FMLE がボリューム強度に使用する正確なインターフェイスを知っている人はいますか? . .IBasicAudio だと思っていたのですが、メソッドを呼び出していないようです。