形式

[このページに関連付けられている機能である Windows Media Format 11 SDK は、従来の機能です。 ソース リーダーシンク ライターに置き換わりました。 ソース リーダーシンク ライターは、Windows 10とWindows 11用に最適化されています。 Microsoft では、可能であれば、新しいコードで Windows Media Format 11 SDK ではなくソース リーダーシンク ライターを使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]

形式の情報は、特定の種類のメディアについて知る必要があるすべてを説明します。 すべての形式には、オーディオやビデオなどの主要な種類があり、サブタイプを持つことができます。 形式には、メジャーの種類に基づいて異なる情報が含まれています。 オーディオとビデオの形式には、他の種類よりもはるかに多くの情報が必要です。

Windows Media Format SDK のオブジェクトが入力番号、ストリーム番号、出力番号を区別するのと同様に ( 「入力、ストリーム、出力」を参照)、入力形式、ストリーム形式、出力形式には重要な違いがあります。 これらの違いについては、以下で説明します。

入力形式

入力形式は、ライター オブジェクトに渡すデジタル メディアを表します。 ASF ファイル内のストリームがコーデックで圧縮されている場合、コーデックは特定の入力形式のみをサポートします。 Windows Media Audio コーデックと Video コーデックを使用する場合は、writer オブジェクトを使用して、サポートされている入力形式を列挙できます。 ファイルを書き込むときは、入力メディアに一致する入力形式を選択する必要があります。

入力メディア形式は、データを圧縮するコーデックでサポートされている必要がありますが、一部の入力形式設定はストリーム形式と一致する必要はありません。 たとえば、ビデオ ストリームの入力形式には、ストリーム形式で定義されているのとは異なるフレーム サイズが含まれる場合があります。 このような場合、コーデックは変換を実行します。

ストリーム形式

ストリーム形式は、ASF ファイルに格納されているメディアの形式を表します。 ストリーム形式は、プロファイルで記述されている形式であり、入力形式と出力形式と同じでもそうでない場合もあります。 コーデックを使用してストリーム内のデータを圧縮する場合、ストリーム形式は入力形式と出力形式とは異なります。

Windows Media Audio および Video コーデックを使用する場合は、コーデックからサポートされているストリーム形式の一覧を取得して、コードでサポートされていない形式を指定しないようにする必要があります。 ビデオ フレームのサイズや色深度など、一部のフォーマット設定は、コーデック形式を取得した後に手動で構成する必要があります。

出力形式

出力形式は、リーダー (または同期リーダー) がアプリケーションに提供するデジタル メディアを表します。 ASF ファイル内のストリームがコーデックで圧縮されている場合、コーデックは特定の出力形式のみをサポートします。 Windows Media Audio コーデックと Video コーデックを使用する場合は、リーダー オブジェクトを使用して、サポートされている出力形式を列挙できます。 各 Windows Media コーデックには既定の出力形式がありますが、サンプル配信用にサポートされている出力形式を選択できます。

出力メディア形式は、データを圧縮したコーデックでサポートされている必要がありますが、一部の出力形式設定はストリーム形式と一致する必要はありません。 たとえば、ビデオ ストリームの出力形式には、ストリーム形式で定義されているフレーム サイズとは異なる場合があります。 このような場合、コーデックは変換を実行します。

概念