Audio
簡表
- Audio
- Lossy Compression
MP3
WMA
Vorbis
Opus
AAC
AC-3
DTS
- No Compression
PCM
LPCM
- Lossless Compression
FLAC
ALAC
MLP/Dolby TrueHD
DTS-HD
- Video
MPEG-1
MPEG-2
MPEG-4 (A)SP
H.264/MPEG-4 AVC
H.265/HEVC
VC-1/WMV
Real Video
Theora
Microsoft MPEG4 V2
VP8
VP9
MVC
AV1
- Subtitle
MicroDVD
MPEG-4 Timed Text
MPSub
SAMI
SubRip
SSA (SubStation Alpha)
SubViewer
Universal Subtitle Format
VobSub
XSUB
介紹
- Audio compression
- ISO/IEC
MP3 (MPEG-1 Layer III)
AAC
…
- ITU-T
G.711
…
- IETF
Opus
iLBC
- 3GPP
AMR
…
- 其他
ALAC
FLAC
…
- Containers
- ISO/IEC
MPEG-ES
MPEG-TS
MJPEG (Motion JPEG)
MP4 (MPEG-4 Part 14)
…
- ITU-T
H.222.0
…
- IETF
RTP
- 其他
AVI
Ogg
WAV
…
音訊取樣 (Audio Sample)
型別:
s
(signed integer),u
(unsigned integer),f
(float)bit 數量:
16
,24
,32
,64
Endian:
be
(big endian),le
(little endian)
$ ffmpeg -hide_banner -formats | rg PCM
DE alaw PCM A-law
DE f32be PCM 32-bit floating-point big-endian
DE f32le PCM 32-bit floating-point little-endian
DE f64be PCM 64-bit floating-point big-endian
DE f64le PCM 64-bit floating-point little-endian
DE mulaw PCM mu-law
DE s16be PCM signed 16-bit big-endian
DE s16le PCM signed 16-bit little-endian
DE s24be PCM signed 24-bit big-endian
DE s24le PCM signed 24-bit little-endian
DE s32be PCM signed 32-bit big-endian
DE s32le PCM signed 32-bit little-endian
DE s8 PCM signed 8-bit
DE u16be PCM unsigned 16-bit big-endian
DE u16le PCM unsigned 16-bit little-endian
DE u24be PCM unsigned 24-bit big-endian
DE u24le PCM unsigned 24-bit little-endian
DE u32be PCM unsigned 32-bit big-endian
DE u32le PCM unsigned 32-bit little-endian
DE u8 PCM unsigned 8-bit
DE vidc PCM Archimedes VIDC
MP3
AAC (Advanced Audio Coding)
規範列表:
MPEG-2 AAC
MPEG-4 AAC
HE-AAC
HE-AAC V2
1997 年 4 月, MPEG-2 AAC 壓縮演算法成為了規範, 其中應用了當時的一些新 spectrum processing 和壓縮工具 (例如 temporal noise shaping (TNS)), 和先前的音訊壓縮演算法相比有顯著的品質提昇和優異的壓縮率, 因此可以在 encoded bitstreams 內達到較低的 bit rate, 這規範也漸漸地成為 broadcasting、internet services、mobile applications 的常見選擇。
1999 年, MPEG-4 AAC 基於 MPEG-2 AAC 發展更多的能力, 同時也維持良好的向下相容。 這個新規範改善了 scalability、error resilience 和新增一些 spectral processing 能力 (例如 Perceptual Noise Substitution (PNS)、Long-Term Predictor (LTP)), 因此如果使用這些新功能的話, MPEG-2 AAC Decoder 會不能處理 MPEG-4 AAC, 但是 MPEG-4 AAC Decoder 仍然可以處理 MPEG-2 AAC bitstreams。
2003 年, 新增了 High Efficiency AAC (HE-AAC)規範, 這規範擴充了 AAC 演算法, 改進了在 low bit-rate 應用程式上的編碼效能。 HE-AAC 採用了新的工具叫 Spectral Band Replication (SBR), 可以藉由 low-frequency band data 和一些額外資訊來重新建立 high-frequency band data。
2004 年, 新增了 HE-AAC V2, 在 SBR 的基礎上利用了 Parametric Stereo (PS), 可以藉由 monaural downmixed signals 和 limited number of additional stereo parameters 來重新建立 stereo audio signals。
在 AAC 規範中, 保留了一些針對不同應用程式和環境客製化的空間, 因此可以適用到許多不一樣的使用情境, 這些客製化的選擇稱為 Profiles (在 MPEG-2 中)或 Audio Object Types (在 MPEG-4 中)。
ADTS (Audio Data Transport Stream)
ADIF 和 ADTS 這兩個 ACC 格式定義在 MPEG-2 Part 7, 是原本的 Transport 和儲存的格式, MPEG-4 引進了兩個新的格式 LATM 和 LOAS, 這兩個新格式不只可以儲存傳統的 AAC, 也支援較新的變種(例如 AAC-LD 和 AAC-ELD)。
ADTS 跟 ADIF 比起來是比較常被使用的格式。
ADIF (Audio Data Interchange Format)
Overhead 最小的 AAC 格式, 不支援 Random Access, 較少使用。
LATM (Low-overhead MPEG-4 Audio Transport Multiplex)
會用於傳輸 HE-AAC V2(不包含 LOAS Sync Layer)。
LOAS (Low Overhead Audio Stream)
為 LATM 加上 Sync 資訊, 支援 Random Access 或略過部份資訊, 用於 AAC-LD 的 Bitstream 格式, 和利用 MPEG-2 Transport Stream 傳輸 AAC 時。
MPEG-2 Transport Stream
內含 ADTS 或 LOAS 或 MPEG-4 Sync Layer Stream 的 PES 封包。
RFC 3016
藉由 RTP 封包來傳輸 MPEG-4 Audio LATM 或是 MPEG-4 Video。
RFC 3640
藉由 RTP 封包來傳輸 MPEG-4 Elementary Stream
MP4FF (MP4 File Format)
Audio 和 Video 的儲存格式。
3GP File Format
類似 MP4FF, 但是支援非 MPEG 的 codec, 例如 H.263 和 GSM-AMR。
License 和 Patents
Opus
是一種開放格式, 使用上沒有任何專利限制。
Opus 1.3: