Tento dokument popisuje podporu kodeků médií, kontejnerů a síťových protokolů poskytovanou platformou Android.
Následující tabulky popisují podporu formátů médií integrovanou do platformy Android. ANO znamená, že formát je k dispozici ve všech verzích systému Android. Pokud je uvedena konkrétní platforma Android, je formát dostupný pro tuto verzi a všechny pozdější verze. Formát může být k dispozici i v dřívějších verzích, ale není to zaručeno.
Všimněte si, že konkrétní mobilní zařízení může podporovat další formáty nebo typy souborů, které nejsou uvedeny v těchto tabulkách. Kromě toho, pokud používáteMediaCodecpřímo, můžete přistupovat k jakémukoli z dostupných formátů médií bez ohledu na podporované typy souborůa formáty kontejnerů.
Podpora zvuku
Formát | Enkodér | Dekodér | Detaily | Typy souborů Formáty kontejnerů |
---|---|---|---|---|
AAC LC | Ano | Ano | Podpora mono/stereo/5.0/5.1obsahu se standardní vzorkovací frekvencí od 8 do 48 kHz. | – 3GPP (.3gp) – MPEG-4 (.mp4, .m4a) – ADTS raw AAC (.aac, dekódování v Android 3.1+, kódování v Android 4.0+, ADIF není podporován) – MPEG-TS (.ts, nelze zobrazit, Android 3.0+) |
HE-AACv1 (AAC+) | Android 4.1+ | ANO | ||
HE-AACv2 (enhanced AAC+) | ANO | Podpora stereo/5.0/5.1obsahu se standardní vzorkovací frekvencí od 8 do 48 kHz. | ||
xHE-AAC | Android 9+ | Podpora až 8kanálového obsahu se standardní vzorkovací frekvencí od 8 do 48 kHz | ||
AAC ELD (enhanced low delay AAC) | Android 4.1+ | Android 4.1+ | Podpora mono/stereo obsahu se standardní vzorkovací frekvencí 16 až 48 kHz | |
AMR-NB | Ano | Ano | 4.75 až 12,2 kb/s se vzorkováním @ 8 kHz | – 3GPP (.3gp) – AMR (.amr) |
AMR-WB | YES | YES | 9 rychlostí od 6.60 kbit/s až 23,85 kbit/s se vzorkováním při 16 kHz | |
FLAC | Android 4.1+ | Android 3.1+ | Mono/Stereo (bez multikanálu). Vzorkovací frekvence až 48 kHz (ale u zařízení s výstupem 44,1 kHz se doporučuje až 44,1 kHz, protože sampler 48 až 44,1 kHz neobsahuje dolnopropustný filtr). Doporučeno 16 bitů;u 24 bitů se nepoužívá dither. | – FLAC (.flac) – MPEG-4 (.mp4, .m4a, Android 10+) |
MIDI | Ano | MIDI typ 0 a 1. DLS verze 1 a 2. XMF a mobilní XMF. Podpora formátů vyzvánění RTTTL/RTX, OTA a iMelody | – Typ 0 a 1 (.mid, .xmf, .mxmf) – RTTTL/RTX (.rtttl, .rtx) – OTA (.ota) – iMelody (.imy) |
|
MP3 | YES | Mono/Stereo 8-320Kbps konstantní (CBR) nebo variabilní bitová rychlost (VBR) | – MP3 (.mp3) – MPEG-4 (.mp4, .m4a, Android 10+) – Matroska (.mkv, Android 10+) |
|
Opus | Android 10+ | Android 5.0+ | – Ogg (.ogg) – Matroska (.mkv) |
|
PCM/WAVE | Android 4.1+ | Ano | 8- a 16bitový lineární PCM (rychlost do limitu hardwaru). Vzorkovací frekvence pro surové nahrávky PCM při 8000, 16000 a 44100 Hz. | WAVE (.wav) |
Vorbis | YES | – Ogg (.ogg) – Matroska (.mkv, Android 4.0+) – MPEG-4 (.mp4, .m4a, Android 10+) |
Podpora videa
Videoformáty
Formát | Encoder | Dekodér | Detaily | Typy souborů Formáty kontejnerů |
---|---|---|---|---|
H.263 | Ano | Ano | Podpora H.263 je v systému Android 7.0+ volitelná | – 3GPP (.3gp) – MPEG-4 (.mp4) – Matroska (.mkv) |
H.264 AVC Baseline Profile (BP) |
Android 3.0+ | YES | – 3GPP (.3gp) – MPEG-4 (.mp4) – MPEG-TS (.ts, pouze zvuk AAC, nelze zobrazit, Android 3.0+) – Matroska (.mkv) |
|
H.264 AVC Hlavní profil (MP) |
Android 6.0+ | Ano | Dekodér je vyžadován, kodér je doporučen. | |
H.265 HEVC | Android 5.0+ | Hlavní profil úrovně 3 pro mobilní zařízení a hlavní profil úrovně 4.1 pro Android TV | – MPEG-4 (.mp4) – Matroska (.mkv) |
|
MPEG-4 SP | Ano | 3GPP (.3gp) | ||
VP8 | Android 4.3+ | Android 2.3.3+ | Streamovatelný pouze v Androidu 4.0 a vyšším | – WebM (.webm) – Matroska (.mkv, Android 4.0+) |
VP9 | Android 4.4+ | – WebM (.webm) – Matroska (.mkv) |
||
AV1 | Android 10+ | Dekodér je volitelný. | – MPEG-4 (.mp4) – Matroska (.mkv) |
Doporučení pro kódování videa
Následující tabulka uvádí profily a parametry kódování videa v rámci systému Android Media Frameworkdoporučené pro přehrávání pomocí H.264. Baseline Profile kodeku. Stejná doporučení platí i pro kodek Main Profile, který je k dispozici pouze v systému Android 6.0 a novějším.
SD (nízká kvalita) | SD (vysoká kvalita) | HD 720p (Nepoužije se u všech. zařízení) | |
---|---|---|---|
Rozlišení videa | 176 x 144 px | 480 x 360 px | 1280 x 720 px |
Snímková frekvence videa | 12 snímků za sekundu | 30 snímků za sekundu | 30 snímků za sekundu |
Video bitrate | 56 Kbps | 500 Kbps | 2 Mbps |
Audio codec | AAC-LC | AAC-LC | AAC-LC |
Audio kanály | 1 (mono) | 2 (stereo) | 2 (stereo) |
Audio bitrate | 24 Kbps | 128 Kbps | 192 Kbps |
Níže uvedená tabulka uvádí profily a parametry kódování videa v rámci systému Android media frameworkdoporučené pro přehrávání pomocí kodeku VP8.
SD (nízká kvalita) | SD (vysoká kvalita) | HD 720p (N/A na všech zařízeních) | HD 1080p (N/A na všech zařízeních) | |
---|---|---|---|---|
Rozlišení videa | 320 x 180 px | 640 x 360 px | 1280 x 720 px | 1920 x 1080 px |
Snímková frekvence videa | 30 fps | 30 fps | 30 fps | 30 fps |
Video bitrate | 800 Kbps | 2 Mbps | 4 Mbps | 10 Mbps |
Doporučení pro dekódování videa
Implementace zařízení musí podporovat dynamické přepínání rozlišení videa a snímkové frekvence prostřednictvím standardního rozhraní API Android v rámci stejného toku pro všechny VP8, VP9, H.264, a H.265 v reálném čase a až do maximálního rozlišení podporovaného jednotlivými kodeky v zařízení.
Implementace podporující dekodér Dolby Vision se musí řídit těmito pokyny:
- Poskytnout extraktor podporující Dolby Vision.
- Vhodně zobrazit obsah Dolby Vision na obrazovce zařízení nebo na standardním výstupním video portu (např. HDMI).
- Nastavte index stopy zpětně kompatibilní základní vrstvy (pokud je přítomna) tak, aby byl stejný jako index stopy kombinované vrstvy Dolby Vision.
Požadavky na streamování videa
Pro video obsah, který je streamován přes HTTP nebo RTSP, existují další požadavky:
- Pro kontejnery 3GPP a MPEG-4 musí atom
moov
předcházet všem atomůmmdat
, ale musí následovat po atomuftyp
. - U kontejnerů 3GPP, MPEG-4 a WebM nesmí být zvukové a obrazové vzorky odpovídající stejnému časovému posunu od sebe vzdáleny více než 500 KB. Chcete-li tento posun zvuku/videa minimalizovat, zvažte prokládání zvuku a videa v menších kouscích.
Podpora obrázků
Formát | Encoder | Dekodér | Detaily | Typy souborů Formáty kontejnerů |
---|---|---|---|---|
BMP | Ano | BMP (.bmp) | ||
GIF | YES | GIF (.gif) | ||
JPEG | YES | YES | Base+progressive | JPEG (.jpg) |
PNG | Ano | Ano | PNG (.png) | |
WebP | Android 4.0+ Bezztrátový: Android 10+ Transparentnost: Android 4.2.1+ |
Android 4.0+ Bezztrátový: |
Bezztrátového kódování lze u systému Android 10 dosáhnout pomocí kvality 100. | WebP (.webp) |
HEIF | Android 8.0+ | HEIF (.heic; .heif) |
Síťové protokoly
Pro přehrávání zvuku a videa jsou podporovány následující síťové protokoly:
- RTSP (RTP, SDP)
- HTTP/HTTPS progressive streaming
- HTTP/HTTPS live streaming draft protocol:
- Pouze mediální soubory MPEG-2 TS
- Verze protokolu 3 Android 4.0 a vyšší
- Verze protokolu 2 Android 3.x
- Není podporován před Androidem 3.0
Poznámka: HTTPS není podporován před Androidem 3.1.
.