次の方法で共有


ファイル読み取り機能

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

ASF ファイルの読み取りは、Windows Media Format SDK の主な機能の 1 つです。 非同期と同期の 2 種類の読み取りがサポートされています。 非同期ファイルの読み取りは、リーダー オブジェクトによって処理されます。 同期リーダー オブジェクトは、同期的にファイルを読み取るために使用されます。 さまざまな読み取りオブジェクトの詳細については、「 リーダー オブジェクト 」と「 同期リーダー オブジェクト」を参照してください。

最も基本的な非同期ファイル読み取りシナリオでは、サンプルの準備ができたときにリーダー オブジェクトが呼び出すコールバック メソッドを実装する必要があります。 ファイルの読み取りを開始すると、アプリケーションはサンプルがコールバック メソッドに配信されるのを待ちます。 非同期読み取りはプレーヤー アプリケーションに役立ち、同期読み取りでは使用できない機能をサポートします。 アプリケーションがネットワーク上の場所からファイルを読み取る必要がある場合、またはWindows Media サービスを実行しているサーバーと対話する必要がある場合は、リーダー オブジェクトを使用する必要があります。 リーダー オブジェクトの欠点は、配信される出力ごとに個別のスレッドが使用される点です。 さらに、リーダー オブジェクトは、サンプルを配信する方法の同期リーダーほど柔軟性がありません。

同期リーダーでは、コールバック メソッドを使用する必要はありません。 代わりに、ファイルの一部を選択して、メソッド呼び出しで一度に 1 つずつサンプルを読み取って取得します。 同期リーダーは、特定のサンプルへの迅速なアクセスが不可欠なコンテンツ編集アプリケーションのニーズに適しています。 同期リーダーではコールバック メソッドが使用されないため、最小限のコーディング オーバーヘッドで ASF ファイルを読み取るアプリケーションを作成できます。 ただし、同期リーダーは、ネットワーク上の場所からファイルを開いたり、Windows Media サービスを実行しているサーバーと対話したり、DRM で保護されたファイルを読み取ったりすることはできません。

次のトピックでは、リーダーと同期リーダーの機能について説明します。

トピック 説明
ユーザー割り当てサンプルのサポート リーダーと同期リーダーでのバッファー割り当てと、ユーザー割り当てによってパフォーマンスを向上させる方法について説明します。
出力形式の列挙 出力形式の列挙について説明します。

 

さらに、書き込み機能セクションの次のトピックは、ファイルの読み取りにも適用されます。

機能

ASF ファイルの読み取り