Skip to content
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

Exoplayer cannot player a Widevine asset (it can be played on shaka player) #1456

Closed
hoimingw opened this issue Apr 21, 2016 · 3 comments
Closed

Comments

@hoimingw
Copy link

hoimingw commented Apr 21, 2016

I was trying to player a Widevine encrypted asset on Exoplayer but failed, please find the details below.

Exoplayer version: 1.5.7
Android device: Nexus 10

  1. It can be played on Shaka player 1.6.5
  2. The Exoplayer 1.5.7 can play the sample Widevine URL in the demo app.

The tested Widevine encrypted DASH asset can be downloaded from the following FTP server.
filename: dash_widevine.zip
username: hlit8448
password: 5jH62BU2

Please note that only the first few segments for each stream were uploaded. Please let me know if you want full content.

Console output of the emulator:

04-21 18:46:20.822 2495-2495/? I/art: Late-enabling -Xcheck:jni
04-21 18:46:20.954 2495-2521/com.google.android.exoplayer.demo D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true
04-21 18:46:20.959 2495-2495/com.google.android.exoplayer.demo D/Atlas: Validating map...
04-21 18:46:21.023 2495-2521/com.google.android.exoplayer.demo I/OpenGLRenderer: Initialized EGL, version 1.4
04-21 18:46:21.040 2495-2521/com.google.android.exoplayer.demo D/OpenGLRenderer: Enabling debug mode 0
04-21 18:46:21.044 2495-2521/com.google.android.exoplayer.demo D/mali_winsys: new_window_surface returns 0x3000
04-21 18:46:21.589 2495-2495/com.google.android.exoplayer.demo I/Choreographer: Skipped 30 frames!  The application may be doing too much work on its main thread.
04-21 18:46:24.032 2495-2521/com.google.android.exoplayer.demo D/mali_winsys: new_window_surface returns 0x3000
04-21 18:46:25.607 2495-2495/com.google.android.exoplayer.demo I/ExoPlayerImpl: Init 1.5.7
04-21 18:46:25.615 2495-2495/com.google.android.exoplayer.demo D/EventLogger: start [0]
04-21 18:46:25.615 2495-2495/com.google.android.exoplayer.demo D/EventLogger: state [0.00, false, P]
04-21 18:46:25.625 2495-2495/com.google.android.exoplayer.demo D/EventLogger: state [0.01, true, P]
04-21 18:46:25.683 2495-2521/com.google.android.exoplayer.demo D/mali_winsys: new_window_surface returns 0x3000
04-21 18:46:25.908 2495-2613/com.google.android.exoplayer.demo W/VideoCapabilities: Unrecognized profile/level 32768/2 for video/mp4v-es
04-21 18:46:25.935 2495-2613/com.google.android.exoplayer.demo W/VideoCapabilities: Unrecognized profile/level 32768/2 for video/mp4v-es
04-21 18:46:25.968 2495-2613/com.google.android.exoplayer.demo I/VideoCapabilities: Unsupported profile 4 for video/mp4v-es
04-21 18:46:25.987 2495-2495/com.google.android.exoplayer.demo D/EventLogger: availableRange [true, 0, 647018666]
04-21 18:46:25.998 2495-2495/com.google.android.exoplayer.demo D/EventLogger: state [0.38, true, B]
04-21 18:46:26.013 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [0.40, 853, 0.00, 3412000]
04-21 18:46:26.019 2495-2495/com.google.android.exoplayer.demo D/EventLogger: audioFormat [0.40, stream_1, 2]
04-21 18:46:26.097 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [0.48, 37479, 0.04, 6814363]
04-21 18:46:26.689 2495-2638/com.google.android.exoplayer.demo I/OMXClient: Using client-side OMX mux.
04-21 18:46:26.736 2495-2495/com.google.android.exoplayer.demo D/EventLogger: decoderInitialized [1.12, OMX.google.aac.decoder]
04-21 18:46:26.742 2495-2495/com.google.android.exoplayer.demo D/EventLogger: state [1.13, true, R]
04-21 18:46:26.753 2495-2495/com.google.android.exoplayer.demo D/EventLogger: state [1.14, true, B]
04-21 18:46:26.778 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [1.16, 25861, 0.01, 6814363]
04-21 18:46:26.826 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [1.21, 25978, 0.02, 12989000]
04-21 18:46:26.880 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [1.26, 24395, 0.01, 12989000]
04-21 18:46:26.925 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [1.31, 25949, 0.01, 13839466]
04-21 18:46:26.970 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [1.36, 24039, 0.02, 12989000]
04-21 18:46:27.031 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [1.42, 26002, 0.02, 12989000]
04-21 18:46:27.081 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [1.47, 25918, 0.01, 12989000]
04-21 18:46:27.130 2495-2495/com.google.android.exoplayer.demo D/EventLogger: bandwidth [1.52, 24294, 0.02, 12989000]
04-21 18:46:27.850 2495-2613/com.google.android.exoplayer.demo E/ExoPlayerImplInternal: Internal track renderer error.
                                                                                        com.google.android.exoplayer.ExoPlaybackException: android.media.MediaCodec$CryptoException: Unknown Error
                                                                                            at com.google.android.exoplayer.MediaCodecTrackRenderer.feedInputBuffer(MediaCodecTrackRenderer.java:704)
                                                                                            at com.google.android.exoplayer.MediaCodecTrackRenderer.doSomeWork(MediaCodecTrackRenderer.java:513)
                                                                                            at com.google.android.exoplayer.SampleSourceTrackRenderer.doSomeWork(SampleSourceTrackRenderer.java:129)
                                                                                            at com.google.android.exoplayer.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:434)
                                                                                            at com.google.android.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:213)
                                                                                            at android.os.Handler.dispatchMessage(Handler.java:98)
                                                                                            at android.os.Looper.loop(Looper.java:135)
                                                                                            at android.os.HandlerThread.run(HandlerThread.java:61)
                                                                                            at com.google.android.exoplayer.util.PriorityHandlerThread.run(PriorityHandlerThread.java:40)
                                                                                         Caused by: android.media.MediaCodec$CryptoException: Unknown Error
                                                                                            at android.media.MediaCodec.native_queueSecureInputBuffer(Native Method)
                                                                                            at android.media.MediaCodec.queueSecureInputBuffer(MediaCodec.java:956)
                                                                                            at com.google.android.exoplayer.MediaCodecTrackRenderer.feedInputBuffer(MediaCodecTrackRenderer.java:694)
                                                                                            at com.google.android.exoplayer.MediaCodecTrackRenderer.doSomeWork(MediaCodecTrackRenderer.java:513) 
                                                                                            at com.google.android.exoplayer.SampleSourceTrackRenderer.doSomeWork(SampleSourceTrackRenderer.java:129) 
                                                                                            at com.google.android.exoplayer.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:434) 
                                                                                            at com.google.android.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:213) 
                                                                                            at android.os.Handler.dispatchMessage(Handler.java:98) 
                                                                                            at android.os.Looper.loop(Looper.java:135) 
                                                                                            at android.os.HandlerThread.run(HandlerThread.java:61) 
                                                                                            at com.google.android.exoplayer.util.PriorityHandlerThread.run(PriorityHandlerThread.java:40) 
