Skip to content

[video_player] controller.value.duration returns zero (wrong duration) on some videos (test video attached) on Android #176575

@imranspahic

Description

@imranspahic

Provided test video: video.mp4.

Bug observed on Samsung S25 Ultra, Android version: 15

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
# Generated by pub
# See https://dart.dev/tools/pub/glossary#lockfile
packages:
  async:
    dependency: transitive
    description:
      name: async
      sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb"
      url: "https://pub.dev"
    source: hosted
    version: "2.13.0"
  boolean_selector:
    dependency: transitive
    description:
      name: boolean_selector
      sha256: "8aab1771e1243a5063b8b0ff68042d67334e3feab9e95b9490f9a6ebf73b42ea"
      url: "https://pub.dev"
    source: hosted
    version: "2.1.2"
  characters:
    dependency: transitive
    description:
      name: characters
      sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803
      url: "https://pub.dev"
    source: hosted
    version: "1.4.0"
  clock:
    dependency: transitive
    description:
      name: clock
      sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b
      url: "https://pub.dev"
    source: hosted
    version: "1.1.2"
  collection:
    dependency: transitive
    description:
      name: collection
      sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76"
      url: "https://pub.dev"
    source: hosted
    version: "1.19.1"
  csslib:
    dependency: transitive
    description:
      name: csslib
      sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e"
      url: "https://pub.dev"
    source: hosted
    version: "1.0.2"
  cupertino_icons:
    dependency: "direct main"
    description:
      name: cupertino_icons
      sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6
      url: "https://pub.dev"
    source: hosted
    version: "1.0.8"
  fake_async:
    dependency: transitive
    description:
      name: fake_async
      sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44"
      url: "https://pub.dev"
    source: hosted
    version: "1.3.3"
  flutter:
    dependency: "direct main"
    description: flutter
    source: sdk
    version: "0.0.0"
  flutter_lints:
    dependency: "direct dev"
    description:
      name: flutter_lints
      sha256: "5398f14efa795ffb7a33e9b6a08798b26a180edac4ad7db3f231e40f82ce11e1"
      url: "https://pub.dev"
    source: hosted
    version: "5.0.0"
  flutter_test:
    dependency: "direct dev"
    description: flutter
    source: sdk
    version: "0.0.0"
  flutter_web_plugins:
    dependency: transitive
    description: flutter
    source: sdk
    version: "0.0.0"
  html:
    dependency: transitive
    description:
      name: html
      sha256: "6d1264f2dffa1b1101c25a91dff0dc2daee4c18e87cd8538729773c073dbf602"
      url: "https://pub.dev"
    source: hosted
    version: "0.15.6"
  leak_tracker:
    dependency: transitive
    description:
      name: leak_tracker
      sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de"
      url: "https://pub.dev"
    source: hosted
    version: "11.0.2"
  leak_tracker_flutter_testing:
    dependency: transitive
    description:
      name: leak_tracker_flutter_testing
      sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1"
      url: "https://pub.dev"
    source: hosted
    version: "3.0.10"
  leak_tracker_testing:
    dependency: transitive
    description:
      name: leak_tracker_testing
      sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1"
      url: "https://pub.dev"
    source: hosted
    version: "3.0.2"
  lints:
    dependency: transitive
    description:
      name: lints
      sha256: c35bb79562d980e9a453fc715854e1ed39e24e7d0297a880ef54e17f9874a9d7
      url: "https://pub.dev"
    source: hosted
    version: "5.1.1"
  matcher:
    dependency: transitive
    description:
      name: matcher
      sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2
      url: "https://pub.dev"
    source: hosted
    version: "0.12.17"
  material_color_utilities:
    dependency: transitive
    description:
      name: material_color_utilities
      sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec
      url: "https://pub.dev"
    source: hosted
    version: "0.11.1"
  meta:
    dependency: transitive
    description:
      name: meta
      sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c
      url: "https://pub.dev"
    source: hosted
    version: "1.16.0"
  path:
    dependency: transitive
    description:
      name: path
      sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5"
      url: "https://pub.dev"
    source: hosted
    version: "1.9.1"
  plugin_platform_interface:
    dependency: transitive
    description:
      name: plugin_platform_interface
      sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02"
      url: "https://pub.dev"
    source: hosted
    version: "2.1.8"
  sky_engine:
    dependency: transitive
    description: flutter
    source: sdk
    version: "0.0.0"
  source_span:
    dependency: transitive
    description:
      name: source_span
      sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c"
      url: "https://pub.dev"
    source: hosted
    version: "1.10.1"
  stack_trace:
    dependency: transitive
    description:
      name: stack_trace
      sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1"
      url: "https://pub.dev"
    source: hosted
    version: "1.12.1"
  stream_channel:
    dependency: transitive
    description:
      name: stream_channel
      sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d"
      url: "https://pub.dev"
    source: hosted
    version: "2.1.4"
  string_scanner:
    dependency: transitive
    description:
      name: string_scanner
      sha256: "921cd31725b72fe181906c6a94d987c78e3b98c2e205b397ea399d4054872b43"
      url: "https://pub.dev"
    source: hosted
    version: "1.4.1"
  term_glyph:
    dependency: transitive
    description:
      name: term_glyph
      sha256: "7f554798625ea768a7518313e58f83891c7f5024f88e46e7182a4558850a4b8e"
      url: "https://pub.dev"
    source: hosted
    version: "1.2.2"
  test_api:
    dependency: transitive
    description:
      name: test_api
      sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00"
      url: "https://pub.dev"
    source: hosted
    version: "0.7.6"
  vector_math:
    dependency: transitive
    description:
      name: vector_math
      sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b
      url: "https://pub.dev"
    source: hosted
    version: "2.2.0"
  video_player:
    dependency: "direct main"
    description:
      name: video_player
      sha256: "0d55b1f1a31e5ad4c4967bfaa8ade0240b07d20ee4af1dfef5f531056512961a"
      url: "https://pub.dev"
    source: hosted
    version: "2.10.0"
  video_player_android:
    dependency: transitive
    description:
      name: video_player_android
      sha256: "6cfe0b1e102522eda1e139b82bf00602181c5844fd2885340f595fb213d74842"
      url: "https://pub.dev"
    source: hosted
    version: "2.8.14"
  video_player_avfoundation:
    dependency: transitive
    description:
      name: video_player_avfoundation
      sha256: f9a780aac57802b2892f93787e5ea53b5f43cc57dc107bee9436458365be71cd
      url: "https://pub.dev"
    source: hosted
    version: "2.8.4"
  video_player_platform_interface:
    dependency: transitive
    description:
      name: video_player_platform_interface
      sha256: cf2a1d29a284db648fd66cbd18aacc157f9862d77d2cc790f6f9678a46c1db5a
      url: "https://pub.dev"
    source: hosted
    version: "6.4.0"
  video_player_web:
    dependency: transitive
    description:
      name: video_player_web
      sha256: "9f3c00be2ef9b76a95d94ac5119fb843dca6f2c69e6c9968f6f2b6c9e7afbdeb"
      url: "https://pub.dev"
    source: hosted
    version: "2.4.0"
  vm_service:
    dependency: transitive
    description:
      name: vm_service
      sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60"
      url: "https://pub.dev"
    source: hosted
    version: "15.0.2"
  web:
    dependency: transitive
    description:
      name: web
      sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a"
      url: "https://pub.dev"
    source: hosted
    version: "1.1.1"
