I/VRI[MainActivity]@e60a3c5(13782): call setFrameRateCategory for touch hint category=high hint, reason=touch, vri=VRI[MainActivity]@e60a3c5
[log] initializing the video controller
I/ExoPlayerImpl(13782): Init 6c8f560 [AndroidXMedia3/1.5.1] [pa3q, SM-S938B, samsung, 35]
W/libc (13782): Access denied finding property "vendor.gpp.create_frc_extension"
I/DMCodecAdapterFactory(13782): Creating an asynchronous MediaCodec adapter for track type video
I/CCodec (13782): state->set(ALLOCATING)
I/CCodec (13782): allocate(c2.qti.avc.decoder)
I/CCodec (13782): setting up 'default' as default (vendor) store
W/mple.video_test(13782): AIBinder_linkToDeath is being called with a non-null cookie and no onUnlink callback set. This might not be intended. AIBinder_DeathRecipient_setOnUnlinked should be called first.
I/CCodec (13782): Created component [c2.qti.avc.decoder]
I/CCodec (13782): [c2.qti.avc.decoder] state->set(ALLOCATED)
D/CCodecConfig(13782): read media type: video/avc
D/ReflectedParamUpdater(13782): extent() != 1 for single value type: output.subscribed-indices.values
D/ReflectedParamUpdater(13782): extent() != 1 for single value type: vendor.qti-ext-info-hist_hdr.stats_info
D/ReflectedParamUpdater(13782): extent() != 1 for single value type: vendor.qti-ext-info-hist_hdr.reserved
D/ReflectedParamUpdater(13782): ignored struct field vendor.output.configs.portConfigs
D/ReflectedParamUpdater(13782): ignored struct field vendor.input.configs.portConfigs
D/ReflectedParamUpdater(13782): extent() != 1 for single value type: vendor.qti-ext-transcode-info-stats.stats_info
D/ReflectedParamUpdater(13782): extent() != 1 for single value type: output.buffers.pool-ids.values
D/CCodecConfig(13782): ignoring local param raw.size (0xd2001800) as it is already supported
D/CCodecConfig(13782): ignoring local param default.color (0x5200180b) as it is already supported
D/CCodecConfig(13782): ignoring local param raw.hdr-static-info (0xd200180a) as it is already supported
I/CCodecConfig(13782): query failed after returning 17 values (BAD_INDEX)
D/CCodecConfig(13782): c2 config diff is Dict {
D/CCodecConfig(13782): c2::i32 algo.priority.value = -4
D/CCodecConfig(13782): c2::float algo.rate.value = 1
D/CCodecConfig(13782): c2::u32 algo.secure-mode.value = 0
D/CCodecConfig(13782): c2::float coded.frame-rate.value = 1
D/CCodecConfig(13782): c2::u32 coded.pl.level = 0
D/CCodecConfig(13782): c2::u32 coded.pl.profile = 20484
D/CCodecConfig(13782): c2::u32 coded.vui.color.matrix = 255
D/CCodecConfig(13782): c2::u32 coded.vui.color.primaries = 0
D/CCodecConfig(13782): c2::u32 coded.vui.color.range = 0
D/CCodecConfig(13782): c2::u32 coded.vui.color.transfer = 255
D/CCodecConfig(13782): c2::u32 default.color.matrix = 0
D/CCodecConfig(13782): c2::u32 default.color.primaries = 0
D/CCodecConfig(13782): c2::u32 default.color.range = 0
D/CCodecConfig(13782): c2::u32 default.color.transfer = 0
D/CCodecConfig(13782): c2::u32 input.buffers.max-size.value = 7077888
D/CCodecConfig(13782): c2::u32 input.delay.value = 0
D/CCodecConfig(13782): string input.media-type.value = "video/avc"
D/CCodecConfig(13782): c2::u32 output.delay.value = 4
D/CCodecConfig(13782): string output.media-type.value = "video/raw"
D/CCodecConfig(13782): c2::u32 raw.color.matrix = 0
D/CCodecConfig(13782): c2::u32 raw.color.primaries = 0
D/CCodecConfig(13782): c2::u32 raw.color.range = 0
D/CCodecConfig(13782): c2::u32 raw.color.transfer = 0
D/CCodecConfig(13782): c2::float raw.hdr-static-info.mastering.blue.x = 0
D/CCodecConfig(13782): c2::float raw.hdr-static-info.mastering.blue.y = 0
D/CCodecConfig(13782): c2::float raw.hdr-static-info.mastering.green.x
W/ColorUtils(13782): expected specified color aspects (0:0:0:0)
I/MediaCodec(13782): MediaCodec will operate in async mode
W/libc (13782): Access denied finding property "vendor.gpp.create_frc_extension"
D/SurfaceUtils(13782): connecting to surface 0xb4000076d7e30af0, reason connectToSurface
I/MediaCodec(13782): [c2.qti.avc.decoder] setting surface generation to 14112770
D/SurfaceUtils(13782): disconnecting from surface 0xb4000076d7e30af0, reason connectToSurface(reconnect)
D/SurfaceUtils(13782): connecting to surface 0xb4000076d7e30ae0, reason connectToSurface(reconnect-with-listener)
D/CCodec (13782): [c2.qti.avc.decoder] buffers are bound to CCodec for this session
I/CCodec (13782): appPid(13782) width(1440) height(2560)
D/CCodecConfig(13782): no c2 equivalents for log-session-id
D/CCodecConfig(13782): no c2 equivalents for importance
D/CCodecConfig(13782): no c2 equivalents for color-standard
D/CCodecConfig(13782): no c2 equivalents for csd-1
D/CCodecConfig(13782): no c2 equivalents for native-window
D/CCodecConfig(13782): no c2 equivalents for native-window-generation
D/CCodecConfig(13782): no c2 equivalents for flags
D/CCodecConfig(13782): c2 config diff is c2::i32 algo.priority.value = 0
D/CCodecConfig(13782): c2::u32 default.color.matrix = 1
D/CCodecConfig(13782): c2::u32 default.color.primaries = 1
D/CCodecConfig(13782): c2::u32 default.color.range = 2
D/CCodecConfig(13782): c2::u32 default.color.transfer = 3
D/CCodecConfig(13782): c2::u32 input.buffers.max-size.value = 5529600
D/CCodecConfig(13782): c2::u32 raw.max-size.height = 2560
D/CCodecConfig(13782): c2::u32 raw.max-size.width = 1440
D/CCodecConfig(13782): c2::u32 raw.size.height = 2560
D/CCodecConfig(13782): c2::u32 raw.size.width = 1440
D/CCodec (13782): client requested max input size 2764800, which is smaller than what component recommended (5529600); overriding with component recommendation.
W/CCodec (13782): 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 (13782): encoding statistics level = 0
D/CCodec (13782): setup formats input: AMessage(what = 0x00000000) = {
D/CCodec (13782): int32_t feature-secure-playback = 0
D/CCodec (13782): int32_t frame-rate = 1
D/CCodec (13782): int32_t height = 2560
D/CCodec (13782): int32_t max-input-size = 5529600
D/CCodec (13782): string mime = "video/avc"
D/CCodec (13782): int32_t priority = 0
D/CCodec (13782): int32_t profile = 8
D/CCodec (13782): int32_t width = 1440
D/CCodec (13782): Rect crop(0, 0, 1439, 2559)
D/CCodec (13782): }
D/CCodec (13782): setup formats output: AMessage(what = 0x00000000) = {
D/CCodec (13782): int32_t android._color-format = 0
D/CCodec (13782): int32_t android._video-scaling = 1
D/CCodec (13782): int32_t android._dataspace = 260
D/CCodec (13782): int32_t color-standard = 1
D/CCodec (13782): int32_t color-range = 2
D/CCodec (13782): int32_t color-transfer = 3
D/CCodec (13782): int32_t sar-height = 1
D/CCodec (13782): int32_t rotation-degrees = 0
D/CCodec (13782): Buffer hdr-static-info = {
D/CCodec (13782): 00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
D/CCodec (13782): 00000010: 00 00 00 00 00 00 00 00 00 .........
D/CCodec (13782): }
D/CCodec (13782): int32_t sar-width = 1
D/CCodec (13782): Rect crop(0, 0, 1439, 2559)
D/CCodec (13782): int32_t width = 1440
D/CCodec (13782): int32_t feature-secure-playback = 0
D/CCodec (13782): int32_t frame-rate = 1
D/CCodec (13782): int32_t height = 2560
D/CCodec (13782): int32_t max-height = 2560
D/CCodec (13782): int32_t max-width = 1440
D/CCodec (13782): string mime = "video/raw"
D/CCodec (13782): int32_t priority = 0
D/CCodec (13782): int32_t color-format = 2130708361
D/CCodec (13782): int32_t p-extraBC = 7
D/CCodec (13782): }
I/CCodecConfig(13782): query failed after returning 17 values (BAD_INDEX)
D/MediaCodec(13782): keep callback message for reclaim
I/CCodec (13782): [c2.qti.avc.decoder] state->set(STARTING)
D/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] Query input allocators returned 0 params => BAD_INDEX (6)
D/AidlBufferPool(13782): bufferpool2 0xb400007657e37cd8 : 10(55296000 size) total buffers - 10(55296000 size) used buffers - 20/31 (recycle/alloc) - 12/32 (fetch/transfer)
D/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] Created input block pool with allocatorID 16 => poolID 18 - OK (0)
I/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] start: max output delay 11
D/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] Query output allocators returned 0 params => BAD_INDEX (6)
D/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] Query output surface allocator returned 0 params => BAD_INDEX (6)
D/Codec2Client(13782): GraphicBufferAllocator created
I/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] Created output block pool with allocatorID 18 => poolID 9074 - OK
D/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] Configured output block pool ids 9074 => OK
D/Codec2Client(13782): setOutputSurface -- failed to set consumer usage (6/BAD_INDEX)
D/GraphicsTracker(13782): new surface in configuration: maxDequeueRequested(0), maxDequeueCommitted(3)
D/GraphicsTracker(13782): new surface configured with id:59193239273476 gen:14112770 maxDequeue:3
D/GraphicsTracker(13782): maxDequeueCount committed to IGBP: 11
D/GraphicsTracker(13782): Cache size 0 -> 0: maybe_cleared(0), dequeued(0)
D/GraphicsTracker(13782): maxDqueueCount change 3 -> 11: pending: 0
D/Codec2Client(13782): setOutputSurface -- generation=14112770 consumer usage=0x900
I/CCodec (13782): [c2.qti.avc.decoder] state->set(RUNNING)
I/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] 10 initial input buffers available
W/mple.video_test(13782): AIBinder_linkToDeath is being called with a non-null cookie and no onUnlink callback set. This might not be intended. AIBinder_DeathRecipient_setOnUnlinked should be called first.
I/MediaCodec(13782): setCodecState state(0), called in 6, domain 1, 1
D/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] Ignoring stale input buffer done callback: last flush index = 0, frameIndex = 0
D/CCodecConfig(13782): c2 config diff is c2::u32 output.delay.value = 10
I/CCodecBufferChannel(13782): [c2.qti.avc.decoder#899] updating max output delay 17
D/GraphicsTracker(13782): maxDequeueCount committed to IGBP: 17
D/GraphicsTracker(13782): Cache size 1 -> 1: maybe_cleared(0), dequeued(1)
D/GraphicsTracker(13782): maxDqueueCount change 11 -> 17: pending: 0
D/CCodecConfig(13782): c2 config diff is c2::u32 raw.color.matrix = 1
D/CCodecConfig(13782): c2::u32 raw.color.primaries = 1
D/CCodecConfig(13782): c2::u32 raw.color.range = 2
D/CCodecConfig(13782): c2::u32 raw.color.transfer = 3
D/CCodecConfig(13782): c2::u32 raw.crop.height = 2560
D/CCodecConfig(13782): c2::u32 raw.crop.left = 0
D/CCodecConfig(13782): c2::u32 raw.crop.top = 0
D/CCodecConfig(13782): c2::u32 raw.crop.width = 1440
D/CCodecConfig(13782): c2::u32 raw.data-space.value = 281083904
D/CCodecBuffers(13782): [c2.qti.avc.decoder#899:2D-Output] popFromStashAndRegister: at 1000000000000us, output format changed to AMessage(what = 0x00000000) = {
D/CCodecBuffers(13782): int32_t android._color-format = 0
D/CCodecBuffers(13782): int32_t android._video-scaling = 1
D/CCodecBuffers(13782): int32_t android._dataspace = 281083904
D/CCodecBuffers(13782): int32_t color-standard = 1
D/CCodecBuffers(13782): int32_t color-range = 2
D/CCodecBuffers(13782): int32_t color-transfer = 3
D/CCodecBuffers(13782): int32_t sar-height = 1
D/CCodecBuffers(13782): int32_t rotation-degrees = 0
D/CCodecBuffers(13782): Buffer hdr-static-info = {
D/CCodecBuffers(13782): 00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
D/CCodecBuffers(13782): 00000010: 00 00 00 00 00 00 00 00 00 .........
D/CCodecBuffers(13782): }
D/CCodecBuffers(13782): int32_t sar-width = 1
D/CCodecBuffers(13782): Rect crop(0, 0, 1439, 2559)
D/CCodecBuffers(13782): int32_t width = 1440
D/CCodecBuffers(13782): int32_t feature-secure-playback = 0
D/CCodecBuffers(13782): int32_t frame-rate = 1
D/CCodecBuffers(13782): int32_t height = 2560
D/CCodecBuffers(13782): int32_t max-height = 2560
D/CCodecBuffers(13782): int32_t max-width = 1440
D/CCodecBuffers(13782): string mime = "video/raw"
D/CCodecBuffers(13782): int32_t priority = 0
D/CCodecBuffers(13782): int32_t color-format = 2130708361
D/CCodecBuffers(13782): int32_t p-extraBC = 7
D/CCodecBuffers(13782): }
[log] controller.value.isInitialized=true, controller.value.duration: 0:00:00.001000
I/MediaCodec(13782): setCodecState state(1), called in 6, domain 1, 1
I/MediaCodec(13782): setCodecState state(0), called in 6, domain 1, 1
Provided test video: video.mp4.
What package does this bug report belong to?
video_player
What target platforms are you seeing this bug on?
Android
Have you already upgraded your packages?
Yes
Dependency versions
pubspec.lock
Steps to reproduce
main.dartvideo.mp4to assets folderpubspec.yamlExpected results
Expected
controller.value.durationto be valid (around 20 seconds for the provided videovideo.mp4)Actual results
Reported
controller.value.durationis0:00:00.001000on Android.On iOS it reports correct result
[log] controller.value.isInitialized=true, controller.value.duration: 0:00:20.966000Code sample
Code sample
Screenshots or Videos
Logs
Logs
Flutter Doctor output
Doctor output