| オッグ | |
|---|---|
| ファイル名拡張子 | .ogg、.ogv、.oga、.ogx、.ogm、.spx |
| インターネットメディアの種類 | ビデオ/ogg、オーディオ/ogg、アプリケーション/ogg |
| 魔法の数字 | オッグス |
| 開発者 | Xiph.Org財団 |
| 初回リリース | 2003年5月 (2003-05) |
| フォーマットの種類 | コンテナ形式 |
| コンテナ用 | Vorbis、Theora、Speex、Opus、FLAC、Diracなど。 |
| オープンフォーマット? | はい |
| フリーフォーマット? | はい[ 1 ] |
| リボッグ | |
|---|---|
| 開発者 | Xiph.Org財団 |
| 初回リリース | 2004年9月22日 (2004年9月22日) |
| 安定版リリース | 1.3.6 / 2025年6月16日 ( 2025-06-16 ) |
| タイプ | リファレンス実装(マルチプレクサ/デマルチプレクサ) |
| ライセンス | BSDスタイルライセンス[ 2 ] |
| Webサイト | ダウンロード |
Oggは、デジタルマルチメディアの効率的なストリーミングと操作を可能にするために設計されたデジタルマルチメディアコンテナファイル形式です。Xiph.Org Foundationによって管理されており、ソフトウェア特許の制約を受けないフリーかつオープンなフォーマットです。[ 3 ]その名称は、コンピュータゲーム「Netrek」の用語「ogging」に由来しており、[ 4 ]初期バージョンのソフトウェアの処理コストの高さを暗示しています。[ 5 ]
Oggコンテナ形式は、音声、動画、テキスト(字幕など)、メタデータといった複数の独立したストリームを多重化できます。Oggマルチメディアフレームワークでは、 Theoraが非可逆ビデオレイヤーを提供します。音声レイヤーは、音楽指向のVorbis形式またはその後継形式Opusが最も一般的に提供しています。可逆音声圧縮形式には、FLACやOggPCMなどがあります。
2007年までは、Oggコンテナ形式を使用するすべてのファイルに.oggファイル名拡張子が使用されていました。それ以降、Xiph.Org Foundationは、Ogg Vorbisオーディオファイルにのみ使用することを推奨しています。Xiph.Orgは、オーディオのみのファイル、サウンド付きまたはサウンドなしのビデオ(Theoraを含む)、多重化されたOgg.oggなど、さまざまな種類のコンテンツを記述するための新しいファイル拡張子とメディアタイプのセットを作成することを決定しました。[ 6 ].oga.ogv.ogx
Ogg のさまざまなコーデックは、商用および非商用の無料および独自のメディア プレーヤー、さまざまなメーカーの ポータブル メディア プレーヤーおよびGPS受信機に組み込まれています。
2017年11月7日現在、Xiph.Org Foundationのリファレンス実装の最新バージョンはlibogg 1.3.3です。[ 7 ] libogg2という別のバージョンも開発中ですが、2018年現在、書き換えを待っています。[ 8 ]どちらのソフトウェアライブラリもフリーソフトウェアであり、New BSD Licenseの下でリリースされています。Oggリファレンス実装は2000年9月2日にVorbisから分離されました。[ 9 ]
Ogg Vorbisプロジェクトは1993年に開始されました。当初は「Squish」という名称でしたが、この名称は既に商標登録されていたため、プロジェクト名は変更されました。新しい名称「OggSquish」は2001年まで使用され、その後「Ogg」に再び変更されました。それ以来、「Ogg」はコンテナ形式を指すようになり、現在はより大規模なXiph.orgマルチメディアプロジェクトの一部となっています。今日、「Squish」(現在は「Vorbis」として知られています)は、通常Oggコンテナ形式で使用される 特定のオーディオコーディング形式を指します。
Oggは、コンピュータゲームNetrekの専門用語である「ogging」に由来し、将来のリソースの浪費を考慮せずに何かを強引に行うことを意味するようになった。[ 4 ]当初、Oggプロジェクトは、当時のPCハードウェアの限られた能力を考えると、開発者らによってやや野心的だと思われていた。Oggという名前は、テリー・プラチェットの小説『ディスクワールド』に登場するナニー・オッグとは無関係だが、「Vorbis」はテリー・プラチェットの小説『スモール・ゴッズ』に登場する別のキャラクターにちなんで名付けられている。[ 5 ]
「Ogg」ビットストリーム形式は、主に Xiph.Org Foundation によって設計され、マルチメディア ファイルのコーディングとデコードのためのコンポーネント セットを作成することを目的とした、より大規模な取り組みのフレームワークとして開発されました。このコンポーネント セットは無料で利用でき、ソフトウェアとハードウェアで自由に再実装できます。
このフォーマットは、「Oggページ」と呼ばれるデータのチャンクで構成されています。各ページは、ファイルがOgg形式であることを示す「OggS」という文字で始まります。
ページヘッダー内の「シリアル番号」と「ページ番号」は、各ページがビットストリームを構成する一連のページの一部であることを識別します。ファイル内に複数のビットストリームが多重化される場合があり、各ビットストリームのページは、含まれるデータのシーク時間に基づいて順序付けられます。また、ビットストリームを既存のファイルに追加することもできます。このプロセスは「チェイニング」と呼ばれ、ビットストリームを順番にデコードします。
BSDライセンスのライブラリ「libvorbis」は、「Vorbis」ストリームのデータのエンコードとデコードに利用できます。独立したOgg実装は、RealPlayerやDirectShowフィルタセットなど、いくつかのプロジェクトで使用されています。[ 10 ]
Mogg は、「Multi-Track-Single-Logical-Stream Ogg-Vorbis」の略で、マルチチャンネルまたはマルチトラックの Ogg ファイル形式です。
以下は、Ogg ページ ヘッダーのフィールド レイアウトです。

| 少し | 価値 | フラグ | ページタイプ |
|---|---|---|---|
| 0 | 0x01 | 継続 | このページの最初のパケットは、論理ビットストリーム内の前のパケットの続きです。 |
| 1 | 0x02 | ボス | ストリームの先頭。このページは論理ビットストリームの最初のページです。BOSフラグはすべての論理ビットストリームの最初のページに設定する必要があり、他のページには設定しないでください。 |
| 2 | 0x04 | EOS | ストリームの終了。このページは論理ビットストリームの最後のページです。EOSフラグはすべての論理ビットストリームの最終ページにセットする必要があり、他のページにはセットしてはなりません。 |
セグメントは、デコーダーにとって意味のあるデータ単位であるパケットにセグメントをグループ化する方法を提供します。セグメントの長さが255と示されている場合、後続のセグメントがこのセグメントに連結され、同じパケットの一部であることを示します。セグメントの長さが0~254の場合、このセグメントがこのパケットの最後のセグメントであることを示します。パケットの長さが255の倍数の場合、最後のセグメントの長さは0になります。
最後のパケットが次のページに続く場合、最終セグメント値は 255 になり、次のページに継続フラグが設定され、新しいページの開始が最後のページの継続であることを示します。
VorbisCommentは、当初Ogg Vorbisでの使用を目的として作成された基本レベルのメタデータ形式です。その後、Theora、Speex、FLAC、Opusといった他のXiph.OrgコーデックのOggカプセル化仕様にも採用されました。VorbisCommentは、Xiph.Orgコーデックでメタデータを保存するための最もシンプルで、最も広くサポートされているメカニズムです。[ 11 ]
注目すべきは、サムネイルとカバーアートのVorbisComment内の1つ以上のMETADATA_BLOCK_PICTURE=...には、対応するFLACのBase64エンコードされた値が含まれていることです。つまり、FLACはサムネイルとカバーアートを、FLACタグの外側のリトルエンディアン形式のバイナリブロックに格納します。[ 12 ] [ 13 ]METADATA_BLOCK_PICTUREMETADATA_BLOCK_VORBIS_COMMENT
その他の既存および提案されているメカニズムは以下のとおりである: [ 14 ]
Oggプロジェクトは、1993年に大規模なプロジェクトの一部として、シンプルな音声圧縮パッケージから始まりました。[ 5 ]このソフトウェアは当初Squishという名前でしたが、既存の商標があったためOggSquishに改名されました。この名前は後にOggプロジェクト全体に使用されました。1997年、Xiphophorus OggSquishは「現代の音声アプリケーションのための柔軟な圧縮音声フォーマットを作成すると同時に、あらゆる現代のコンピュータプラットフォームで共通する最初の音声フォーマットを提供する試み」と説明されました。[ 16 ] OggSquishは2000年には「いくつかの関連するマルチメディアおよび信号処理プロジェクトのグループ」と呼ばれていました。2000年には、Ogg VorbisフォーマットとVorbisのリファレンス実装であるlibvorbisという2つのプロジェクトが計画的なリリースに向けて活発に開発されていました。研究には、将来のビデオおよびロスレス音声符号化に関する研究も含まれていました。[ 5 ] [ 17 ] [ 18 ] [ 19 ] [ 20 ] 2001年、OggSquishはOggに改名され、「複数の関連するマルチメディアおよび信号処理プロジェクトのグループを包括する」と説明されました。[ 21 ] Oggは、より大きなXiph.orgマルチメディアプロジェクトの一部として、ファイル形式を表すようになりました。Squishは、Oggコーデックの1つの名前になりました。[ 5 ] 2009年、Oggは「マルチメディアコンテナ形式であり、Xiph.orgマルチメディアコーデックのネイティブファイルおよびストリーム形式」と説明されました。[ 22 ]
Oggリファレンス実装は2000年9月2日にVorbisから分離されました。[ 9 ]
2003年5月、このフォーマットに関する2つのインターネットRFCが公開されました。OggビットストリームはRFC 3533(「参考情報」に分類)で定義され、そのインターネットコンテンツタイプ(application/ogg)はRFC 3534 (2006年時点では標準プロトコルの提案)で定義されました。2008年9月、RFC 3534はRFC 5334によって廃止され、コンテンツタイプとファイル名拡張子.ogx、.ogv、.oga、.spxが追加されましvideo/oggたaudio/ogg。
2002年、Oggには正式なビデオサポートがなかったため、 OGMファイル形式が開発されました。これはOggを改良したもので、Microsoft DirectShowフレームワークのビデオをOggベースのラッパーに埋め込むことができました。OGMは当初、Windows専用のクローズドソースツールでのみサポートされていましたが、その後コードベースがオープン化されました。その後、Oggのビデオ(および字幕)サポートが正式に仕様化されましたが、OGMとは互換性のない方法で仕様化されました。一方、Matroskaコンテナ形式は成熟期を迎え、Vorbisオーディオと任意のビデオコーデックを組み合わせたい人々にとって代替手段となりました。その結果、OGMはサポートも開発もされなくなり、Xiph.orgでも正式に推奨されていません。[ 23 ]現在、Ogg形式のビデオは.ogvファイル拡張子で提供されており、これは正式に仕様化され、公式にサポートされています。.ogmファイルをサポートするソフトウェアとコーデックは無料で入手できます。[ 24 ]
2006年の時点では、OggはMPEG標準[ 25 ](MP3 / MP4など)ほど普及していませんでしたが、無料コンテンツ(無料音楽、Wikimedia Foundationプロジェクトのマルチメディア、クリエイティブ・コモンズ・ファイルなど)をエンコードするために広く使用されており、少数ながらデジタルオーディオプレーヤーでもサポートされ始めていました。また、Doom 3、Unreal Tournament 2004、Halo: Combat Evolved、Jets'n'Guns、Mafia: The City of Lost Heaven、Myst IV: Revelation、StepMania、Serious Sam: The Second Encounter、Lineage 2、Vendetta Online、Battlefield 2、Grand Theft Autoエンジン、 JavaベースのゲームMinecraftのオーディオファイルなど、多くの人気ビデオゲームエンジンもOgg形式をサポートしていました。より普及している Vorbis コーデックは、多くのソフトウェア プレーヤーでサポートが組み込まれており、他のほぼすべてのプレーヤーでも拡張機能が利用可能でした。
2007年5月16日、フリーソフトウェア財団(FSF)は、Vorbisを「倫理的、法的、技術的に優れた、プロプライエタリなMP3フォーマットの代替オーディオフォーマット」として普及させるためのキャンペーンを開始しました。[ 26 ]また、ウェブサイトやブログにウェブボタンを追加することでキャンペーンへの支援を呼びかけました。FSFが推奨するOggプレーヤー( VLC)をダウンロードして使用したくない人のために、 Xiph.Org財団は、 iTunesプレーヤーやiMovieアプリケーションなど、WindowsおよびMac OS XのQuickTimeベースのアプリケーション用の公式コーデック[ 27 ]を提供していました。また、WindowsユーザーはWindows Media Player Oggコーデックをインストールできました。[ 28 ]
2009年6月30日までに、Oggコンテナは、TheoraとVorbisの使用を通じて、Firefox 3.5ウェブブラウザのHTML5<video>と<audio>要素の実装に含まれる唯一のコンテナ形式となった。[ 29 ] [ 30 ]これは、HTML5のドラフト仕様で概説されていたが後に削除された元の推奨事項に従ったものであった(Ogg論争を参照)。
2010年3月3日、 FFmpeg開発者による技術分析では、マルチメディアコンテナフォーマットとしてのOggの汎用性について批判的な意見が述べられました。[ 31 ] Oggの作者は後に自身の記事でこれらの主張に反論しました。[ 32 ]
Oggはコンテナ形式に過ぎません。コーデックによってエンコードされた実際のオーディオまたはビデオは、Oggコンテナ内に保存されます。Oggコンテナには、複数のコーデックでエンコードされたストリームが含まれる場合があります。例えば、音声付きのビデオファイルには、オーディオコーデックとビデオコーデックの両方でエンコードされたデータが含まれます。
コンテナ形式であるOggは、様々な形式のオーディオやビデオを埋め込むことができます[ 33 ] [ 34 ](Dirac、MNG、CELT、MPEG-4、MP3など)が、OggはXiph.orgが提供する以下の無料コーデック で使用されることを想定しており、通常はそうなっています。
Oggオーディオメディアは、ファイル拡張子が、、およびであるIANAメディアタイプ として登録されています。これは、ファイル拡張子がであるOggビデオメディアタイプの適切なサブセットです。他のOggアプリケーションは、ファイル拡張子が であるメディアタイプを使用します。これは のスーパーセットです。[ 34 ]ファイル拡張子が であるOpusメディアタイプは、後にRFC 7587および7845に登録されました。 audio/ogg.oga.ogg.spxvideo/ogg.ogvapplication/ogg.ogxvideo/oggaudio/opus.opus
Ogging:これは、自殺行為によって保菌者、または保菌者になる可能性のある者を殺す技術である。
このライブラリはリリースされず、再設計が必要と思われます。