-
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
Surface view returns empty output buffers #581
Comments
To clarify, does the demo app work on your device, or not? What device is it exactly, and what version of Android is it running? |
Almost not. Now I need mp4 playback, so demo app works if I use software decoder (OMX.google...) and it plays dizzy demo sample. If I try to play my own mp4 video, then exo player doesn't playback it. I wrote about my problem at #561. Also I've notised, that surface returns empty output buffers with this codec (if use surface with software codec, then buffers aew not sero-length). My test android version - 4.2.2, device is hd recever. I don't know if it Android CTS, but native Android Media Player plays all my mp4 videos well. |
Sounds like a bad device. What is the device model exactly? If you capture a bugreport with "adb bugreport" then it should provide a build fingerprint at the top of the file that includes the device model and exact OS build running on it. If the device is bad and it hasn't gone through CTS, then it's a problem that the hardware vendor needs to resolve, and you should report the issue to them. |
I've run bugreport command and have received at the top of file: Build: g18ref-usr 4.2.2 JDQ39 20150428 test-keys |
I'm confused that standard Media Player plays all my mp4 files well. |
As far as I'm aware this device has not passed CTS. Please let me know if you think differently. Note that it's possible for you to download and run CTS yourself on the device to see if it passes: https://source.android.com/compatibility/cts/index.html MediaPlayer is a different platform API than the ones that ExoPlayer makes use of. It's possible that the device manufacturer has implemented that API correctly, but not MediaCodec, which is what ExoPlayer relies on. |
Ok, thnk you, I'll try to run tests. But could you say me, what problems may be with surface or mediacodec, that I receive empty output buffers? |
The problem is likely just that the device hasn't implemented the platform APIs correctly. In which case it's not a problem with the application level code. |
Thank you very much for your response! |
Hi! I try to run demo app on my device and have this problem: codec.getOutputBuffers() returns buffer array with zero capacity of each element. And then dequeueOutputBuffer always returns -1. But if I put on configureCodec null instead of surface, capacity and limit parameters are set in output buffers. What problem may be?
The text was updated successfully, but these errors were encountered: