Microsoft DirectX 8.0 |
このトピックには、Microsoft® DirectShow® COM インターフェイスのリファレンス情報を記載する。多様なハードウェア、ファイル フォーマット、およびストリーム操作をサポートするため、DirectShow は多数のインターフェイスを実装する。これらのインターフェイスの一部はアプリケーションで使用され、その他はフィルタおよびほかの DirectShow コンポーネントで内部的に使用される。
個々のアプリケーションでは一部のサブセットのみを使用する。必要なインターフェイスはアプリケーションの性質によって異なる。以下の一覧は、アプリケーション レベルのインターフェイスを目的ごとにまとめたものである。
参照 :
アプリケーションでは、以下のインターフェイスを使用して各種のフィルタ グラフを構築する。
インターフェイス | 目的 |
---|---|
ICaptureGraphBuilder2 | ビデオ キャプチャ用のフィルタ グラフを構築する。 |
ICreateDevEnum | 利用可能なシステム デバイスを列挙する。 |
IDvdGraphBuilder | DVD のナビゲーションおよび再生に使用するフィルタ グラフを構築する。 |
IFilterGraph2 | フィルタを追加、削除、または接続する。 |
IFilterMapper2 | ユーザーのシステムに登録されているフィルタを列挙する。 |
IGraphBuilder | ファイルの再生またはカスタム ユースに使用するフィルタ グラフを構築する。 |
IGraphConfig | フィルタ グラフを動的に再構成する。 |
IGraphVersion | グラフの変更時期を判断する。 |
以下のインターフェイスは、フィルタ グラフを制御するメソッドを提供する。
インターフェイス | 目的 |
---|---|
IAMGraphStreams | フィルタ グラフのライブ ストリームの同期をとる。 |
IEnumFilters | グラフのフィルタを列挙する。 |
IFilterChain | フィルタ チェーンを制御する。 |
IMediaControl | フィルタ グラフを実行、ポーズ、および停止する (グラフを構築する Automation 互換のメソッドも提供する)。 |
IMediaEventEx | グラフ内のイベントに応答する。 |
IMediaSeeking | ファイル内のシークを行う。 |
IQueueCommand | コマンドをキューに入れ、後で実行する。 |
IVideoFrameStep | ビデオ ストリーム内のコマ送りをする。 |
以下のインターフェイスは、オーディオのキャプチャおよびレンダリングをサポートする。
インターフェイス | 目的 |
---|---|
IAMAudioInputMixer | モノラル/ステレオ、ミキシング レベル、パン レベル、ラウドネス、高音域、低音域など、オーディオ入力の特性を調整する。 |
IAMDirectSound | ほかのアプリケーションにフォーカスがあるときサウンドを鳴らすかどうか、どのアプリケーション ウィンドウをサウンドに関連付けるかなど、Microsoft DirectSound® 互換デバイスの設定を制御する。 |
IAMResourceControl | オーディオ デバイスを事前に確保する。 |
IBasicAudio | オーディオのプロパティを設定する。 |
インターフェイス | 目的 |
---|---|
IDvdCmd | コマンドが開始または完了するまで DVD ナビゲータをブロックする。 |
IDvdControl2 | カラオケを含む DVD ビデオのタイトルをナビゲートおよび再生する。 |
IDvdGraphBuilder | システム上の利用可能なソフトウェアおよびハードウェアから、DVD ビデオ再生に使用するフィルタ グラフを構築する。 |
IDvdInfo2 | DVD ディスクの各種属性または DVD ナビゲータの状態を照会する。 |
IDvdState | ユーザー セッションの状態をディスクに保存する。状態には、再生位置、ペアレンタル ロック レベル、およびリージョンが含まれる。 |
以下のインターフェイスは、Microsoft® Windows® Driver Model (WDM) デバイス、または旧来の Microsoft® Video for Windows® (VfW) デバイスを使用したビデオ キャプチャをサポートする。
インターフェイス | 目的 |
---|---|
IAMAnalogVideoDecoder | WDM ビデオ キャプチャ カードによるビデオ信号のデジタル化を制御する。 |
IAMAnalogVideoEncoder | ハードウェア ビデオ エンコーダを制御する。 |
IAMBufferNegotiation | ピンのバッファ割り当てを制御する。 |
IAMCopyCaptureFileProgress | ファイル コピー操作の進行状況を受け取るコールバック インターフェイス。 |
IAMCrossbar | WDM のオーディオ ソースまたはビデオ ソースと、WDM キャプチャ デバイスの間のハードウェア接続を確立する。 |
IAMDroppedFrames | キャプチャ フィルタにキャプチャのパフォーマンスを照会する。 |
IAMStreamControl | 個々のストリームの開始タイムおよび終了タイムを制御する。 |
IAMVfwCaptureDialogs | VFW キャプチャ ドライバのダイアログ ボックスを表示する。 |
IAMVideoControl | キャプチャ デバイスからの画像を制御する。 |
IAMVideoProcAmp | 輝度、コントラスト、色相、飽和、ガンマ、鮮明度などのビデオ信号品質を調整する。 |
ICaptureGraphBuilder2 | ビデオ キャプチャ用のフィルタ グラフを構築する。 |
IFileSinkFilter2 | 出力ファイルの名前および属性を指定する。 |
ISampleGrabber | フィルタ グラフ内を通るメディア サンプルを取得する。 |
DES (DirectShow 編集サービス) は、以下のインターフェイスを提供する。
インターフェイス | 目的 |
---|---|
IAMErrorLog | エラー ログのためのコールバック インターフェイス。 |
IAMSetErrorLog | エラー ログを設定または取得する。 |
IAMTimeline | タイムラインのプロパティを設定および取得し、タイムライン オブジェクトを作成する。 |
IAMTimelineComp | 合成の仮想トラックを挿入または取得する。 |
IAMTimelineEffect | エフェクトの優先順位を取得する。 |
IAMTimelineEffectable | タイムライン オブジェクトにエフェクトを追加する。 |
IAMTimelineGroup | グループのプロパティを設定および取得する。 |
IAMTimelineObj | タイムライン オブジェクトのプロパティを設定および取得する。 |
IAMTimelineSplittable | タイムライン オブジェクトを分割する。 |
IAMTimelineSrc | ソースのプロパティを設定および取得する。 |
IAMTimelineTrack | トラックのプロパティを設定および取得する。 |
IAMTimelineTrans | トランジションのプロパティを設定および取得する。 |
IAMTimelineTransable | タイムライン オブジェクトに移行部を追加する。 |
IAMTimelineVirtualTrack | 仮想トラックのプロパティを設定および取得する。 |
IMediaDet | メディア ファイルに関する情報を取得する。 |
IMediaLocator | ファイル名を検証する。 |
IPropertySetter | エフェクトまたは移行部のプロパティを設定する。 |
IRenderEngine | ビデオ編集プロジェクトをレンダリングする。 |
ISmartRenderEngine | スマート再圧縮を使用して、ビデオ編集プロジェクトをレンダリングする。 |
IXml2Dex | XML (Extensible Markup Language) でビデオ編集プロジェクトを保存およびロードする。 |
インターフェイス | 目的 |
---|---|
IAMMediaContent | 作成者やタイトルなどのメタ データをストリームから取得する。 |
IAMOpenProgress | ファイルを開く処理の進捗状況を判定する。 |
IAMParse | MPEG ストリームの現在位置の解析時間を照会、設定する。 |
IAMStreamSelect | 再生する論理ストリームを制御し、それに関する情報を取得する。 |
IAMVfwCompressDialogs | VFW CODEC のダイアログ ボックスを表示する。 |
IAMVideoCompression | ビデオ圧縮のパラメータを設定する。 |
IConfigAsfWriter | ASF ライタ フィルタが ASF (Advanced Streaming Format) ファイルを書き込む方法を制御する。 |
IConfigAviMux | AVI Mux フィルタが AVI ファイルを書き込む方法を制御する。 |
IConfigInterleaving | AVI Mux フィルタが AVI ファイルを書き込むときのインターリーブを構成する。 |
IDVEnc | DV ビデオ エンコーダ フィルタのエンコード解像度を設定する。 |
IDVSplitter | デジタル ビデオ (DV) ストリームのフレームをダウングレードする。 |
IIPDVDec | DV ビデオ デコーダ フィルタのデコード解像度を設定する。 |
IPersistMediaPropertyBag | AVI ストリームの INFO チャンクおよび DISP チャンクを設定、取得する。 |
インターフェイス | 目的 |
---|---|
IAMLine21Decoder | クローズド キャプション情報および設定にアクセスする。 |
IAMOverlayFX | ビデオ サーフェスにオーバーレイ エフェクトを適用する。 |
IAMVideoDecimationProperties | ビデオの本来のサイズよりビデオ ウィンドウが小さい場合に、DirectShow がビデオ イメージを拡大縮小する方法を制御する。 |
IBasicVideo2 | ビデオのプロパティを設定する。 |
IDDrawExclModeVideo | Microsoft® DirectDraw® の排他的な全画面モードでビデオをレンダリングする。 |
IDDrawExclModeVideoCallback | オーバーレイの位置、サイズ、および表示/非表示の変更に関する通知を受け取るコールバック インターフェイス。 |
IDirectDrawVideo | 指定された DirectDraw 能力を無効にする。 |
IDirectDrawMediaSample | オーバーレイ ミキサー フィルタが割り当てた DirectDraw サーフェスにアクセスする。 |
IFullScreenVideo | フルスクリーン レンダリング フィルタを制御する。 |
IMixerPinConfig2 | 複数のビデオ ストリームをミキシングするときに、オーバーレイ ミキサー上にビデオのカラー コントロールを設定する。 |
IQualProp | ビデオ レンダラにパフォーマンス情報を照会する。 |
IVideoWindow | ビデオ ウィンドウのプロパティを設定する。 |
インターフェイス | 目的 |
---|---|
IAMTunerNotification | TV チューナー フィルタからのイベント通知を受け取るコールバック インターフェイス。 |
IAMTVTuner | TV チューナー デバイスを制御する。 |
IAMTVAudio | TV チューナーからのオーディオを制御する。 |
IAMTVAudioNotification | TV チューナー カードからのイベント通知を受け取るコールバック インターフェイス。 |
IAMAnalogVideoDecoder | 水平ロックの表示を含むデジタル化フォーマットの選択と、デジタイザの位相同期の時間定数を制御するメソッドが入る。 |
インターフェイス | 目的 |
---|---|
IAMCameraControl | カメラを制御する。 |
IAMExtDevice | VCR やカムコーダーなどの外部デバイスを制御する。 |
IAMExtTransport | VCR の転送機能 (再生、ポーズ、録画、早送り、巻き戻しなど) を制御する。 |
IAMTimecodeDisplay | SMPTE タイムコードを表示するデバイスにプロパティを設定する。 |
IAMTimecodeGenerator | SMPTE タイムコードを生成するデバイスにプロパティを設定する。 |
IAMTimecodeReader | 外部デバイスから SMPTE タイムコードを読み取る。 |