-
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
AudioTrack$StreamEventCallback NoClassDefFoundError #8058
Comments
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
I'm sorry, but don't really understand what you are asking. If you'd like to report an issue, please fill out the issue template completely and explain your problem in more detail. Thanks! |
sir i we play video get audio sink error
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Which Android version is your device running on? |
Samsung Galexy J5 Prime |
ver 8.0.0 |
This comment has been minimized.
This comment has been minimized.
Got the same issue, the |
This comment has been minimized.
This comment has been minimized.
@gelin I have no issue playing video in the ExoPlayer demo app with the Android TV emulator on SDK 26, nor do I have problems on an actual phone on SDK 23. Could you make sure to try a clean build and report detailed reproduction steps if the problem persists? |
yes sir i am also clean and rebuild project again got same problem. |
@tonihei, @hinditutorpoint points the issue. The video (and audio) in the demo app works correctly on SDK 26 emulator. But this error message about the absence of the I was confused by the HEVC (hvc1) codec, which looks like not supported by the emulator. I thought this error message in logs is the cause of the HEVC video playback failure. |
@krocard Can you have a look to see where this is coming from? |
@gelin but sir i check my real android Oreo phone 8.0 not emulator and when this project run on my old android which is kitkat |
I don't understand how this is possible ExoPlayer/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java Lines 1681 to 1682 in d386d03
and StreamEventCallbackV29 is only instantiated by registerStreamEventCallback :ExoPlayer/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java Lines 842 to 850 in d386d03
Which is only called if the AudioTrack is offload: ExoPlayer/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java Lines 631 to 632 in d386d03
Which requires API > 29: ExoPlayer/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java Lines 1502 to 1504 in d386d03
And only when so, will StreamEventCallbackV29 be created
Could ExoPlayer/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java Line 291 in d386d03
Or maybe it has to do with an optimisation (Progard?), as the stack trace is missing the call to DefaultAudioTrack constructor.
[Internal: This is similar to b/161961414] |
I can reproduce on the emulator (API 27).
What worked (no NoClassDefFoundError):
I will upload a fix. It boils down to instead of using a inner class that derive the callback as it is done now: ExoPlayer/library/core/src/main/java/com/google/android/exoplayer2/audio/DefaultAudioSink.java Lines 1681 to 1684 in d386d03
To instead use an inner class in a method:
I guess the JVM loads all the classes used (referenced and newed) by a class except for anonymous class? Definitely a puzzling behaviour. |
Interestingly, the same pattern that causes problem for |
Got any solution for this issue sir |
The issue is fixed by 230f4e5. |
@hinditutorpoint, in #8058 (comment) you seem to suggest that the issue is causing an application crash on your KitKat device. |
Thanks for fix this problem sir |
hi sir
i found an error please resolve this also have two more question first
File Url: http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4
i we this use this url work fine but this DefaultAudioSinkError alway
i m also same copy demo app
found error
The text was updated successfully, but these errors were encountered: