ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
概要
Opus は 2012 年 9 月に IETF(Internet Engineering Task Force)が RFC 6716 として標準化した、完全にロイヤリティフリーの非可逆音声コーデックです。Xiph.Org Foundation、Skype(現在は Microsoft 傘下)、Mozilla、Broadcom などの共同作業によって生まれ、Vorbis や Speex の後継として位置づけられています。
最大の特徴は、Skype が開発した音声特化コーデック「SILK」と、Xiph.Org が開発した音楽特化コーデック「CELT」を統合したハイブリッド構造です。エンコーダは入力信号の性質(音声か音楽か)を自動判定し、低ビットレートでは SILK モード、高ビットレートでは CELT モード、その中間ではハイブリッドモードと切り替えながら最適な品質を出します。
対応ビットレートは 6 kbps〜510 kbps の超広範囲で、サンプリング周波数も 8 kHz(狭帯域)から 48 kHz(フルバンド)まで自在。フレームサイズも 2.5 / 5 / 10 / 20 / 40 / 60 ms から選べ、リアルタイム通信では 20 ms 以下、ストリーミングでは 60 ms といった具合に用途に合わせて遅延と効率のバランスを取れます。
内部構造
Opus ファイル(.opus 拡張子)は通常、Ogg コンテナに格納されます。Ogg コンテナのマジックバイトは 4F 67 67 53("OggS")で、その内側に Opus ストリームが入っています。HTML5 や WebRTC の文脈では WebM コンテナに格納される場合もあります。
圧縮の核心は 3 つのモードです。
- SILK モード:8〜24 kHz 帯域、低ビットレート(6〜40 kbps)で人間の音声を効率よく圧縮。線形予測(LPC)と長期予測(LTP)を組み合わせる
- CELT モード:48 kHz フルバンド、中〜高ビットレート(32〜510 kbps)で音楽を高品質に圧縮。MDCT(変形離散コサイン変換)を使う
- ハイブリッドモード:SILK で低周波数帯、CELT で高周波数帯を担当し、24 kHz 以上の広帯域を中ビットレート(24〜64 kbps)で扱う
注目すべきは「シームレスな切り替え」です。同じファイル / ストリームの途中でビットレート、サンプリングレート、フレームサイズ、モードを動的に変えられるため、ネットワーク品質に応じて品質を上下させる WebRTC のような用途に最適です。
主な用途
- ビデオ会議・音声通話:Zoom、Microsoft Teams、Google Meet、Discord、WhatsApp、Telegram、Signal、FaceTime(一部)が Opus を採用
- WebRTC:ブラウザの音声通話 / ビデオ通話 API では Opus が必須コーデックとして指定されている
- ゲーム内ボイスチャット:Discord、TeamSpeak 3、Mumble、Steam Voice チャット、原神 / Apex Legends / VALORANT などの大半が Opus 系
- YouTube:音声のみのストリームには Opus を採用(
itag 251など) - ポッドキャスト・ラジオ配信:Spotify の一部、Podverse、AntennaPod など Opus 対応プレイヤーが増加
- WhatsApp ボイスメッセージ:送信される短い録音ファイルは Opus エンコードで送られる
- 音声 AI のリアルタイム入出力:低遅延が必要な対話型 AI(Claude Voice、ChatGPT Advanced Voice、Pi など)が WebRTC 経由で Opus を使う
関連形式との比較
| 形式 | 得意ビットレート | 最小遅延 | 音声/音楽 | 用途 |
|---|---|---|---|---|
| Opus | 6-510 kbps | 5 ms | 両対応 | 通話・配信全般 |
| AAC (LC) | 96-256 kbps | 20-100 ms | 音楽寄り | YouTube / Apple Music |
| AAC (HE / xHE) | 24-64 kbps | 100-300 ms | 音楽寄り | 放送・低ビットレート配信 |
| MP3 | 128-320 kbps | 200 ms+ | 音楽寄り | 音楽ダウンロード |
| Vorbis | 96-320 kbps | 100 ms | 音楽寄り | Spotify(旧)/ ゲーム |
| Speex | 2-44 kbps | 30 ms | 音声特化 | 旧世代 VoIP(廃止予定) |
| G.711 / G.722 | 56-64 kbps | 5 ms | 音声特化 | 固定電話 / SIP |
同じ 64 kbps で比べた場合、Opus は MP3 の 128 kbps 以上、AAC LC の 96 kbps 以上に相当する音質を出します。32 kbps でも実用的な音質を保てるため、モバイル回線が細い環境や衛星電話のような帯域制限下で特に強みを発揮します。
編集ツール
- opusenc / opusdec (公式 CLI):
opusenc --bitrate 96 input.wav output.opus、opusdec output.opus restored.wav - ffmpeg:
ffmpeg -i input.wav -c:a libopus -b:a 96k output.opus。-application voip(通話向け) /audio(音楽向け) /lowdelay(超低遅延)を切り替え可 - Audacity:2.3.2 以降で Opus の読み書きに対応
- foobar2000:プラグインで Opus に対応
- VLC media player:Opus を含むほぼ全ての音声形式を再生可能
- Web Audio API:ブラウザから MediaRecorder で
audio/webm;codecs=opusとして直接録音可能
注意点
- 古いハードウェアでの非対応:2015 年以前のカーオーディオ、組み込みプレイヤー、古いスマホでは Opus 再生に対応しないものがある。配布物の互換性を最重視するなら依然 MP3 が無難
- 非可逆なので編集向きではない:通話・配信用途に最適化されている。マスター保管や編集は WAV / FLAC を使う
- サンプリングレート 48 kHz が内部標準:他のサンプリングレートで入力しても内部で 48 kHz にリサンプリングされる仕様。すでに 44.1 kHz の素材は若干のリサンプリングノイズが乗る可能性
- 非常に低いビットレート(6〜16 kbps)はモノラル必須:ステレオで保つには 24 kbps 以上が現実的
- ガラパゴス的に Opus 単体ファイル(
.opus)よりも WebM や Ogg で配布されることが多い:Web ブラウザに音声を埋め込む場合はaudio/ogg; codecs="opus"またはaudio/webm; codecs="opus"を MIME に指定する - メタタグは Vorbis Comment 形式:MP3 の ID3 とは別。タグ編集ソフトが対応しているかを事前確認する
関連リンク
- 音声・動画形式 — カテゴリトップ
- ファイル拡張子とは — 基礎知識
- MP3(.mp3) — 非可逆圧縮の業界標準
- WAV(.wav) — 無圧縮の編集マスター
- FLAC(.flac) — 可逆圧縮のハイレゾ標準
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript で base URL を取得する方法|window.location.origin
- 4 YouTube Data API v3 エラー一覧|403・400・404 の原因と対処
- 5 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 6 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 7 Spring Frameworkのアノテーション一覧
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- 【django】ログイン 認証機能 2026-09-08 03:22:09
- MySQL ERROR 1063 Incorrect column specifier for column|原因と直し方 2026-09-08 03:11:09
- 【PHPエラー】Object of class stdClass could not be converted to string 2026-09-07 07:46:04
- Julia Genie ローカル開発サーバ起動完全ガイド 2026-09-07 07:46:04
- Wi-Fi とは|規格と世代(Wi-Fi 4〜7)・周波数帯・CSMA/CA・WPA3 NEW 2026-09-07 07:45:13
- set コマンドでシェルオプションと位置パラメータを操作 | bash 2026-09-07 07:45:13
- JPEG(.jpg/.jpeg)画像形式の完全ガイド — 仕様・マジックナンバー・他形式との比較・EXIF 2026-09-07 07:45:13
- UE5 Get Overlapping Actorsで特定クラスだけ処理|Class Filter・Cast To 2026-09-07 07:45:13
- Linuxで特定拡張子のファイルを再帰削除|find -deleteの安全手順 2026-09-07 07:45:13
- Django CBVでテンプレートに値を渡す|get_context_data・extra_context 2026-09-07 07:45:13
- Linuxで複数ファイルの文字列を一括置換|find・sed・xargsの安全手順 2026-09-07 07:45:13
- Laravelルートグループ|prefix・middleware・nameで一括管理 2026-09-07 07:45:13
- Linux whichコマンドの使い方|絶対パス取得とtype・command -vの違い 2026-09-07 07:45:13
- Linux catコマンドの使い方|行番号表示・複数ファイル連結 2026-09-07 07:45:13
- unable to execute 'gcc': No such file or directory 2026-09-07 07:45:13
コメントを削除してもよろしいでしょうか?