Dette dokument beskriver den understøttelse af mediecodec, container og netværksprotokol, der leveres af Android-platformen.
Tabellerne nedenfor beskriver den understøttelse af medieformater, der er indbygget i Android-platformen. YES betyder, at formatet er tilgængeligt på alle Android-versioner. Når der er angivet en specifik Android-platform, er formatet tilgængeligt for den pågældende version og alle senere versioner. Formatet kan også være tilgængeligt i tidligere versioner, men dette er ikke garanteret.
Bemærk, at en bestemt mobilenhed kan understøtte yderligere formater eller filtyper, som ikke er opført i disse tabeller. Hvis du bruger enMediaCodecdirectly, kan du desuden få adgang til alle de tilgængelige medieformater uanset de understøttede filtyper og containerformater.
Audiounderstøttelse
Format | Encoder | Decoder | Detaljer | Filtyper Filformater |
||
---|---|---|---|---|---|---|
AAC LC | Ja | Ja | Ja | Understøttelse af mono/stereo/5.0/5.1indhold med standard samplingfrekvenser fra 8 til 48 kHz. | – 3GPP (.3gp) – MPEG-4 (.mp4, .m4a) – ADTS raw AAC (.aac, decode i Android 3.1+, encode i Android 4.0+, ADIF ikke understøttet) – MPEG-TS (.ts, ikke sekable, Android 3.0+) |
|
HE-AACv1 (AAC+) | Android 4.1+ | Ja | ||||
HE-AACv2 (forbedret AAC+) | Ja | Understøttelse af stereo/5.0/5.1indhold med standard samplingfrekvenser fra 8 til 48 kHz. | ||||
xHE-AAC | Android 9+ | Støtte til op til 8-kanals indhold med standard samplingfrekvenser fra 8 til 48 kHz | ||||
AAC ELD (forbedret AAC med lav forsinkelse) | Android 4.1+ | Android 4.1+ | Støtte til mono/stereo-indhold med standard samplingfrekvenser fra 16 til 48 kHz | |||
AMR-NB | YES | YES | YES | 4.75 til 12,2 kbps samplet @ 8kHz | – 3GPP (.3gp) – AMR (.amr) |
|
AMR-WB | Ja | Ja | Ja | 9 hastigheder fra 6.60 kbit/s til 23,85 kbit/s samplet @ 16kHz | ||
FLAC | Android 4.1+ | Android 3.1+ | Mono/Stereo (ingen multikanaler). Samplingfrekvenser op til 48 kHz (men op til 44,1 kHz anbefales på enheder med 44,1 kHz-udgang, da 48 til 44,1 kHzdownsampleren ikke omfatter et lavpasfilter). 16-bit anbefales; ingen dither anvendes til 24-bit. | – FLAC (.flac) – MPEG-4 (.mp4, .m4a, Android 10+) |
||
MIDI | YES | MIDI Type 0 og 1. DLS Version 1 og 2. XMF og Mobile XMF. Understøttelse af ringetoneformater RTTTL/RTX, OTA og iMelody | – Type 0 og 1 (.mid, .xmf, .mxmf) – RTTTL/RTX (.rtttl, .rtx) – OTA (.ota) – iMelody (.imy) |
|||
MP3 | YES | Mono/Stereo 8-320Kbps konstant (CBR) eller variabel bit-rate (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+ | YES | 8- og 16-bit lineær PCM (hastigheder op til begrænsningen af hardware). Samplingrater for rå PCM-optagelser ved 8000, 16000 og 44100 Hz. | WAVE (.wav) | ||
Vorbis | YES | – Ogg (.ogg) – Matroska (.mkv, Android 4.0+) – MPEG-4 (.mp4, .m4a, Android 10+) |
Videounderstøttelse
Videoformater
Format | Encoder | Decoder | Detaljer | Filtyper Containerformater |
||
---|---|---|---|---|---|---|
H.263 | Ja | Ja | Ja | Støtte til H.263 er valgfri i Android 7.0+ | – 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, kun AAC-lyd, ikke søgbar, Android 3.0+) – Matroska (.mkv) |
|||
H.264 AVC Main Profile (MP) |
Android 6.0+ | Ja | Dekoderen er påkrævet, enkoderen anbefales. | |||
H.265 HEVC | Android 5.0+ | Main Profile Level 3 for mobile enheder og Main Profile Level 4.1 for Android TV | – MPEG-4 (.mp4) – Matroska (.mkv) |
|||
MPEG-4 SP | Ja | 3GPP (.3gp) | ||||
VP8 | Android 4.3+ | Android 2.3.3.3+ | Streambar kun i Android 4.0 og derover | – WebM (.webm) – Matroska (.mkv, Android 4.0+) |
||
VP9 | Android 4.4+ | – WebM (.webm) – Matroska (.mkv) |
||||
AV1 | Android 10+ | Den dekoder er valgfri. | – MPEG-4 (.mp4) – Matroska (.mkv) |
Anbefalinger for videokodning
Tabellen nedenfor viser de Android media framework-videokodningsprofiler og parametre, der anbefales til afspilning ved hjælp af H.264 Baseline Profile-codec. De samme anbefalinger gælder for Main Profile-codec’et, som kun er tilgængeligt i Android 6.0 og senere.
SD (lav kvalitet) | SD (høj kvalitet) | HD 720p (N/A på alle enheder) | |
---|---|---|---|
Videoopløsning | 176 x 144 px | 480 x 360 px | 1280 x 720 px |
Videobilledfrekvens | 12 fps | 30 fps | 30 fps |
Videobitrate | 56 Kbps | 500 Kbps | 2 Mbps |
Audio codec | AAC-LC | AAC-LC | AAC-LC |
Audiokanaler | 1 (mono) | 2 (stereo) | 2 (stereo) |
Audio bitrate | 24 Kbps | 128 Kbps | 192 Kbps |
Tabellen nedenfor viser de Android media framework-videokodningsprofiler og parametre, der anbefales til afspilning ved hjælp af VP8-mediecodec.
SD (lav kvalitet) | SD (høj kvalitet) | HD 720p (N/A på alle enheder) | HD 1080p (N/A på alle enheder) | ||
---|---|---|---|---|---|
Videoopløsning | 320 x 180 px | 640 x 360 px | 1280 x 720 px | 1920 x 1080 px | |
Videobilledfrekvens | 30 fps | 30 fps | 30 fps | 30 fps | |
Video bitrate | 800 Kbps | 2 Mbps | 4 Mbps | 4 Mbps | 10 Mbps |
Anbefalinger for videoafkodning
Enhedsimplementeringer skal understøtte dynamisk videoopløsning og skift af billedfrekvens via standardAndroid API’er inden for den samme strøm for alle VP8, VP9, H.264, og H.265-codecs i realtid og op til den maksimale opløsning, der understøttes af hvert codec på enheden.
Implementeringer, der understøtter Dolby Vision-dekoderen, skal følge disse retningslinjer:
- Sørg for en Dolby Vision-kompatibel ekstraktor.
- Visér Dolby Vision-indhold korrekt på enhedens skærm eller på en standardvideoudgangsport (f.eks. HDMI).
- Sæt sporindekset for bagudkompatible basislag (hvis de er til stede) til at være det samme som det kombinerede Dolby Vision-lagets sporindeks.
Krav til videostreaming
For videoindhold, der streames over HTTP eller RTSP, er der yderligere krav:
- For 3GPP- og MPEG-4-containere skal
moov
-atomet gå forud for allemdat
-atomer, men skal følge efterftyp
-atomet. - For 3GPP-, MPEG-4- og WebM-containere må audio- og videoeksempler, der svarer til den samme tidsforskydning, ikke være mere end 500 KB fra hinanden. For at minimere denne lyd/videoafvigelse kan du overveje at interleave lyd og video i mindre chunk-størrelser.
Billedunderstøttelse
Format | Encoder | Decoder | Detaljer | Filtyper Filformater |
|||
---|---|---|---|---|---|---|---|
BMP | YES | BMP (.bmp) | |||||
GIF | YES | GIF (.gif) | |||||
JPEG | YES | YES | YES | Base+progressiv | JPEG (.jpg) | ||
PNG | Ja | Ja | PNG (.png) | ||||
WebP | Android 4.0+ Løs: Android 10+ Transparens: Android 4.2.1+ |
Android 4.0+ Transparens: Android 4.2.1+ |
Android 4.0+ Lossless: Android 4.2.1+ Transparens: Android 4.2.1+ Transparens: Android 4.2.1+ |
Lossless-kodning kan opnås på Android 10 med en kvalitet på 100. | WebP (.webp) | ||
HEIF | Android 8.0+ | HEIF (.heic; .heif) |
Netværksprotokoller
Følgende netværksprotokoller understøttes til afspilning af lyd og video:
- RTSP (RTP, SDP)
- HTTP/HTTPS progressiv streaming
- HTTP/HTTPS live streaming udkast til protokol:
- KunMPEG-2 TS-mediefiler
- Protokolversion 3 Android 4.0 og derover
- Protokolversion 2 Android 3.x
- Understøttes ikke før Android 3.0
Bemærk: HTTPS understøttes ikke før Android 3.1.