-
Notifications
You must be signed in to change notification settings - Fork 30.3k
[video_player] Support adaptive bitrate streaming (ABR / dynamic quality switching) #183941
Copy link
Copy link
Open
flutter/packages
#11325Labels
📜Issue was posted to Discord. Remove to have the issue reannounced. (For "design doc", "emergency")Issue was posted to Discord. Remove to have the issue reannounced. (For "design doc", "emergency")P2Important issues not at the top of the work listImportant issues not at the top of the work listc: proposalA detailed proposal for a change to FlutterA detailed proposal for a change to Flutterdesign docTracks a design discussion documentTracks a design discussion documentp: video_playerThe Video Player pluginThe Video Player pluginpackageflutter/packages repository. See also p: labels.flutter/packages repository. See also p: labels.platform-androidAndroid applications specificallyAndroid applications specificallyplatform-iosiOS applications specificallyiOS applications specificallyteam-ecosystemOwned by Ecosystem teamOwned by Ecosystem teamtriaged-ecosystemTriaged by Ecosystem teamTriaged by Ecosystem team
Metadata
Metadata
Assignees
Labels
📜Issue was posted to Discord. Remove to have the issue reannounced. (For "design doc", "emergency")Issue was posted to Discord. Remove to have the issue reannounced. (For "design doc", "emergency")P2Important issues not at the top of the work listImportant issues not at the top of the work listc: proposalA detailed proposal for a change to FlutterA detailed proposal for a change to Flutterdesign docTracks a design discussion documentTracks a design discussion documentp: video_playerThe Video Player pluginThe Video Player pluginpackageflutter/packages repository. See also p: labels.flutter/packages repository. See also p: labels.platform-androidAndroid applications specificallyAndroid applications specificallyplatform-iosiOS applications specificallyiOS applications specificallyteam-ecosystemOwned by Ecosystem teamOwned by Ecosystem teamtriaged-ecosystemTriaged by Ecosystem teamTriaged by Ecosystem team
Problem
The current video_player plugin relies on native player ABR (ExoPlayer / AVPlayer), but this does not handle all real-world cases of network degradation.
In testing, removing Dart-side adaptive logic resulted in:
This suggests native ABR alone is insufficient without app-level feedback.
Proposal
Introduce adaptive bitrate control via:
Why this is needed
Platforms affected
Proposal Outcome
Related
Design doc will be attached for review.