I'm just trying to reproduce a mp3 file placed in getApplicationDocumentsDirectory
, using Just Audio library (just_audio: ^0.9.29), but after 43 seconds (for that specific file) the app crashes with the following log
V/AutofillManager(24351): requestHideFillUi(null): anchor = null
I/ExoPlayerImpl(24351): Init a42cd27 [ExoPlayerLib/2.17.1] [OnePlus8Pro, IN2023, OnePlus, 31]
W/example.youtun(24351): Accessing hidden method Landroid/media/AudioTrack;->getLatency()I (unsupported, reflection, allowed)
D/AudioManagerExtImpl(24351): getStreamVolume packageName=com.example.youtune, index=4, streamType=3
W/AudioCapabilities(24351): Unsupported mime audio/ffmpeg
W/VideoCapabilities(24351): Unsupported mime image/vnd.android.heic
W/VideoCapabilities(24351): Unsupported mime video/ffmpeg
2
W/VideoCapabilities(24351): Unrecognized profile/level 0/3 for video/mpeg2
2
W/AudioCapabilities(24351): Unsupported mime audio/ozoaudio
I/DMCodecAdapterFactory(24351): Creating an asynchronous MediaCodec adapter for track type audio
E/Parcel (24351): Reading a NULL string not supported here.
D/OplusCCodec(24351): OplusCCodec [120]: (0xb400007e00db3980)
D/CCodec (24351): allocate(c2.android.mp3.decoder)
I/Codec2Client(24351): Available Codec2 services: "ozoaudio" "software"
I/CCodec (24351): Created component [c2.android.mp3.decoder]
D/CCodecConfig(24351): read media type: audio/mpeg
D/ReflectedParamUpdater(24351): extent() != 1 for single value type: algo.buffers.max-count.values
D/ReflectedParamUpdater(24351): extent() != 1 for single value type: output.subscribed-indices.values
D/ReflectedParamUpdater(24351): extent() != 1 for single value type: input.buffers.allocator-ids.values
D/ReflectedParamUpdater(24351): extent() != 1 for single value type: output.buffers.allocator-ids.values
D/ReflectedParamUpdater(24351): extent() != 1 for single value type: algo.buffers.allocator-ids.values
D/ReflectedParamUpdater(24351): extent() != 1 for single value type: output.buffers.pool-ids.values
D/ReflectedParamUpdater(24351): extent() != 1 for single value type: algo.buffers.pool-ids.values
I/CCodecConfig(24351): query failed after returning 7 values (BAD_INDEX)
D/CCodecConfig(24351): c2 config diff is Dict {
D/CCodecConfig(24351): c2::u32 coded.bitrate.value = 64000
D/CCodecConfig(24351): c2::u32 input.buffers.max-size.value = 8192
D/CCodecConfig(24351): c2::u32 input.delay.value = 0
D/CCodecConfig(24351): string input.media-type.value = "audio/mpeg"
D/CCodecConfig(24351): string output.media-type.value = "audio/raw"
D/CCodecConfig(24351): c2::u32 raw.channel-count.value = 2
D/CCodecConfig(24351): c2::u32 raw.sample-rate.value = 44100
D/CCodecConfig(24351): }
I/MediaCodec(24351): MediaCodec will operate in async mode
I/MediaCodec(24351): [c2.android.mp3.decoder] configure, format : AMessage(what = 0x00000000) = {
I/MediaCodec(24351): int32_t sample-rate = 44100
I/MediaCodec(24351): string mime = "audio/mpeg"
I/MediaCodec(24351): int32_t channel-count = 2
I/MediaCodec(24351): int32_t priority = 0
I/MediaCodec(24351): int32_t max-input-size = 4096
I/MediaCodec(24351): }
D/OplusCCodec(24351): [initiateConfigureComponent:L256] OplusFeedbackInfo mFeedbackID:-5476376605702276736
D/CCodec (24351): [c2.android.mp3.decoder] buffers are bound to CCodec for this session
D/CCodecConfig(24351): no c2 equivalents for flags
D/CCodecConfig(24351): config failed => CORRUPTED
W/Codec2Client(24351): query -- param skipped: index = 1107298332.
D/CCodec (24351): client requested max input size 4096, which is smaller than what component recommended (8192); overriding with component recommendation.
W/CCodec (24351): This behavior is subject to change. It is recommended that app developers double check whether the requested max input size is in reasonable range.
D/CCodec (24351): setup formats input: AMessage(what = 0x00000000) = {
D/CCodec (24351): int32_t bitrate = 64000
D/CCodec (24351): int32_t channel-count = 2
D/CCodec (24351): int32_t max-input-size = 8192
D/CCodec (24351): string mime = "audio/mpeg"
D/CCodec (24351): int32_t sample-rate = 44100
D/CCodec (24351): }
D/CCodec (24351): setup formats output: AMessage(what = 0x00000000) = {
D/CCodec (24351): int32_t channel-count = 2
D/CCodec (24351): string mime = "audio/raw"
D/CCodec (24351): int32_t sample-rate = 44100
D/CCodec (24351): int32_t android._config-pcm-encoding = 2
D/CCodec (24351): }
I/CCodecConfig(24351): query failed after returning 7 values (BAD_INDEX)
D/MediaCodec(24351): keep callback message for reclaim
W/Codec2Client(24351): query -- param skipped: index = 1342179345.
W/Codec2Client(24351): query -- param skipped: index = 2415921170.
D/C2Store (24351): Using ION
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] Created input block pool with allocatorID 16 => poolID 17 - OK (0)
I/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] Created output block pool with allocatorID 16 => poolID 1142 - OK
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] Configured output block pool ids 1142 => OK
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] start: updating output delay 0
E/ion (24351): ioctl c0044901 failed with code -1: Inappropriate ioctl for device
D/AudioTrackExtImpl(24351): AudioTrackExtImpl init
D/AudioTrackExtImpl(24351): audioTrackTest
D/AudioTrack(24351): set() streamType -1, sampleRate 44100, format 0x1, channelMask 0x3, frameCount 14144, flags #0, notificationFrames 0, sessionId 13137, transferType 3, uid -1, pid -1 cbf 1
D/AudioTrack(24351): set(): Building AudioTrack with attributes: usage=1 content=2 flags=0xa00 tags=[]
I/AudioTrack(24351): createTrack_l(2088) on outputId(21) : 0xb400007e07887300, mCblk = 0x7f321c6000, mLatency = 400, mAfLatency = 80, frameCount = 14144, mSampleRate = 44100, mFlags = 0x8, mReqFrameCount = 14144, mNotificationFramesAct = 7072
D/ListServiceUtils(24351): mListServiceUtils::init CallingPid 24351
D/ListServiceUtils(24351): mListServiceUtils::init this 0xb400007e8b36cb80
D/AudioTrack(24351): setVolume left 1.000 right 1.000 , callingPid 24351
D/AudioTrack(24351): start(2088): prior state:STATE_STOPPED output 21 stream 3 session 13137
D/AudioTrack(24351): getTimestamp_l(2088): device stall time corrected using current time 232797429092912
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/BufferPoolAccessor2.0(24351): bufferpool2 0xb400007e8b7cdc28 : 5(40960 size) total buffers - 1(8192 size) used buffers - 211/216 (recycle/alloc) - 5/428 (fetch/transfer)
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/BufferPoolAccessor2.0(24351): bufferpool2 0xb400007e8b7cdc28 : 5(40960 size) total buffers - 1(8192 size) used buffers - 407/412 (recycle/alloc) - 5/820 (fetch/transfer)
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/BufferPoolAccessor2.0(24351): bufferpool2 0xb400007e8b7cdc28 : 5(40960 size) total buffers - 1(8192 size) used buffers - 607/612 (recycle/alloc) - 5/1220 (fetch/transfer)
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/BufferPoolAccessor2.0(24351): bufferpool2 0xb400007e8b7cdc28 : 5(40960 size) total buffers - 1(8192 size) used buffers - 803/808 (recycle/alloc) - 5/1612 (fetch/transfer)
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/BufferPoolAccessor2.0(24351): bufferpool2 0xb400007e8b7cdc28 : 5(40960 size) total buffers - 1(8192 size) used buffers - 1004/1009 (recycle/alloc) - 5/2014 (fetch/transfer)
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/BufferPoolAccessor2.0(24351): bufferpool2 0xb400007e8b7cdc28 : 5(40960 size) total buffers - 1(8192 size) used buffers - 1204/1209 (recycle/alloc) - 5/2414 (fetch/transfer)
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/BufferPoolAccessor2.0(24351): bufferpool2 0xb400007e8b7cdc28 : 5(40960 size) total buffers - 1(8192 size) used buffers - 1400/1405 (recycle/alloc) - 5/2806 (fetch/transfer)
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/CCodecBufferChannel(24351): [c2.android.mp3.decoder#431] DEBUG: elapsed: n=4 [in=0 pipeline=0 out=0]
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 4
D/BufferPoolAccessor2.0(24351): bufferpool2 0xb400007e8b7cdc28 : 5(40960 size) total buffers - 1(8192 size) used buffers - 1596/1601 (recycle/alloc) - 5/3198 (fetch/transfer)
D/AudioTrack(24351): stop(2088): prior state:STATE_ACTIVE output 21 stream 3 session 13137
D/AudioTrack(24351): stop(2088): called with 1923840 frames delivered
D/PipelineWatcher(24351): DEBUG: elapsed 0 / 0
D/BufferPoolAccessor2.0(24351): bufferpool2 0xb400007e8b7cdc28 : 5(40960 size) total buffers - 3(24576 size) used buffers - 1670/1675 (recycle/alloc) - 5/3340 (fetch/transfer)
D/BufferPoolAccessor2.0(24351): evictor expired: 1, evicted: 1
V/AutofillManager(24351): requestHideFillUi(null): anchor = null
any idea what's wrong