sdks:
  dart: ">=3.9.2 <4.0.0"
  flutter: ">=3.29.0"

Steps to reproduce

  1. Copy the code sample in main.dart
  2. Add test video.mp4 to assets folder
  3. Add following to pubspec.yaml
  assets:
    - assets/video.mp4
  1. Press on centered button

Expected results

Expected controller.value.duration to be valid (around 20 seconds for the provided video video.mp4)

Actual results

Reported controller.value.duration is 0:00:00.001000 on Android.

On iOS it reports correct result
[log] controller.value.isInitialized=true, controller.value.duration: 0:00:20.966000

Code sample

Code sample
import 'dart:developer';

import 'package:flutter/material.dart';
import 'package:video_player/video_player.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Video Test',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
      ),
      home: const MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  const MyHomePage({super.key});

  Future<void> loadVideo() async {
    VideoPlayerController controller = VideoPlayerController.asset(
      'assets/video.mp4',
    );
    log("initializing the video controller");
    await controller.initialize();
    log(
      "controller.value.isInitialized=${controller.value.isInitialized}, controller.value.duration: ${controller.value.duration}",
    );
  }

  @override
  Widget build(BuildContext context) {
    return Center(
      child: ElevatedButton(
        onPressed: loadVideo,
        child: const Text('Load video'),
      ),
    );
  }
}

Screenshots or Videos

Logs

Logs
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

Flutter Doctor output

Doctor output
[✓] Flutter (Channel stable, 3.35.5, on macOS 15.6 24G84 darwin-arm64, locale hr-BA) [1.144ms]
    • Flutter version 3.35.5 on channel stable at [MY_LOCATION]
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision ac4e799d23 (10 days ago), 2025-09-26 12:05:09 -0700
    • Engine revision d3d45dcf25
    • Dart version 3.9.2
    • DevTools version 2.48.0
    • Feature flags: enable-web, enable-linux-desktop, enable-macos-desktop, enable-windows-desktop, enable-android, enable-ios, cli-animations,
      enable-lldb-debugging

[!] Android toolchain - develop for Android devices (Android SDK version 35.0.0) [2,3s]
    • Android SDK at /Users/XY/Library/Android/sdk
    • Emulator version 36.1.9.0 (build_id 13823996) (CL:N/A)
    • Platform android-36, build-tools 35.0.0
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
      This is the JDK bundled with the latest Android Studio installation on this machine.
      To manually set the JDK path, use: `flutter config --jdk-dir="path/to/jdk"`.
    • Java version OpenJDK Runtime Environment (build 21.0.6+-13391695-b895.109)
    ! Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses

[✓] Xcode - develop for iOS and macOS (Xcode 16.2) [2,4s]
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 16C5032a
    • CocoaPods version 1.16.2

[✓] Chrome - develop for the web [13ms]
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2025.1) [12ms]
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 21.0.6+-13391695-b895.109)

[✓] VS Code (version 1.104.3) [11ms]
    • VS Code at [MY_PATH]/Visual Studio Code.app/Contents
    • Flutter extension version 3.120.0

[✓] Connected device (5 available) [6,8s]
       [DEVICES DATA]

[✓] Network resources [342ms]
    • All expected network resources are available.

! Doctor found issues in 1 category.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work listfound in release: 3.35Found to occur in 3.35found in release: 3.37Found to occur in 3.37has reproducible stepsThe issue has been confirmed reproducible and is ready to work onp: video_playerThe Video Player pluginpackageflutter/packages repository. See also p: labels.platform-androidAndroid applications specificallyteam-androidOwned by Android platform teamtriaged-androidTriaged by Android platform team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions