Skip to content

[video_player_platform_interface] Improve seek performance on Android#11932

Open
sailendrabathi wants to merge 2 commits into
flutter:mainfrom
sailendrabathi:video_player_platform_interface_seek
Open

[video_player_platform_interface] Improve seek performance on Android#11932
sailendrabathi wants to merge 2 commits into
flutter:mainfrom
sailendrabathi:video_player_platform_interface_seek

Conversation

@sailendrabathi

Copy link
Copy Markdown

Adds backBufferDurationMs to video_player_platform_interface

This PR has only the platform interface package changes from the main PR: #11810.

Following PR split as per Changing federated plugins

Pre-Review Checklist

  • I read the [Contributor Guide] and followed the process outlined there for submitting PRs.
  • I read the [AI contribution guidelines] and understand my responsibilities, or I am not using AI tools.
  • I read the [Tree Hygiene] page, which explains my responsibilities.
  • I read and followed the [relevant style guides] and ran [the auto-formatter].
  • I signed the [CLA].
  • The title of the PR starts with the name of the package surrounded by square brackets, e.g. [shared_preferences]
  • I [linked to at least one issue that this PR fixes] in the description above.
  • I followed [the version and CHANGELOG instructions], using [semantic versioning] and the [repository CHANGELOG style], or I have commented below to indicate which documented exception this PR falls under[^1].
  • I updated/added any relevant documentation (doc comments with ///).
  • I added new tests to check the change I am making, or I have commented below to indicate which [test exemption] this PR falls under[^1].
  • All existing and new tests are passing.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces backBufferDurationMs to VideoPlayerOptions to configure ExoPlayer's back buffer duration on Android, and adds videoPlayerOptions to VideoCreationOptions. Feedback suggests updating the assertion to allow a value of 0 (enabling developers to disable back buffering) and correcting the markdown spacing in the documentation comment for proper bold rendering.

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
});
this.backBufferDurationMs,
}) : assert(
backBufferDurationMs == null || backBufferDurationMs >= 0,

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On non-android implementations, isn't it going to be null?

@sailendrabathi sailendrabathi Jun 19, 2026

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I didn't get you... the assert is that is should be null or non-negative. i.e it cannot be a non-null negative number

final VideoPlayerWebOptions? webOptions;

/// **Android only**. Sets ExoPlayer's back buffer duration in milliseconds.
final int? backBufferDurationMs;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you're asserting it must be non-null, why allow it to be nullable?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The assert is that it can be null or non negative. i.e cannot be a non-null negative number

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants