Media3 reports H.264 [email protected] as supported by a [email protected] hardware decoder
I maintainer di solito rispondono entro 5 giorni
@microkatz ci sta già lavorando.
Dal 6/11/2026.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 45/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Ambito
- backend, testing-qa
Direzione di ricerca
Start by tracing how Media3 evaluates AVC profile and level support when selecting a decoder; the issue names no source files or tests. Reproduce on the listed Android 9 device with the supplied avc1.640034 4K track, then inspect the capability check and related tests. Done means the track is no longer reported as supported by a decoder that declares [email protected] and highL52=false.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Version
Media3 1.11.1
More version details
Description
The device reports that its hardware AVC decoder supports H.264 [email protected], and the capability probe explicitly reports highL52=false. However, when playing a DASH video track encoded as H.264 [email protected] (avc1.640034, 3840x2160), Media3 reports the track as supported=YES, selects OMX.hisi.video.decoder.avc, and the decoder subsequently fails.
This results in no video output. The issue appears to be a capability mismatch: the format exceeds the decoder's declared profile/level capabilities, but the track is still reported as supported and the decoder is still initialized.
Relevant logs
The following excerpts are from one reproduction only (2026-11-05-20-46_log.txt):
11-05 20:46:44.059 14392 14392 I ExoCodecCaps: codec=OMX.hisi.video.decoder.avc decoder=true
11-05 20:46:44.064 14392 14392 I ExoCodecCaps: avcProbe 3840x2160=true 4k@24=true 4k@30=true 4k@60=false highL52=false
11-05 20:46:53.920 14392 14392 D EventLogger: [X] Track:0, id=video_120, mimeType=video/avc, container=video/mp4, bitrate=11220469, codecs=avc1.640034, res=3840x2160, supported=YES
11-05 20:46:55.318 14392 14864 W MediaCodecRenderer: Format exceeds selected codec's capabilities [id=video_120, mimeType=video/avc, container=video/mp4, bitrate=11214465, codecs=avc1.640034, res=3840x2160, color=BT709/Limited range/SDR SMPTE 170M/8/8, language=und, OMX.hisi.video.decoder.avc]
11-05 20:46:55.319 14392 14392 D EventLogger: videoDecoderInitialized [eventTime=2.17, mediaPos=0.00, window=0, period=0, OMX.hisi.video.decoder.avc]
11-05 20:47:29.031 14392 15025 E ExoPlayerImplInternal: u1.q: MediaCodecVideoRenderer error, index=2, format=Format(video_120, null, video/avc, avc1.640034, 23292769, und, [3840, 2160, -1.0, ColorInfo(BT709, Limited range, SDR SMPTE 170M, false, 8bit Luma, 8bit Chroma)], [-1, -1, -1]), format_supported=YES
11-05 20:47:29.031 14392 15025 E ExoPlayerImplInternal: Caused by: s2.i: Decoder failed: OMX.hisi.video.decoder.avc
11-05 20:47:29.063 14392 14392 E EventLogger: playerFailed [eventTime=3.03, mediaPos=1.87, window=0, period=0, errorCode=ERROR_CODE_DECODING_FAILED
Could this profile/level capability mismatch be handled before decoder initialization so that Media3 does not report the format as supported or select a decoder whose declared capabilities are insufficient?
Devices that reproduce the issue
- Huawei HWOSCA-550A / OSCA-550A
- Android 9 (API 28)
- Hardware decoder: OMX.hisi.video.decoder.avc
Devices that do not reproduce the issue
No response
Reproducible in the demo app?
Not tested
Reproduction steps
- Use Media3 1.11.1 on the device listed above.
- Play a DASH video track encoded as H.264 [email protected], codec string avc1.640034, resolution 3840x2160.
- Inspect the track support and decoder initialization logs.
- Observe that Media3 reports supported=YES, initializes OMX.hisi.video.decoder.avc, logs that the format exceeds the selected codec's capabilities, and then reports ERROR_CODE_DECODING_FAILED.
Expected result
A format whose H.264 profile/level exceeds the selected hardware decoder's declared capabilities should not be reported as supported by that decoder. Media3 should avoid selecting or initializing that decoder for the format, or classify it as unsupported so that an appropriate fallback path can be used.
Actual result
The H.264 [email protected] track is reported as supported=YES even though the decoder capability dump reaches [email protected] and reports highL52=false. Media3 selects and initializes OMX.hisi.video.decoder.avc, logs Format exceeds selected codec's capabilities, and the decoder fails with ERROR_CODE_DECODING_FAILED. No video is rendered.
Media
Not applicable. No public media URL is available. The issue is reproduced with the H.264 track described above (avc1.640034, 3840x2160).
Bug Report
- You will email the zip file produced by
adb bugreportto [email protected] after filing this issue.
- Lingua principale
- Java
- Stelle
- 3.1k
- Fork
- 1k
- Merge medio
- 7g 12h
- PR unite (30g)
- 5
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di androidx/media
-
CompositionPlayer.release() leaks its playback thread and FrameProcessor when no composition was setForse già presa @droid-girl l’ha presa 4 giorni fa. Apertaediting preview
Difficoltà 2/5 Mezza giornata Idoneità per principianti 62/100
androidx/media#3506 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 5 giorni
-
FragmentedMp4Extractor: mfra-indexed fMP4 with zero moov duration is seekable but reports C.TIME_UNSET durationForse già presa @snow2405 l’ha presa 1 giorno fa. Apertabug needs triage
androidx/media#3524 · 1 assegnatario ·
I maintainer di solito rispondono entro 5 giorni
-
bug needs triage
Difficoltà 4/5 3-5 giorni Idoneità per principianti 38/100
I maintainer di solito rispondono entro 5 giorni
-
playback iphone11 video very laggy in MTK chipsetsForse già presa @microkatz l’ha presa 2 giorni fa. Apertabug needs triage
androidx/media#3520 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 5 giorni
-
MultipleInputVideoGraph leaks the sync object passed to onInputFrameProcessed (file descriptor exhaustion on Adreno)Forse già presa @claincly l’ha presa 2 giorni fa. Apertaediting
androidx/media#3519 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 5 giorni
Tutte le issue di androidx/media
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
commons-app/apps-android-commons#7275 ·
I maintainer di solito rispondono entro 1 giorno
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
liberation-data/drivine4j#682 ·
I maintainer di solito rispondono entro 1 giorno
-
Document and enforce pull request review guidelinesForse già presa @dashorst l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
`Time.at(t, in: nil)` returns UTC instead of the local time (or the time zone of `t`), unlike CRubyAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
hermes-queue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 72/100
chrisalunlloyd2-sudo/mindpalace#349 ·
I maintainer di solito rispondono entro 1 giorno