次の方法で共有


エンコーダー デバイス

エンコーダーは、入力として非圧縮データ ストリーム (ビデオやオーディオ) を受信し、ストリームを MPEG2 などの特定の形式にエンコードし、エンコードされたストリームを出力するデバイスです。 エンコーダー デバイスは、テレビの組み合わせのチューナ/キャプチャ アダプターなど、別のデバイスの一部である場合や、別のデバイスである場合があります。 たとえば、統合エンコーダーは、アナログ TV のチューナ/デコーダーなどのキャプチャ デバイスからデータ ストリームを受信し、エンコードされたストリームを生成します。 スタンドアロン エンコーダーは、圧縮されていないファイルから入力データを受信し、データを処理してから、エンコードされたデータを出力できます。

Microsoft では、DirectX 9.0 以降のハードウェア ベースのオーディオ/ビデオ エンコーダー デバイスをサポートしています。

オーディオ/ビデオ エンコーダー デバイスをサポートするには、カーネル ストリーミング フィルター ミニドライバーに Microsoft が定義したエンコーダー プロパティのサポートを実装する必要があります。 エンコーダーのプロパティを実装することで、既存のストリーム クラスまたは AVStream ミニドライバーにサポートを追加できます。 または、新しいミニドライバー (スタンドアロン エンコーダーまたは統合されたミニドライバー) を作成する場合は、ストリーム クラスが廃止され、サポートされなくなったため、AVStream アーキテクチャに従うことをお勧めします。 AVStream Simulated Hardware Sample Driver (Avshws) を開始点として使用できます。 Avshws ドライバーは、DMA 転送のサポートを実装するピン中心の AVStream の例です。

ソフトウェア実装エンコーダーを記述する場合は、カーネル ストリーミング フィルターとして記述しないでください。 代わりに、このようなフィルターは、Microsoft DirectShow フィルターまたは DirectX メディア オブジェクトとして記述する必要があります。 ソフトウェア ベースのエンコーダーの詳細については、DirectShow SDK のトピック「Encoder API」を参照してください。

クライアントは 、ICodecAPI COM インターフェイスを介してエンコーダー機能にアクセスします。 ミニドライバーが実装するプロパティに応じて、ドライバーの INF ファイルで公開するインターフェイス KsProxy を指定します。 Microsoft が定義したカーネル ストリーミングのプロパティとイベントの詳細については、「 エンコーダーの実装とサポート 」を参照してください。 実装方法 の例については、エンコーダー コードの例 を参照してください。 公開する COM インターフェイス KsProxy を指定する方法など、エンコーダー フィルターをインストールする方法については、「 エンコーダーのインストールと登録 」を参照してください。

エンコーダー デバイスは、すべてのデバイスに対応する一般的なロゴ要件に加えて、Windows 認定プログラムで説明されているストリーミング メディアとブロードキャストの要件に準拠している必要があります。