04-21 18:46:27.850 2495-2495/com.google.android.exoplayer.demo E/EventLogger: internalError [2.23, cryptoError]
                                                                              android.media.MediaCodec$CryptoException: Unknown Error
                                                                                  at android.media.MediaCodec.native_queueSecureInputBuffer(Native Method)
                                                                                  at android.media.MediaCodec.queueSecureInputBuffer(MediaCodec.java:956)
                                                                                  at com.google.android.exoplayer.MediaCodecTrackRenderer.feedInputBuffer(MediaCodecTrackRenderer.java:694)
                                                                                  at com.google.android.exoplayer.MediaCodecTrackRenderer.doSomeWork(MediaCodecTrackRenderer.java:513)
                                                                                  at com.google.android.exoplayer.SampleSourceTrackRenderer.doSomeWork(SampleSourceTrackRenderer.java:129)
                                                                                  at com.google.android.exoplayer.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:434)
                                                                                  at com.google.android.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:213)
                                                                                  at android.os.Handler.dispatchMessage(Handler.java:98)
                                                                                  at android.os.Looper.loop(Looper.java:135)
                                                                                  at android.os.HandlerThread.run(HandlerThread.java:61)
                                                                                  at com.google.android.exoplayer.util.PriorityHandlerThread.run(PriorityHandlerThread.java:40)
