Difference between revisions of "Codecs and containers"

From ArchWiki
Jump to: navigation, search
m (Fix broken section link)
m (libavcodec: style)
 
(33 intermediate revisions by 3 users not shown)
Line 8: Line 8:
 
[[ja:コーデック]]
 
[[ja:コーデック]]
 
[[ru:Codecs]]
 
[[ru:Codecs]]
[[tr:Kod çözücüler]]
 
 
[[zh-hans:Codecs]]
 
[[zh-hans:Codecs]]
 
{{Related articles start}}
 
{{Related articles start}}
 
{{Related|Optical disc drive#Playback}}
 
{{Related|Optical disc drive#Playback}}
 
{{Related|GStreamer}}
 
{{Related|GStreamer}}
{{Related|MPlayer}}
+
{{Related|ffmpeg}}
{{Related|VLC media player}}
 
 
{{Related articles end}}
 
{{Related articles end}}
 
From [[Wikipedia:Codec|Wikipedia]], "a codec is a device or computer program capable of encoding and/or decoding a digital data stream or signal."
 
From [[Wikipedia:Codec|Wikipedia]], "a codec is a device or computer program capable of encoding and/or decoding a digital data stream or signal."
Line 20: Line 18:
 
In general, codecs are utilized by multimedia applications to encode or decode audio or video streams. In order to play encoded streams, users must ensure an appropriate codec is installed.
 
In general, codecs are utilized by multimedia applications to encode or decode audio or video streams. In order to play encoded streams, users must ensure an appropriate codec is installed.
  
This article deals only with codecs and application backends; see [[List of applications#Multimedia|List of Applications]] for a list of media players ([[MPlayer]], [[mpv]] and [[VLC]] are popular choices).
+
This article deals only with codecs and application backends; see [[List of applications/Multimedia]] for a list of media players ([[MPlayer]], [[mpv]] and [[VLC]] are popular choices).
  
 
== Requirements ==
 
== Requirements ==
Line 33: Line 31:
 
== List of codecs ==
 
== List of codecs ==
  
* {{App|[[Wikipedia:ALAC|ALAC]]|Data compression method which reduces the size of audio files with no loss of information.|https://alac.macosforge.org/|{{AUR|alac-git}}}}
+
=== Audio ===
* {{App|[[Wikipedia:CELT|CELT]]|Compression algorithm for audio. Like MP3, Vorbis, and AAC it is suitable for transmitting music with high quality. Unlike these formats CELT imposes very little delay on the signal, even less than is typical for speech centric formats like Speex, GSM, or G.729. |http://www.celt-codec.org/|{{Pkg|celt}}}}
+
 
* {{App|[[Wikipedia:Daala|Daala]]|New video compression technology. The effort is a collaboration between Mozilla Foundation, Xiph.Org Foundation and other contributors. The goal of the project is to provide a free to implement, use and distribute digital media format and reference implementation with technical performance superior to h.265.|https://www.xiph.org/daala/|{{AUR|daala-git}}}}
+
See also [[Wikipedia:Comparison of audio coding formats]].
* {{App|[[Wikipedia:FAAC|FAAC]]|Proprietary AAC audio encoder.|http://www.audiocoding.com/faac.html|{{Pkg|faac}}}}
+
 
 +
==== Lossy audio codecs ====
 +
 
 +
{| class="wikitable" style="text-align:center"
 +
!colspan=2| Codec !! Encode !! Decode
 +
|-
 +
|colspan=2| [[Wikipedia:Advanced Audio Coding|AAC]] ||colspan=2| [[#AAC]]
 +
|-
 +
|colspan=2| [[Wikipedia:ATSC A/52|ATSC A/52]] || {{AUR|aften}} || {{Pkg|a52dec}}
 +
|-
 +
|colspan=2| [[Wikipedia:CELT|CELT]] ||colspan=2| {{Pkg|celt}}
 +
|-
 +
|rowspan=2| [[Wikipedia:MPEG-1|MPEG-1]] || ||   ||rowspan=2| {{Pkg|libmad}}
 +
|-
 +
| [[Wikipedia:MP3|MP3]] || {{Pkg|lame}}
 +
|-
 +
|colspan=2| [[Wikipedia:Musepack|Musepack]] (MPC) || {{-}}<sup>1)</sup> || {{Pkg|libmpcdec}}
 +
|-
 +
|colspan=2| [[Wikipedia:Opus (audio format)|Opus]] ||colspan=2| {{Pkg|opus}}, {{AUR|opus-git}}
 +
|-
 +
|colspan=2| [[Wikipedia:Vorbis|Vorbis]] ||colspan=2| {{Pkg|libvorbis}}
 +
|-
 +
!colspan=4| Speech codecs
 +
|-
 +
|colspan=2| [[Wikipedia:Adaptive Multi-Rate audio codec|AMR]] ||colspan=2| {{Pkg|opencore-amr}}
 +
|-
 +
|colspan=2| [[Wikipedia:Speex|Speex]] ||colspan=2| {{Pkg|speex}}
 +
|}
 +
 
 +
# mppenc is not packaged.
 +
 
 +
* {{App|[[Wikipedia:CELT|CELT]]|Open, royalty-free lossy audio codec, optimized for low latency.|http://www.celt-codec.org/|{{Pkg|celt}}}}
 +
* {{App|[[Wikipedia:LAME|LAME]]|MP3 encoder and graphical frame analyzer.|http://lame.sourceforge.net/|{{Pkg|lame}}}}
 +
* {{App|liba52|Free library for decoding [[Wikipedia:ATSC A/52|ATSC A/52]] (Dolby Digital) streams (lossy).|http://liba52.sourceforge.net/|{{Pkg|a52dec}}}}
 +
* {{App|[[Wikipedia:libdca|libdca]]|Free library for decoding DTS Coherent Acoustics streams.|https://www.videolan.org/developers/libdca.html|{{Pkg|libdca}}}}
 +
* {{App|[[Wikipedia:libmad|MAD]]|High-quality MPEG audio decoder.|https://www.underbit.com/products/mad/|{{Pkg|libmad}}}}
 +
* {{App|[[Wikipedia:Musepack|Musepack]] (MPC)|Open source lossy audio codec, designed for [[Wikipedia:Transparency (data compression)|transparency]].|https://musepack.net/|{{Pkg|libmpcdec}}}}
 +
* {{App|[[Wikipedia:Adaptive Multi-Rate audio codec|opencore-amr]]|Open source implementation of the Adaptive Multi Rate (AMR) speech codec.|https://sourceforge.net/projects/opencore-amr/|{{Pkg|opencore-amr}}}}
 +
* {{App|[[Wikipedia:Opus (audio codec)|Opus]]|Open, royalty-free, lossy audio codec, designed for speech and general audio coding and low latency.|https://www.opus-codec.org/|{{Pkg|opus}}, {{AUR|opus-git}}}}
 +
* {{App|[[Wikipedia:Speex|Speex]]|Patent-free, lossy audio compression format designed for speech.|https://www.speex.org/|{{Pkg|speex}}}}
 +
* {{App|[[Wikipedia:Vorbis|Vorbis]]|Open, patent-free, lossy audio codec.|https://xiph.org/vorbis/|{{Pkg|libvorbis}}}}
 +
 
 +
===== AAC =====
 +
 
 +
From [[Wikipedia:Advanced Audio Coding|Wikipedia]]:
 +
 
 +
:'''Advanced Audio Coding''' (AAC) is a proprietary audio coding standard for lossy digital audio compression. Designed to be the successor of the MP3 format, AAC generally achieves better sound quality than MP3 at the same bit rate.
 +
 
 +
* {{App|[[Wikipedia:FAAC|FAAC]]|Proprietary AAC audio encoder.|https://www.audiocoding.com/faac.html|{{Pkg|faac}}}}
 
* {{App|[[Wikipedia:FAAD2|FAAD2]]|ISO AAC audio decoder.|http://www.audiocoding.com/faad2.html|{{Pkg|faad2}}}}
 
* {{App|[[Wikipedia:FAAD2|FAAD2]]|ISO AAC audio decoder.|http://www.audiocoding.com/faad2.html|{{Pkg|faad2}}}}
 +
* {{App|[[Wikipedia:FAAD2|Fraunhofer FDK AAC]]|Complete, high-quality audio solution to Android (and Linux) users.|http://www.iis.fraunhofer.de/en/bf/amm/implementierungen/fdkaaccodec.html|{{Pkg|libfdk-aac}}}}
 +
* {{App|[[Wikipedia:Advanced Audio Coding|Nero AAC]]|AAC audio codec (decode/encode/tag) all-in-one.|http://www.nero.com/eng/company/about-nero/nero-aac-codec.php|{{AUR|neroaac}}}}
 +
 +
==== Lossless audio codecs ====
 +
 +
* {{App|[[Wikipedia:Apple Lossless|Apple Lossless]] (ALAC)|A lossless audio compression codec developed by Apple and deployed on all of its platforms and devices.|https://alac.macosforge.org/|{{AUR|alac-git}}}}
 
* {{App|[[Wikipedia:FLAC|FLAC]]|Free Lossless Audio Codec.|https://xiph.org/flac/|{{Pkg|flac}}}}
 
* {{App|[[Wikipedia:FLAC|FLAC]]|Free Lossless Audio Codec.|https://xiph.org/flac/|{{Pkg|flac}}}}
* {{App|[[Wikipedia:FAAD2|Fraunhofer FDK AAC]]|Complete, high-quality audio solution to Android (and Linux) users.|http://www.iis.fraunhofer.de/en/bf/amm/implementierungen/fdkaaccodec.html|{{Pkg|libfdk-aac}}}}
+
* {{App|[[Wikipedia:WavPack|WavPack]]|Lossless audio compression format that also has a lossy [[Wikipedia:WavPack#Hybrid mode|hybrid mode]].|http://www.wavpack.com/|{{Pkg|wavpack}}}}
 +
 
 +
=== Image codecs ===
 +
 
 
* {{App|[[Wikipedia:JasPer|JasPer]]|Software-based implementation of the codec specified in the emerging JPEG-2000 Part-1 standard.|http://www.ece.uvic.ca/~frodo/jasper/|}}{{Pkg|jasper}}
 
* {{App|[[Wikipedia:JasPer|JasPer]]|Software-based implementation of the codec specified in the emerging JPEG-2000 Part-1 standard.|http://www.ece.uvic.ca/~frodo/jasper/|}}{{Pkg|jasper}}
* {{App|[[Wikipedia:LAME|LAME]]|MP3 encoder and graphical frame analyzer.|http://lame.sourceforge.net/|{{Pkg|lame}}}}
+
* {{App|[[Wikipedia:OpenJPEG|OpenJPEG]]|Open source JPEG 2000 codec.|http://www.openjpeg.org/|{{Pkg|openjpeg}}}}
* {{App|liba52|Free library for decoding ATSC A/52 streams.|http://liba52.sourceforge.net/|{{Pkg|a52dec}}}}
+
 
* {{App|[[Wikipedia:libdca|libdca]]|Free library for decoding DTS Coherent Acoustics streams.|https://www.videolan.org/developers/libdca.html|{{Pkg|libdca}}}}
+
=== Video codecs ===
* {{App|libde265|Open source implementation of the h.265 video codec.|https://github.com/strukturag/libde265|{{AUR|libde265}} {{AUR|libde265-git}}}}
+
 
 +
{{Expansion|Add {{AUR|davs2}}.}}
 +
 
 +
See also [[Wikipedia:Comparison of video codecs]].
 +
 
 +
{| class="wikitable"
 +
! Codec !! Libraries
 +
|-
 +
| [[Wikipedia:AV1|AV1]] || {{Pkg|aom}}
 +
|-
 +
| [[Wikipedia:Daala|Daala]] || {{AUR|daala-git}}
 +
|-
 +
| [[Wikipedia:Dirac (video compression format)|Dirac]] || {{Pkg|schroedinger}}
 +
|-
 +
| [[Wikipedia:DV|DV]] || {{Pkg|libdv}}
 +
|-
 +
|rowspan=2| [[Wikipedia:High Efficiency Video Coding|H.265]] || {{Pkg|x265}}, {{AUR|x265-hg}}
 +
|-
 +
| {{Pkg|libde265}}, {{AUR|libde265-git}}
 +
|-
 +
| [[Wikipedia:H.264|H.264]] || {{Pkg|x264}}, {{AUR|x264-git}}
 +
|-
 +
| [[Wikipedia:MPEG-1|MPEG-1]] ||rowspan=2| {{Pkg|libmpeg2}} (decode)
 +
|-
 +
| [[Wikipedia:MPEG-2|MPEG-2]]
 +
|-
 +
| [[Wikipedia:MPEG-4|MPEG-4]] || [[Wikipedia:Xvid|Xvid]] ({{Pkg|xvidcore}})
 +
|-
 +
| [[Wikipedia:Theora|Theora]] || {{Pkg|libtheora}}
 +
|-
 +
| [[Wikipedia:VP8|VP8]] || {{Pkg|libvpx}}, {{AUR|libvpx-git}}
 +
|}
 +
 
 +
* {{App|[[Wikipedia:AV1|AV1]]|AOMedia Video 1 (AV1) is successor codec to Google's VP9, Mozilla's Daala, Cisco's Thor.|https://aomediacodec.github.io/av1-spec/|{{Pkg|aom}}}}
 +
* {{App|[[Wikipedia:Daala|Daala]]|New video compression technology. The effort is a collaboration between Mozilla Foundation, Xiph.Org Foundation and other contributors. The goal of the project is to provide a free to implement, use and distribute digital media format and reference implementation with technical performance superior to h.265.|https://www.xiph.org/daala/|{{AUR|daala-git}}}}
 +
* {{App|libde265|Open source implementation of the h.265 video codec.|https://github.com/strukturag/libde265|{{Pkg|libde265}}, {{AUR|libde265-git}}}}
 
* {{App|[[Wikipedia:DV|libdv]]|The Quasar DV codec (libdv) is a software codec for DV video.|http://libdv.sourceforge.net/|{{Pkg|libdv}}}}
 
* {{App|[[Wikipedia:DV|libdv]]|The Quasar DV codec (libdv) is a software codec for DV video.|http://libdv.sourceforge.net/|{{Pkg|libdv}}}}
 
* {{App|[[Wikipedia:libmpeg2|libmpeg2]]|Library for decoding MPEG-1 and MPEG-2 video streams.|http://libmpeg2.sourceforge.net/|{{Pkg|libmpeg2}}}}
 
* {{App|[[Wikipedia:libmpeg2|libmpeg2]]|Library for decoding MPEG-1 and MPEG-2 video streams.|http://libmpeg2.sourceforge.net/|{{Pkg|libmpeg2}}}}
* {{App|[[Wikipedia:libmad|MAD]]|High-quality MPEG audio decoder.|http://www.underbit.com/products/mad/|{{Pkg|libmad}}}}
 
* {{App|[[Wikipedia:Musepack|Musepack]]|Audio compression format with a strong emphasis on high quality. It's not lossless, but it is designed for transparency, so that you won't be able to hear differences between the original wave file and the much smaller MPC file. It is based on the MPEG-1 Layer-2 / MP2 algorithms, but since 1997 it has rapidly developed and vastly improved and is now at an advanced stage in which it contains heavily optimized and patentless code.|http://musepack.net/|{{Pkg|libmpcdec}}}}
 
* {{App|[[Wikipedia:Advanced Audio Coding|Nero AAC]]|AAC audio codec (decode/encode/tag) all-in-one.|http://www.nero.com/eng/company/about-nero/nero-aac-codec.php|{{AUR|neroaac}}}}
 
* {{App|[[Wikipedia:Adaptive Multi-Rate audio codec|opencore-amr]]|Open source implementation of the Adaptive Multi Rate (AMR) speech codec.|http://sourceforge.net/projects/opencore-amr/|{{Pkg|opencore-amr}}}}
 
* {{App|[[Wikipedia:Opus (audio codec)|Opus]]|Totally open, royalty-free, highly versatile audio codec. Opus is unmatched for interactive speech and music transmission over the Internet, but is also intended for storage and streaming applications. It is standardized by the Internet Engineering Task Force (IETF) as RFC 6716 which incorporated technology from Skype's SILK codec and Xiph.Org's CELT codec.|http://www.opus-codec.org/|{{Pkg|opus}} {{AUR|opus-git}}}}
 
 
* {{App|[[Wikipedia:Dirac (video compression format)|Schrödinger]]|Advanced royalty-free video compression format designed for a wide range of uses, from delivering low-resolution web content to broadcasting HD and beyond, to near-lossless studio editing. |http://diracvideo.org/|{{Pkg|schroedinger}}}}
 
* {{App|[[Wikipedia:Dirac (video compression format)|Schrödinger]]|Advanced royalty-free video compression format designed for a wide range of uses, from delivering low-resolution web content to broadcasting HD and beyond, to near-lossless studio editing. |http://diracvideo.org/|{{Pkg|schroedinger}}}}
* {{App|[[Wikipedia:Speex|Speex]]|Patent-free audio compression format designed for speech.|http://www.speex.org/|{{Pkg|speex}}}}
+
* {{App|[[Wikipedia:Theora|Theora]]|Open video codec developed by the Xiph.org.|https://www.theora.org/|{{Pkg|libtheora}}}}
* {{App|[[Wikipedia:Theora|Theora]]|Open video codec developed by the Xiph.org.|http://www.theora.org/|{{Pkg|libtheora}}}}
+
* {{App|[[Wikipedia:VP8|VP8]]|High-quality, open video format for the web that's freely available to everyone.|https://www.webmproject.org|{{Pkg|libvpx}}, {{AUR|libvpx-git}}}}
* {{App|[[Wikipedia:Vorbis|Vorbis]]|Completely open, patent-free, professional audio encoding and streaming technology.|http://www.vorbis.com/|{{Pkg|libvorbis}}}}
+
* {{App|[[Wikipedia:x264|x264]]|Free library for encoding H264/AVC video streams.|https://www.videolan.org/developers/x264.html|{{Pkg|x264}}, {{AUR|x264-git}}}}
* {{App|[[Wikipedia:VP8|VP8]]|High-quality, open video format for the web that's freely available to everyone.|http://www.webmproject.org|{{Pkg|libvpx}} {{AUR|libvpx-git}}}}
 
* {{App|[[Wikipedia:WavPack|WavPack]]|Audio compression format with lossless, lossy, and hybrid compression modes.|http://www.wavpack.com/|{{Pkg|wavpack}}}}
 
* {{App|[[Wikipedia:x264|x264]]|Free library for encoding H264/AVC video streams.|https://www.videolan.org/developers/x264.html|{{Pkg|x264}} {{AUR|x264-git}}}}
 
 
* {{App|[[Wikipedia:x265|x265]]|Open-source project and free application library for encoding video streams into the H.265/High Efficiency Video Coding (HEVC) format.|http://x265.org/|{{Pkg|x265}} {{AUR|x265-hg}}}}
 
* {{App|[[Wikipedia:x265|x265]]|Open-source project and free application library for encoding video streams into the H.265/High Efficiency Video Coding (HEVC) format.|http://x265.org/|{{Pkg|x265}} {{AUR|x265-hg}}}}
* {{App|[[Wikipedia:Xvid|Xvid]]|Open source MPEG-4 video codec.|http://www.xvid.org/|{{Pkg|xvidcore}}}}
+
* {{App|[[Wikipedia:Xvid|Xvid]]|Open source MPEG-4 video codec.|https://www.xvid.org/|{{Pkg|xvidcore}}}}
 +
 
 +
== Container format tools ==
 +
 
 +
See also [[Wikipedia:Comparison of video container formats]].
 +
 
 +
* {{App|[[Wikipedia:MKVToolNix|MKVToolNix CLI]]|Set of tools to create, edit and inspect Matroska files.|https://mkvtoolnix.download/|{{Pkg|mkvtoolnix-cli}}, {{Pkg|mkvtoolnix-gui}}}}
 +
* {{App|OGMtools|Information, extraction or creation for OGG media streams.|http://www.bunkus.org/videotools/ogmtools|{{Pkg|ogmtools}}}}
  
 
== Backends ==
 
== Backends ==
Line 84: Line 173:
 
=== libavcodec ===
 
=== libavcodec ===
  
[[FFmpeg|libavcodec]] is part of the [http://ffmpeg.org/ FFmpeg] project. It includes a large number of video and audio codecs. The libavcodec codecs are included with media players such as [[MPlayer]] and [[VLC]], so you may not need to install the {{Pkg|ffmpeg}} package itself.
+
[https://ffmpeg.org/libavcodec.html libavcodec] is part of the [[FFmpeg]] project. It includes a large number of video and audio codecs. The libavcodec codecs are included with media players such as [[MPlayer]] and [[VLC]], so you may not need to install the {{Pkg|ffmpeg}} package itself.
  
 
== Tips and tricks ==
 
== Tips and tricks ==
  
 
=== Install MPlayer binary codecs ===
 
=== Install MPlayer binary codecs ===
 +
 +
{{Move|MPlayer|Belongs there.}}
  
 
As an ultimate solution, you can try to install MPlayer binary codecs.
 
As an ultimate solution, you can try to install MPlayer binary codecs.

Latest revision as of 15:17, 15 January 2019

From Wikipedia, "a codec is a device or computer program capable of encoding and/or decoding a digital data stream or signal."

In general, codecs are utilized by multimedia applications to encode or decode audio or video streams. In order to play encoded streams, users must ensure an appropriate codec is installed.

This article deals only with codecs and application backends; see List of applications/Multimedia for a list of media players (MPlayer, mpv and VLC are popular choices).

Requirements

Playing multimedia content requires two components:

  • A capable media player
  • The appropriate codec

It is not always necessary to explicitly install codecs if you have installed a media player. For example, MPlayer pulls in a large number of codecs as dependencies, and also has codecs built in.

List of codecs

Audio

See also Wikipedia:Comparison of audio coding formats.

Lossy audio codecs

Codec Encode Decode
AAC #AAC
ATSC A/52 aftenAUR a52dec
CELT celt
MPEG-1   libmad
MP3 lame
Musepack (MPC) 1) libmpcdec
Opus opus, opus-gitAUR
Vorbis libvorbis
Speech codecs
AMR opencore-amr
Speex speex
  1. mppenc is not packaged.
  • CELT — Open, royalty-free lossy audio codec, optimized for low latency.
http://www.celt-codec.org/ || celt
  • LAME — MP3 encoder and graphical frame analyzer.
http://lame.sourceforge.net/ || lame
  • liba52 — Free library for decoding ATSC A/52 (Dolby Digital) streams (lossy).
http://liba52.sourceforge.net/ || a52dec
  • libdca — Free library for decoding DTS Coherent Acoustics streams.
https://www.videolan.org/developers/libdca.html || libdca
  • MAD — High-quality MPEG audio decoder.
https://www.underbit.com/products/mad/ || libmad
https://musepack.net/ || libmpcdec
  • opencore-amr — Open source implementation of the Adaptive Multi Rate (AMR) speech codec.
https://sourceforge.net/projects/opencore-amr/ || opencore-amr
  • Opus — Open, royalty-free, lossy audio codec, designed for speech and general audio coding and low latency.
https://www.opus-codec.org/ || opus, opus-gitAUR
  • Speex — Patent-free, lossy audio compression format designed for speech.
https://www.speex.org/ || speex
  • Vorbis — Open, patent-free, lossy audio codec.
https://xiph.org/vorbis/ || libvorbis
AAC

From Wikipedia:

Advanced Audio Coding (AAC) is a proprietary audio coding standard for lossy digital audio compression. Designed to be the successor of the MP3 format, AAC generally achieves better sound quality than MP3 at the same bit rate.
  • FAAC — Proprietary AAC audio encoder.
https://www.audiocoding.com/faac.html || faac
  • FAAD2 — ISO AAC audio decoder.
http://www.audiocoding.com/faad2.html || faad2
  • Fraunhofer FDK AAC — Complete, high-quality audio solution to Android (and Linux) users.
http://www.iis.fraunhofer.de/en/bf/amm/implementierungen/fdkaaccodec.html || libfdk-aac
  • Nero AAC — AAC audio codec (decode/encode/tag) all-in-one.
http://www.nero.com/eng/company/about-nero/nero-aac-codec.php || neroaacAUR

Lossless audio codecs

  • Apple Lossless (ALAC) — A lossless audio compression codec developed by Apple and deployed on all of its platforms and devices.
https://alac.macosforge.org/ || alac-gitAUR
  • FLAC — Free Lossless Audio Codec.
https://xiph.org/flac/ || flac
http://www.wavpack.com/ || wavpack

Image codecs

  • JasPer — Software-based implementation of the codec specified in the emerging JPEG-2000 Part-1 standard.
http://www.ece.uvic.ca/~frodo/jasper/ || jasper
  • OpenJPEG — Open source JPEG 2000 codec.
http://www.openjpeg.org/ || openjpeg

Video codecs

Tango-view-fullscreen.pngThis article or section needs expansion.Tango-view-fullscreen.png

Reason: Add davs2AUR. (Discuss in Talk:Codecs and containers#)

See also Wikipedia:Comparison of video codecs.

Codec Libraries
AV1 aom
Daala daala-gitAUR
Dirac schroedinger
DV libdv
H.265 x265, x265-hgAUR
libde265, libde265-gitAUR
H.264 x264, x264-gitAUR
MPEG-1 libmpeg2 (decode)
MPEG-2
MPEG-4 Xvid (xvidcore)
Theora libtheora
VP8 libvpx, libvpx-gitAUR
  • AV1 — AOMedia Video 1 (AV1) is successor codec to Google's VP9, Mozilla's Daala, Cisco's Thor.
https://aomediacodec.github.io/av1-spec/ || aom
  • Daala — New video compression technology. The effort is a collaboration between Mozilla Foundation, Xiph.Org Foundation and other contributors. The goal of the project is to provide a free to implement, use and distribute digital media format and reference implementation with technical performance superior to h.265.
https://www.xiph.org/daala/ || daala-gitAUR
  • libde265 — Open source implementation of the h.265 video codec.
https://github.com/strukturag/libde265 || libde265, libde265-gitAUR
  • libdv — The Quasar DV codec (libdv) is a software codec for DV video.
http://libdv.sourceforge.net/ || libdv
  • libmpeg2 — Library for decoding MPEG-1 and MPEG-2 video streams.
http://libmpeg2.sourceforge.net/ || libmpeg2
  • Schrödinger — Advanced royalty-free video compression format designed for a wide range of uses, from delivering low-resolution web content to broadcasting HD and beyond, to near-lossless studio editing.
http://diracvideo.org/ || schroedinger
  • Theora — Open video codec developed by the Xiph.org.
https://www.theora.org/ || libtheora
  • VP8 — High-quality, open video format for the web that's freely available to everyone.
https://www.webmproject.org || libvpx, libvpx-gitAUR
  • x264 — Free library for encoding H264/AVC video streams.
https://www.videolan.org/developers/x264.html || x264, x264-gitAUR
  • x265 — Open-source project and free application library for encoding video streams into the H.265/High Efficiency Video Coding (HEVC) format.
http://x265.org/ || x265 x265-hgAUR
  • Xvid — Open source MPEG-4 video codec.
https://www.xvid.org/ || xvidcore

Container format tools

See also Wikipedia:Comparison of video container formats.

  • MKVToolNix CLI — Set of tools to create, edit and inspect Matroska files.
https://mkvtoolnix.download/ || mkvtoolnix-cli, mkvtoolnix-gui
  • OGMtools — Information, extraction or creation for OGG media streams.
http://www.bunkus.org/videotools/ogmtools || ogmtools

Backends

GStreamer

From http://www.gstreamer.net/:

GStreamer is a library for constructing graphs of media-handling components. The applications supports range from simple Ogg/Vorbis playback, audio/video streaming to complex audio (mixing) and video (non-linear editing) processing.

Simply, GStreamer is a backend or framework utilized by many media applications. See GStreamer article.

xine

From http://www.xine-project.org/about:

xine is a free (gpl-licensed) high-performance, portable and reusable multimedia playback engine. xine itself is a shared library with an easy to use, yet powerful API which is used by many applications for smooth video playback and video processing purposes.

As an alternative to GStreamer, many media players can be configured to utilize the xine backend provided by xine-lib.

Note that the xine project itself provides a capable video player, xine-ui.

libavcodec

libavcodec is part of the FFmpeg project. It includes a large number of video and audio codecs. The libavcodec codecs are included with media players such as MPlayer and VLC, so you may not need to install the ffmpeg package itself.

Tips and tricks

Install MPlayer binary codecs

Tango-go-next.pngThis article or section is a candidate for moving to MPlayer.Tango-go-next.png

Notes: Belongs there. (Discuss in Talk:Codecs and containers#)

As an ultimate solution, you can try to install MPlayer binary codecs.

If you are not able to play some files go to http://www.mplayerhq.hu/design7/dload.html, read the instructions and install the codec you need to play your files.

They can also be found in the codecsAUR and codecs64AUR packages.

No H264, mpg4 or Musepack (.mpc) in Totem Player

If you see the "The H264 plugin is missing" warning with Totem media player, just install the Gstreamer libav library to fix it install gst-libav.