ExoPlayer icon indicating copy to clipboard operation
ExoPlayer copied to clipboard

Use ExoPlay to play a web video URL and open the camera at the same time, the player fails to play

Open PeOS-China opened this issue 2 years ago • 0 comments

ExoPlayer Version

2.15.1

Devices that reproduce the issue

Android9 SDK28 device

Devices that do not reproduce the issue

Android9 SDK28 device

Reproducible in the demo app?

No

Reproduction steps

1、Open Camera 2、play video by exoplayer

Expected result

Playback failed, player code: ` val mediaSourceFactory: MediaSourceFactory = DefaultMediaSourceFactory(context) player = SimpleExoPlayer.Builder(context) .setMediaSourceFactory(mediaSourceFactory) .setUseLazyPreparation(false).build()

    player.setMediaItem(MediaItem.fromUri(url))
    player.repeatMode =Player.REPEAT_MODE_OFF  // 播放循环模式
    volume(SysVolumeManager.getStreamVolume())
    viewPlayer.setKeepContentOnPlayerReset(true)
    viewPlayer.player = player
    viewPlayer.resizeMode = RESIZE_MODE_FIXED_WIDTH
    player.playWhenReady = isPlay
    player.prepare()

here is the log: E/ACodec: [OMX.amlogic.avc.decoder.awesome] setPortMode on output to DynamicANWBuffer failed w/ err -2147483648 I/AmAVUtils: AmAVUtils::isAudioExtendFormat input = video/avc I/ACodec: codec does not support config priority (err -1010) D/SurfaceUtils: disconnecting from surface 0x12479808, reason setNativeWindowSizeFormatAndUsage D/SurfaceUtils: connecting to surface 0x12479808, reason setNativeWindowSizeFormatAndUsage D/SurfaceUtils: set up nativeWindow 0x12479808 for 720x1278, color 0x11, rotation 0, usage 0x402b00 W/ACodec: [OMX.amlogic.avc.decoder.awesome] setting nBufferCountActual to 9 failed: -1010 W/ACodec: [OMX.amlogic.avc.decoder.awesome] setting nBufferCountActual to 8 failed: -1010 W/ACodec: [OMX.amlogic.avc.decoder.awesome] setting nBufferCountActual to 7 failed: -1010 W/: buffer descriptor with invalid usage bits 0x2000 E/GraphicBufferAllocator: Failed to allocate (720 x 1278) layerCount 1 format 17 usage 402b00: 5 E/BufferQueueProducer: [SurfaceTexture-0-4236-17] dequeueBuffer: createGraphicBuffer failed E/ACodec: dequeueBuffer failed: Out of memory (12) E/ACodec: Failed to allocate buffers after transitioning to IDLE state (error 0xfffffff4) E/ACodec: signalError(omxError 0x80001001, internalError -12) E/MediaCodec: Codec reported err 0xfffffff4, actionCode 0, while in state 5 W/AHierarchicalStateMachine: Warning message AMessage(what = 'omxI') = { int32_t type = 0 int32_t event = 0 int32_t data1 = 0 int32_t data2 = 1 } unhandled in root state. D/SurfaceUtils: disconnecting from surface 0x12479808, reason disconnectFromSurface W/MediaCodecRenderer: Failed to initialize decoder: OMX.amlogic.avc.decoder.awesome android.media.MediaCodec$CodecException: start failed at android.media.MediaCodec.native_start(Native Method) at android.media.MediaCodec.start(MediaCodec.java:2068) at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter$Factory.createAdapter(SynchronousMediaCodecAdapter.java:57) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:1121) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1027) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecOrBypass(MediaCodecRenderer.java:585) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1455) at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:713) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readSourceOmittingSampleData(MediaCodecRenderer.java:981) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:810) at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:978) at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:482) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:193) at android.os.HandlerThread.run(HandlerThread.java:65) E/MediaCodecVideoRenderer: Video codec error com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.amlogic.avc.decoder.awesome, Format(1, null, null, video/avc, avc1.64001F, -1, null, [720, 1278, 29.99875], [-1, -1]) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1034) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecOrBypass(MediaCodecRenderer.java:585) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1455) at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:713) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readSourceOmittingSampleData(MediaCodecRenderer.java:981) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:810) at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:978) at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:482) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:193) at android.os.HandlerThread.run(HandlerThread.java:65) Caused by: android.media.MediaCodec$CodecException: start failed at android.media.MediaCodec.native_start(Native Method) at android.media.MediaCodec.start(MediaCodec.java:2068) at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter$Factory.createAdapter(SynchronousMediaCodecAdapter.java:57) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:1121) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1027) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecOrBypass(MediaCodecRenderer.java:585) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1455) at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:713) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readSourceOmittingSampleData(MediaCodecRenderer.java:981) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:810) at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:978) at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:482) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:193) at android.os.HandlerThread.run(HandlerThread.java:65) E/ExoPlayerImplInternal: Playback error com.google.android.exoplayer2.ExoPlaybackException: MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/avc, avc1.64001F, -1, null, [720, 1278, 29.99875], [-1, -1]), format_supported=YES at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:558) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:193) at android.os.HandlerThread.run(HandlerThread.java:65) Caused by: com.google.android.exoplayer2.mediacodec.MediaCodecRenderer$DecoderInitializationException: Decoder init failed: OMX.amlogic.avc.decoder.awesome, Format(1, null, null, video/avc, avc1.64001F, -1, null, [720, 1278, 29.99875], [-1, -1]) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1034) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecOrBypass(MediaCodecRenderer.java:585) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1455) at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:713) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readSourceOmittingSampleData(MediaCodecRenderer.java:981) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:810) at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:978) at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:482) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:193) at android.os.HandlerThread.run(HandlerThread.java:65) Caused by: android.media.MediaCodec$CodecException: start failed at android.media.MediaCodec.native_start(Native Method) at android.media.MediaCodec.start(MediaCodec.java:2068) at com.google.android.exoplayer2.mediacodec.SynchronousMediaCodecAdapter$Factory.createAdapter(SynchronousMediaCodecAdapter.java:57) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.initCodec(MediaCodecRenderer.java:1121) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecWithFallback(MediaCodecRenderer.java:1027) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.maybeInitCodecOrBypass(MediaCodecRenderer.java:585) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.onInputFormatChanged(MediaCodecRenderer.java:1455) at com.google.android.exoplayer2.video.MediaCodecVideoRenderer.onInputFormatChanged(MediaCodecVideoRenderer.java:713) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.readSourceOmittingSampleData(MediaCodecRenderer.java:981) at com.google.android.exoplayer2.mediacodec.MediaCodecRenderer.render(MediaCodecRenderer.java:810) at com.google.android.exoplayer2.ExoPlayerImplInternal.doSomeWork(ExoPlayerImplInternal.java:978) at com.google.android.exoplayer2.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:482) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:193) at android.os.HandlerThread.run(HandlerThread.java:65) D/Barbell-StreamLesson: ╔════════════════════════════════════════════════════════════════════════════════════════ D/Barbell-StreamLesson: ║ Thread: main D/Barbell-StreamLesson: ╟──────────────────────────────────────────────────────────────────────────────────────── D/Barbell-StreamLesson: ║ ListenerSet$$ExternalSyntheticLambda1.run (null:6) D/Barbell-StreamLesson: ║ ListenerSet.lambda$queueEvent$0 (ListenerSet.java:170) D/Barbell-StreamLesson: ║ ListenerSet$ListenerHolder.invoke (ListenerSet.java:261) D/Barbell-StreamLesson: ║ ExoPlayerImpl$$ExternalSyntheticLambda24.invoke (null:4) D/Barbell-StreamLesson: ║ ExoPlayerImpl.lambda$updatePlaybackInfo$12 (ExoPlayerImpl.java:1308) D/Barbell-StreamLesson: ╟──────────────────────────────────────────────────────────────────────────────────────── D/Barbell-StreamLesson: ║ 4001 : MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/avc, avc1.64001F, -1, null, [720, 1278, 29.99875], [-1, -1]), format_supported=YES D/Barbell-StreamLesson: ╚════════════════════════════════════════════════════════════════════════════════════════ D/StreamLesson: 4001 : MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/avc, avc1.64001F, -1, null, [720, 1278, 29.99875], [-1, -1]), format_supported=YES D/Barbell-StreamLesson: ╔════════════════════════════════════════════════════════════════════════════════════════ D/Barbell-StreamLesson: ║ Thread: main D/Barbell-StreamLesson: ╟──────────────────────────────────────────────────────────────────────────────────────── D/Barbell-StreamLesson: ║ ListenerSet$$ExternalSyntheticLambda1.run (null:6) D/Barbell-StreamLesson: ║ ListenerSet.lambda$queueEvent$0 (ListenerSet.java:170) D/Barbell-StreamLesson: ║ ListenerSet$ListenerHolder.invoke (ListenerSet.java:261) D/Barbell-StreamLesson: ║ ExoPlayerImpl$$ExternalSyntheticLambda4.invoke (null:4) D/Barbell-StreamLesson: ║ ExoPlayerImpl.lambda$updatePlaybackInfo$18 (ExoPlayerImpl.java:1349) D/Barbell-StreamLesson: ╟──────────────────────────────────────────────────────────────────────────────────────── D/Barbell-StreamLesson: ║ state = 1 D/Barbell-StreamLesson: ╚════════════════════════════════════════════════════════════════════════════════════════ D/StreamLesson: state = 1 `

Actual result

Playback failed:4001 : MediaCodecVideoRenderer error, index=0, format=Format(1, null, null, video/avc, avc1.64001F, -1, null, [720, 1278, 29.99875], [-1, -1]), format_supported=YES

Media

any network video url

Bug Report

  • [ ] You will email the zip file produced by adb bugreport to [email protected] after filing this issue.

PeOS-China avatar Aug 16 '22 10:08 PeOS-China