04-21 18:46:27.859 2495-2495/com.google.android.exoplayer.demo E/EventLogger: playerFailed [2.24]
                                                                              com.google.android.exoplayer.ExoPlaybackException: android.media.MediaCodec$CryptoException: Unknown Error
                                                                                  at com.google.android.exoplayer.MediaCodecTrackRenderer.feedInputBuffer(MediaCodecTrackRenderer.java:704)
                                                                                  at com.google.android.exoplayer.MediaCodecTrackRenderer.doSomeWork(MediaCodecTrackRenderer.java:513)
                                                                                  at com.google.android.exoplayer.SampleSourceTrackRenderer.doSomeWork(SampleSourceTrackRenderer.java:129)
                                                                                  at com.google.android.exoplayer.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:434)
                                                                                  at com.google.android.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:213)
                                                                                  at android.os.Handler.dispatchMessage(Handler.java:98)
                                                                                  at android.os.Looper.loop(Looper.java:135)
                                                                                  at android.os.HandlerThread.run(HandlerThread.java:61)
                                                                                  at com.google.android.exoplayer.util.PriorityHandlerThread.run(PriorityHandlerThread.java:40)
                                                                               Caused by: android.media.MediaCodec$CryptoException: Unknown Error
                                                                                  at android.media.MediaCodec.native_queueSecureInputBuffer(Native Method)
                                                                                  at android.media.MediaCodec.queueSecureInputBuffer(MediaCodec.java:956)
                                                                                  at com.google.android.exoplayer.MediaCodecTrackRenderer.feedInputBuffer(MediaCodecTrackRenderer.java:694)
                                                                                  at com.google.android.exoplayer.MediaCodecTrackRenderer.doSomeWork(MediaCodecTrackRenderer.java:513) 
                                                                                  at com.google.android.exoplayer.SampleSourceTrackRenderer.doSomeWork(SampleSourceTrackRenderer.java:129) 
                                                                                  at com.google.android.exoplayer.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:434) 
                                                                                  at com.google.android.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:213) 
                                                                                  at android.os.Handler.dispatchMessage(Handler.java:98) 
                                                                                  at android.os.Looper.loop(Looper.java:135) 
                                                                                  at android.os.HandlerThread.run(HandlerThread.java:61) 
                                                                                  at com.google.android.exoplayer.util.PriorityHandlerThread.run(PriorityHandlerThread.java:40) 
04-21 18:46:27.894 2495-2521/com.google.android.exoplayer.demo D/mali_winsys: new_window_surface returns 0x3000
04-21 18:46:27.904 2495-2495/com.google.android.exoplayer.demo D/EventLogger: state [2.29, true, I]
@ojw28
Copy link
Contributor

ojw28 commented Apr 21, 2016

Please provide all of the information requested in the issue template. Specifically, we require a full bug report. Please file a new issue with complete information. Thanks.

@ojw28 ojw28 closed this as completed Apr 21, 2016
@giladna
Copy link

giladna commented Jun 2, 2016

Hi Olly,
We face the same MediaCodec$CryptoException on v1.5.8

Sending detailed information via email

10x
Gilad

@biwoodfengs
Copy link

biwoodfengs commented Dec 29, 2016

I meet this issue too, and I compare with the normal video , finally I found that the issued video's format profile is 3.2 while the normal video's format is 3.1 , may sometimes there is a bug with this.

@google google locked and limited conversation to collaborators Jun 28, 2017
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants