ASF 形式の概要

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

Advanced Systems Format (ASF) は、主に同期されたデジタル メディア ストリームを格納および再生し、ネットワーク経由で送信するために設計された拡張可能なファイル形式です。 ASF は、Windows Media Audio および Windows Media Video ベースのコンテンツのコンテナー形式です。 拡張子 wma または wmv は、Windows Media Audio または Windows Media Video コーデックでエンコードされたコンテンツを含む ASF ファイルを指定するために使用されます。 Windows Media Format SDK を使用して、Windows Media ファイルのほか、他の種類の圧縮データまたは圧縮されていないデータを含む ASF ファイルを作成および読み取ることができます。

このセクションでは、ASF 形式の一般的な説明を背景情報として提供します。 リーダー オブジェクトとライター オブジェクトは、すべての低レベルのファイル解析および書式設定タスクを処理するため、この SDK を使用して ASF ファイルを作成する前に、ASF について詳しく理解しておく必要はありません。 完全な ASF 仕様は、 Microsoft Web サイトで確認できます。

ASF 形式の主な目標は次のとおりです。

  • メディア サーバー、HTTP サーバー、ローカル ストレージ デバイスからの効率的な再生をサポートするため。
  • オーディオやビデオなどのスケーラブルなメディアの種類をサポートするため。
  • 1 つのマルチメディアコンポジションを幅広い帯域幅で提示できるようにする。
  • 特に制限付き帯域幅のシナリオでは、メディア ストリームのリレーションシップを作成制御できるようにします。
  • 特定のマルチメディアコンポジションシステム、コンピュータオペレーティングシステム、またはデータ通信プロトコルから独立している。

ASF ファイルには、マルチチャネル オーディオ用の複数のオーディオ ストリームや、異なる帯域幅での伝送に適した複数のビット レート ビデオ ストリームなど、複数の独立したストリームまたは依存ストリームを含めることができます。 ストリームは、任意の圧縮形式または非圧縮形式にすることができます。ただし、最適な圧縮は、Microsoft Windows Media Audio および Video 9 シリーズ コーデックで実現されます。 ASF ファイルには、標準のオーディオおよびビデオ メディア ストリームの種類に加えて、テキスト ストリーム、Web ページとスクリプト コマンド、およびその他の任意のデータ型を含めることもできます。 ASF では、ライブおよびオンデマンドのマルチメディア コンテンツがサポートされます。 これは、H.32X (H.323 や H.324 など) または MBONE 会議を記録または再生するための車両として使用できます。

ASF ファイルは、"objects" と呼ばれるセクションに編成されています。Header オブジェクトと Data オブジェクト (両方とも必須)、およびオプションの Index オブジェクトの 3 つの最上位オブジェクトがあります。 Header オブジェクトには、ファイル サイズ、ストリームの数、エラー修正方法、使用されるコーデックなど、ファイルに関する一般的な情報が含まれています。 メタデータもここに格納されます。 Header オブジェクトは、他のオブジェクトを含めることができる唯一の最上位レベルのオブジェクトです。 Data オブジェクトには、パケット単位で編成されたストリーム データが含まれています。 Simple Index オブジェクトには、アプリケーションがファイルを効率的にシークできるようにする、関連付けられたインデックスとキーフレームのペアの一覧が含まれています。 各キー フレームに関連付けられているインデックスには、プレゼンテーション時間、ビデオ フレーム番号、または参照タイム スタンプを指定できます。

最上位レベルまたは下位レベルの各オブジェクトは、グローバル一意識別子 (GUID) とサイズ値で始まります。 これらの番号を使用すると、ファイル リーダーは、適切な場所にある情報を特定可能なオブジェクトに解析できます。 これらの GUID により、下位レベルのオブジェクトは任意の順序で送信でき、引き続き認識されます。 ASF 形式は、不正確なデータ受信を克服するように設計されています。 部分的にダウンロードされた ASF ファイルは、Header オブジェクトと少なくとも 1 つの Data オブジェクトが含まれている限り、引き続き読み取ることができます。

ASF に関する詳細情報については、ASF 仕様に記載されています。 この仕様は 、Microsoft Web サイトからダウンロードできます。

Windows Media Format SDK について