「コーデック」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(コンテナフォーマットツールを翻訳して追加)
 
18行目: 18行目:
 
[[Wikipedia:ja:コーデック|wikipedia]] より:
 
[[Wikipedia:ja:コーデック|wikipedia]] より:
   
:''コーデック (Codec) は、符号化方式を使ってデータのエンコード符号化とデコード復号を双方向にできる装置やソフトウェアなどのこと。''
+
:''コーデック (Codec) は、符号化方式を使ってデータのエンコード(符号化)とデコード(復号)を双方向にできる装置やソフトウェアなどのこと。''
   
 
一般的に、マルチメディアアプリケーションにおいて音声や動画ストリームをエンコード・デコードするためにコーデックが使われます。エンコードされたストリームを再生するために、ユーザーは適切なコーデックをインストールする必要があります。
 
一般的に、マルチメディアアプリケーションにおいて音声や動画ストリームをエンコード・デコードするためにコーデックが使われます。エンコードされたストリームを再生するために、ユーザーは適切なコーデックをインストールする必要があります。
24行目: 24行目:
 
この記事ではコーデックとアプリケーションのバックエンドだけを扱います; プレイヤーのリストは[[アプリケーション一覧/マルチメディア|アプリケーション一覧]]を見て下さい ([[MPlayer]] や [[VLC media player|VLC]]、[[mpv]] がよく使われています)。
 
この記事ではコーデックとアプリケーションのバックエンドだけを扱います; プレイヤーのリストは[[アプリケーション一覧/マルチメディア|アプリケーション一覧]]を見て下さい ([[MPlayer]] や [[VLC media player|VLC]]、[[mpv]] がよく使われています)。
   
==要件==
+
== 要件 ==
   
 
マルチメディアを再生するには2つのコンポーネントが必要です:
 
マルチメディアを再生するには2つのコンポーネントが必要です:
33行目: 33行目:
 
メディアプレイヤーをインストールしている場合は必ずしもコーデックをインストールする必要はないこともあります。例えば、[[MPlayer]] は依存パッケージとして大量のコーデックをインストールします。また、内蔵コーデックも持っています。
 
メディアプレイヤーをインストールしている場合は必ずしもコーデックをインストールする必要はないこともあります。例えば、[[MPlayer]] は依存パッケージとして大量のコーデックをインストールします。また、内蔵コーデックも持っています。
   
==コーデック一覧==
+
== コーデック一覧 ==
   
 
=== オーディオ ===
 
=== オーディオ ===
151行目: 151行目:
 
* {{App|[[Wikipedia:ja:Xvid|Xvid]]|オープンソースの MPEG-4 ビデオコーデック。|http://www.xvid.org/|{{Pkg|xvidcore}}}}
 
* {{App|[[Wikipedia:ja:Xvid|Xvid]]|オープンソースの MPEG-4 ビデオコーデック。|http://www.xvid.org/|{{Pkg|xvidcore}}}}
   
  +
== コンテナフォーマットツール ==
==バックエンド==
 
   
  +
こちらも参照 [[Wikipedia:Comparison of video container formats]]
===GStreamer===
 
  +
  +
* {{App|[[Wikipedia:MKVToolNix|MKVToolNix]]|Matroska ファイルを作成、編集、検査するためのツールのセット。|https://mkvtoolnix.download/|{{Pkg|mkvtoolnix-cli}}, {{Pkg|mkvtoolnix-gui}}}}
  +
* {{App|MP4Joiner|MP4 ファイルを操作するための GUI ツールのコレクション。(MP4Joiner、MP4Splitter)|https://www.mp4joiner.org/|{{AUR|mp4joiner}}}}
  +
* {{App|OGMtools|OGG メディアストリームの情報、抽出、または作成。|https://www.bunkus.org/videotools/ogmtools|{{Pkg|ogmtools}}}}
  +
  +
== バックエンド ==
  +
  +
=== GStreamer ===
   
 
http://www.gstreamer.net/ より:
 
http://www.gstreamer.net/ より:
161行目: 169行目:
 
つまり、GStreamer は ''バックエンド'' や ''フレームワーク'' として多くのメディアプレイヤーによって利用されています。[[GStreamer]] の記事を参照してください。
 
つまり、GStreamer は ''バックエンド'' や ''フレームワーク'' として多くのメディアプレイヤーによって利用されています。[[GStreamer]] の記事を参照してください。
   
===xine===
+
=== xine ===
   
 
http://www.xine-project.org/about より:
 
http://www.xine-project.org/about より:
171行目: 179行目:
 
xine プロジェクト自体もビデオプレイヤーを提供しています, {{pkg|xine-ui}}。
 
xine プロジェクト自体もビデオプレイヤーを提供しています, {{pkg|xine-ui}}。
   
===libavcodec===
+
=== libavcodec ===
   
 
[[FFmpeg|libavcodec]] は [https://ffmpeg.org/ FFmpeg] プロジェクトの一部です。さまざまなビデオ・オーディオコーデックを含んでいます。libavcodec コーデックは [[MPlayer]] や [[VLC media player|VLC]] などのメディアプレイヤーに含まれているため、{{Pkg|ffmpeg}} パッケージをインストールする必要はありません。
 
[[FFmpeg|libavcodec]] は [https://ffmpeg.org/ FFmpeg] プロジェクトの一部です。さまざまなビデオ・オーディオコーデックを含んでいます。libavcodec コーデックは [[MPlayer]] や [[VLC media player|VLC]] などのメディアプレイヤーに含まれているため、{{Pkg|ffmpeg}} パッケージをインストールする必要はありません。
   
==ヒントとテクニック==
+
== ヒントとテクニック ==
   
===Totem プレイヤで H264, mpg4, Musepack (.mpc) がない===
+
=== Totem プレイヤで H264, mpg4, Musepack (.mpc) がない ===
   
 
"H264 プラグインが見つからない" という警告が Totem メディアプレイヤーに表示されるときは、{{Pkg|gst-libav}} をインストールして Gstreamer の libav ライブラリをインストールすることで直ります。
 
"H264 プラグインが見つからない" という警告が Totem メディアプレイヤーに表示されるときは、{{Pkg|gst-libav}} をインストールして Gstreamer の libav ライブラリをインストールすることで直ります。

2023年3月27日 (月) 16:59時点における最新版

関連記事

wikipedia より:

コーデック (Codec) は、符号化方式を使ってデータのエンコード(符号化)とデコード(復号)を双方向にできる装置やソフトウェアなどのこと。

一般的に、マルチメディアアプリケーションにおいて音声や動画ストリームをエンコード・デコードするためにコーデックが使われます。エンコードされたストリームを再生するために、ユーザーは適切なコーデックをインストールする必要があります。

この記事ではコーデックとアプリケーションのバックエンドだけを扱います; プレイヤーのリストはアプリケーション一覧を見て下さい (MPlayerVLCmpv がよく使われています)。

要件

マルチメディアを再生するには2つのコンポーネントが必要です:

  • メディアプレイヤー
  • 適切なコーデック

メディアプレイヤーをインストールしている場合は必ずしもコーデックをインストールする必要はないこともあります。例えば、MPlayer は依存パッケージとして大量のコーデックをインストールします。また、内蔵コーデックも持っています。

コーデック一覧

オーディオ

こちらも参照 Wikipedia:Comparison of audio coding formats

可逆オーディオコーデック

  • Apple Lossless (ALAC) — Apple が開発し、Apple のすべてのプラットフォームとデバイスに展開されている可逆オーディオ圧縮コーデック。
https://alac.macosforge.org/ || alac-gitAUR
  • FLAC — フリーの可逆オーディオコーデック。
https://xiph.org/flac/ || flac
https://www.wavpack.com/ || wavpack

非可逆オーディオコーデック

フォーマット エンコード デコード
AAC #AAC
ATSC A/52 aftenAUR a52dec
CELT celtAUR
MPEG-1   libmad
MP3 lame
Musepack (MPC) 1 libmpcdec
Opus opus
Vorbis libvorbis
音声コーデック
AMR opencore-amr
Speex speex
  1. mppenc はパッケージ化されていません。
  • CELT — 低レイテンシー向けに最適化された、オープンで著作権使用料不要の非可逆オーディオコーデック。
http://www.celt-codec.org/ || celtAUR
  • LAME — MP3 エンコーダとグラフィカルなフレームアナライザ。
https://lame.sourceforge.io/ || lame
  • liba52 — ATSC A/52 ストリームのデコードに使うフリーのライブラリ。
http://liba52.sourceforge.net/ || a52dec
  • libdca — DTS Coherent Acoustics ストリームのデコードのためのフリーなライブラリ。
https://www.videolan.org/developers/libdca.html || libdca
  • MAD — 高品質の MPEG オーディオ デコーダー。
https://www.underbit.com/products/mad/ || libmad
  • Musepack — 高い品質に重点が置かれている音声圧縮フォーマット。可逆圧縮ではありませんが、ブラインドテストで、オリジナルの wave ファイルと小さくなった MPC ファイルの差を聞き分けられないくらいに設計されています。MPEG-1 Layer-2 / MP2 アルゴリズムをベースに1997年から急速に開発がなされ、今では最適化がほどこされパテントがないコードを含む段階にまで発展しています。
http://musepack.net/ || libmpcdec
  • opencore-amr — Adaptive Multi Rate (AMR) 音声コーデックのオープンソース実装。
https://sourceforge.net/projects/opencore-amr/ || opencore-amr
  • Opus — 完全にオープンで、ロイヤルティフリー、多目的の音声コーデック。Opus はインターネットを介した音楽の転送などには向きませんが、ストレージ・ストリーミングアプリケーションにも使われることを想定しています。Skype の SILK コーデックや Xiph.Org の CELT コーデックからの技術を合体させており Internet Engineering Task Force (IETF) によって RFC 6716 として標準化されています。
http://www.opus-codec.org/ || opus opus-gitAUR
  • Speex — 通話向けに設計されたパテントフリーの音声圧縮フォーマット。
http://www.speex.org/ || speex
  • Vorbis — 完全にオープン・パテントフリーでプロフェッショナルな音声エンコード・ストリーミング技術。
http://www.vorbis.com/ || libvorbis
AAC

Wikipedia から:

Advanced Audio Coding (AAC) は、非可逆デジタルオーディオ圧縮のための独自のオーディオコーディング標準です。MP3 形式の後継として設計された AAC は、通常、同じビットレートで MP3 よりも優れた音質を実現します。
  • FAAC — 独自の AAC オーディオエンコーダー。
http://faac.sourceforge.net/ || faac
  • FAAD2 — ISO AAC オーディオデコーダー。
http://faac.sourceforge.net/ || faad2
  • Fraunhofer FDK AAC — OpenCORE フレームワークの実装 Advanced Audio Coding (AAC) エンコーダー。Fraunhofer AAC デコーダーとエンコーダーの変更されたライブラリ。
https://sourceforge.net/projects/opencore-amr/ || libfdk-aac (コーデックライブラリ) fdkaac (libfdk-aac の CLI フロントエンド)
  • Nero AAC — Nero AAC 基準品質の MPEG-4 および 3GPP オーディオコーデック。(非推奨)
https://www.nero.com/ || neroaac-binAUR

イメージコーデック

  • JasPer — 新しい JPEG-2000 Part-1 標準で指定されたコーデックのソフトウェアベースの実装。
https://www.ece.uvic.ca/~frodo/jasper/ || jasper
  • OpenJPEG — オープンソースの JPEG 2000 コーデック。
https://www.openjpeg.org/ || openjpegAUR
  • WebP — 非可逆圧縮と可逆圧縮の両方を使用する画像形式。現在は Google によって開発されています。
https://developers.google.com/speed/webp/ || libwebp
https://github.com/AOMediaCodec/libavif || libavif
https://github.com/strukturag/libheif || libheif

ビデオコーデック

こちらも参照 Wikipedia:Comparison of video codecs

フォーマット コーデックライブラリ
AV1 aom, dav1d (デコード), rav1e (エンコード), svt-av1
AVS2 davs2AUR (デコード)
Daala daala-gitAUR
Dirac schroedinger
DV libdv
H.265 x265, x265-hgAUR
libde265, libde265-gitAUR
H.264 x264, x264-gitAUR
MPEG-1 libmpeg2 (デコード)
MPEG-2
MPEG-4 Xvid (xvidcore)
Theora libtheora
VP8, VP9 libvpx, libvpx-gitAUR
  • AV1 — AOMedia Video 1 (AV1) は、Google の VP9、Mozilla の Daala、Cisco の Thor の後継コーデックです。aom は、エンコードとデコードの両方のリファレンス実装です。 dav1d はパフォーマンス重視のデコーダです。rav1e はパフォーマンス重視のエンコーダです。ほとんどのベンチマークは、rav1e よりも svt-av1 の方が優れたパフォーマンスを示しています。
https://aomediacodec.github.io/av1-spec/ || aom, dav1d, rav1e, svt-av1
  • Daala — Xiph.Org Foundation が開発中で、Mozilla Foundation が後援しているビデオコーデックの研究。このプロジェクトの目標は、h.265 よりも優れた技術的パフォーマンスを備えた、自由に実装、使用、配布できるデジタルメディアフォーマットと参照実装を提供することです。
https://www.xiph.org/daala/ || daala-gitAUR
  • libde265 — h.265 ビデオコーデックのオープンソース実装。
https://github.com/strukturag/libde265 || libde265
  • libdv — Quasar DV コーデック (libdv) は、DV ビデオ用のソフトウェアコーデックです。
http://libdv.sourceforge.net/ || libdv
  • libmpeg2 — MPEG-1 および MPEG-2 ビデオストリームをデコードするためのライブラリ。
https://libmpeg2.sourceforge.io/ || libmpeg2
  • Schrödinger — 低解像度の Web コンテンツの配信から HD 以上のブロードキャスト、ほぼロスレスのスタジオ編集まで、幅広い用途向けに設計された、ロイヤリティフリーの高度なビデオ圧縮形式です。
https://launchpad.net/schroedinger/ || schroedinger
  • Theora — Xiph.org によって開発されたオープンな動画コーデック。
http://www.theora.org/ || libtheora
  • VP9 — 誰でも無料で利用できる、高品質でオープンな Web 用のビデオ形式です。以前の VP8 コーデックの改良版。
https://www.webmproject.org || libvpx
  • x264 — H264/AVC ビデオストリームのエンコードのためのフリーのライブラリ。
https://www.videolan.org/developers/x264.html || x264 x264-gitAUR
  • x265 — ビデオストリームを H.265/High Efficiency Video Coding (HEVC) 形式にエンコードするためのオープンソースプロジェクトとフリーのアプリケーションライブラリ。
http://x265.org/ || x265 x265-hgAUR
  • Xvid — オープンソースの MPEG-4 ビデオコーデック。
http://www.xvid.org/ || xvidcore

コンテナフォーマットツール

こちらも参照 Wikipedia:Comparison of video container formats

  • MKVToolNix — Matroska ファイルを作成、編集、検査するためのツールのセット。
https://mkvtoolnix.download/ || mkvtoolnix-cli, mkvtoolnix-gui
  • MP4Joiner — MP4 ファイルを操作するための GUI ツールのコレクション。(MP4Joiner、MP4Splitter)
https://www.mp4joiner.org/ || mp4joinerAUR
  • OGMtools — OGG メディアストリームの情報、抽出、または作成。
https://www.bunkus.org/videotools/ogmtools || ogmtools

バックエンド

GStreamer

http://www.gstreamer.net/ より:

GStreamer はメディアを扱うコンポーネントのグラフを組み立てるためのライブラリです。サポートしているアプリケーションは単純な Ogg/Vorbis の再生や音声・動画のストリーミングから複雑な音声 (ミキシング) や動画 (ノンリニア編集) の処理まで幅広く及びます。

つまり、GStreamer は バックエンドフレームワーク として多くのメディアプレイヤーによって利用されています。GStreamer の記事を参照してください。

xine

http://www.xine-project.org/about より:

xine はフリーの (GPL ライセンスの) ハイパフォーマンスで、携帯性を持ち、再利用可能なマルチメディア再生エンジンです。xine 自体は使いやすいように共有ライブラリで作られており、さまざまなアプリケーションでスムーズな動画再生・動画処理のためにパワフルな API が使われています。

GStreamer の代わりとして、多くのメディアプレイヤーでは xine-lib によって含まれている xine バックエンドを使うように設定することが可能です。

xine プロジェクト自体もビデオプレイヤーを提供しています, xine-ui

libavcodec

libavcodecFFmpeg プロジェクトの一部です。さまざまなビデオ・オーディオコーデックを含んでいます。libavcodec コーデックは MPlayerVLC などのメディアプレイヤーに含まれているため、ffmpeg パッケージをインストールする必要はありません。

ヒントとテクニック

Totem プレイヤで H264, mpg4, Musepack (.mpc) がない

"H264 プラグインが見つからない" という警告が Totem メディアプレイヤーに表示されるときは、gst-libav をインストールして Gstreamer の libav ライブラリをインストールすることで直ります。

Parole メディアプレーヤーに H264 はありません

Parole メディアプレーヤーで "Parole needs H.264 decoder to play this file" という警告が表示される場合は、gst-libavインストール して下さい。