tomo0611 / DAnimePlus

Unofficial NTT Docomo Anime Store Android Client
1 stars 0 forks source link

Seekを複数回するとUnexpected runtime errorで止まる #1

Open tomo0611 opened 1 month ago

tomo0611 commented 1 month ago

概要

複数回のシークを繰り返すと以下のようなエラーメッセージを吐いて再生が止まる。

環境

端末 : Google Pixel 8 & Xiaomi Pad 6

ログ

signalError(omxError 0x80001001, internalError -110)
Codec reported trivial err 0xffffff92/TIMED_OUT, actionCode 0, while in state 7/FLUSHING
flushMediametrics
[mId: 9] video-debug disconnectFromSurface: mSurface 0xb40000745278d800
disconnecting from surface 0xb40000745278d810, reason disconnectFromSurface
freeAllBuffers: 14 buffers were freed while being dequeued!
[mId: 9] video-debug setState: UNINITIALIZED
Playback error
  androidx.media3.exoplayer.ExoPlaybackException: Unexpected runtime error
      at androidx.media3.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:720)
      at android.os.Handler.dispatchMessage(Handler.java:102)
      at android.os.Looper.loopOnce(Looper.java:224)
      at android.os.Looper.loop(Looper.java:318)
      at android.os.HandlerThread.run(HandlerThread.java:67)
  Caused by: android.media.MediaCodec$CodecException: 
      at android.media.MediaCodec.native_flush(Native Method)
      at android.media.MediaCodec.flush(MediaCodec.java:2504)
      at androidx.media3.exoplayer.mediacodec.AsynchronousMediaCodecAdapter.flush(AsynchronousMediaCodecAdapter.java:247)
      at androidx.media3.exoplayer.mediacodec.MediaCodecRenderer.flushCodec(MediaCodecRenderer.java:960)
      at androidx.media3.exoplayer.mediacodec.MediaCodecRenderer.flushOrReleaseCodec(MediaCodecRenderer.java:953)
      at androidx.media3.exoplayer.mediacodec.MediaCodecRenderer.flushOrReinitializeCodec(MediaCodecRenderer.java:916)
      at androidx.media3.exoplayer.mediacodec.MediaCodecRenderer.onPositionReset(MediaCodecRenderer.java:755)
      at androidx.media3.exoplayer.video.MediaCodecVideoRenderer.onPositionReset(MediaCodecVideoRenderer.java:723)
      at androidx.media3.exoplayer.BaseRenderer.resetPosition(BaseRenderer.java:202)
      at androidx.media3.exoplayer.BaseRenderer.resetPosition(BaseRenderer.java:195)
      at androidx.media3.exoplayer.ExoPlayerImplInternal.resetRendererPosition(ExoPlayerImplInternal.java:1486)
      at androidx.media3.exoplayer.ExoPlayerImplInternal.seekToPeriodPosition(ExoPlayerImplInternal.java:1464)
      at androidx.media3.exoplayer.ExoPlayerImplInternal.seekToPeriodPosition(ExoPlayerImplInternal.java:1403)
      at androidx.media3.exoplayer.ExoPlayerImplInternal.seekToInternal(ExoPlayerImplInternal.java:1373)
      at androidx.media3.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:564)
      at android.os.Handler.dispatchMessage(Handler.java:102) 
      at android.os.Looper.loopOnce(Looper.java:224) 
      at android.os.Looper.loop(Looper.java:318) 
      at android.os.HandlerThread.run(HandlerThread.java:67) 
flush() is valid only at Executing states; currently at Released state
Disable failed.
  java.lang.IllegalStateException: flush() is valid only at Executing states; currently at Released state

      at android.media.MediaCodec.native_flush(Native Method)
      at android.media.MediaCodec.flush(MediaCodec.java:2504)
      at androidx.media3.exoplayer.mediacodec.AsynchronousMediaCodecAdapter.flush(AsynchronousMediaCodecAdapter.java:247)
      at androidx.media3.exoplayer.mediacodec.MediaCodecRenderer.flushCodec(MediaCodecRenderer.java:960)
      at androidx.media3.exoplayer.mediacodec.MediaCodecRenderer.flushOrReleaseCodec(MediaCodecRenderer.java:953)
      at androidx.media3.exoplayer.mediacodec.MediaCodecRenderer.onDisabled(MediaCodecRenderer.java:780)
      at androidx.media3.exoplayer.video.MediaCodecVideoRenderer.onDisabled(MediaCodecVideoRenderer.java:794)
      at androidx.media3.exoplayer.BaseRenderer.disable(BaseRenderer.java:220)
      at androidx.media3.exoplayer.ExoPlayerImplInternal.disableRenderer(ExoPlayerImplInternal.java:1846)
      at androidx.media3.exoplayer.ExoPlayerImplInternal.resetInternal(ExoPlayerImplInternal.java:1566)
      at androidx.media3.exoplayer.ExoPlayerImplInternal.stopInternal(ExoPlayerImplInternal.java:1523)
      at androidx.media3.exoplayer.ExoPlayerImplInternal.handleMessage(ExoPlayerImplInternal.java:722)
      at android.os.Handler.dispatchMessage(Handler.java:102)
      at android.os.Looper.loopOnce(Looper.java:224)
      at android.os.Looper.loop(Looper.java:318)
      at android.os.HandlerThread.run(HandlerThread.java:67)
tomo0611 commented 1 month ago

ログ的に言えばTagがAって書いてあるから多分Audio周りの問題かな?

Using Codecs

Video : OMX.qcom.video.decoder.avc
Audio : c2.android.aac.decoder

Codecs List

codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: OMX.qcom.video.decoder.avc.secure
codec: OMX.qcom.video.decoder.avc
codec: c2.android.avc.decoder
codec: c2.android.aac.decoder
codec: c2.android.aac.decoder
codec: c2.android.aac.decoder
codec: c2.android.aac.decoder
tomo0611 commented 1 month ago

OMX.qcom.を除外するととりあえず治ったのでいったんは解決できたってことでいいかな?