-
Notifications
You must be signed in to change notification settings - Fork 6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DecoderInitializationException with 48000Hz audio contents on a specific device #5821
Comments
I'm able to reproduce the problem with another Axon7 mini and it fails for any 48KHz stream. The reason seems to be that this device's aac decoder fails when trying to set the codec operating rate. We can fix this by adding a workaround for this device where we don't attempt to set this property as it's optional anyway. Can you tell us the Build.DEVICE and Build.MODEL values for your device? It might help us to see if there is any variation in these for better workaround targeting. When using ExoPlayer, you'll see a log line containing "ExoPlayerLib/2." which includes these values. |
We have an error report from a user where the same problem occurs. We don't log
|
Thanks!
According to https://support.google.com/googleplay/answer/1727131?hl=en-GB, there are 3 DEVICES ("msm8952_64", "tulip", "verdandi") for MODEL "ZTE B2017G" and, in addition, also "msm8952_64" for MODEL "AXON 7 mini" which is supposedly the same device. Confusingly, there is also a "tulip" DEVICE for the "Redmi Note 6 Pro" MODEL which is clearly not the same. The one where I reproduced the problem was a "msm8952_64"/ "ZTE B2017G". Given that, I will enable the workaround for MODEL = "ZTE B2017G" or "AXON 7 mini" as this seems to cover all variants of this device. |
Issue:#5821 PiperOrigin-RevId: 247621164
Issue:#5821 PiperOrigin-RevId: 247621164
[REQUIRED] Content description
I found that there is a specific device that cannot play 48000Hz sampling rate contents.
AXON7 mini ZTE B2017G
always throws an error "DecoderInitializationException" every time it tries to play 48000Hz sampling-rate contents.This device uses decoder "OMX.google.aac.decoder" for audio, and its
CodecCapabilities#getAudioCapabilities#.getSupportedSampleRateRanges()
contains48000
.Also, it only plays fine when the audio decoder is disabled. (Only video plays.)
My questions are
As far as I understand, "OMX.google.aac.decoder" is a software decoder and all the devices with "OMX.google.aac.decoder" decoder should fail to decode 48000Hz contents (like Nexus5, which also uses "OMX.google.aac.decoder" for audio) because there are no differences on the decoder aspect.
[REQUIRED] Link to test content
Sample URL
44100Hz sample (works on AXON7 mini ZTE B2017G): https://mock-stream-2.firebaseapp.com/44100hz/playlist.m3u8
48000Hz sample (not works on AXON7 mini ZTE B2017G): https://mock-stream-2.firebaseapp.com/48000hz/playlist.m3u8
[REQUIRED] Version of ExoPlayer being used
ExoPlayer Version: v2.9.6
[REQUIRED] Device(s) and version(s) of Android being used
Device: AXON7 mini ZTE B2017G
Android OS: 6.0.1
The text was updated successfully, but these errors were encountered: