Skip to content

[video_player_avplay] Runtime ADAPTIVE_INFO BITRATES does not change active bitrate (single VideoTrack + AVAILABLE_BITRATE ladder) #1074

Description

@alensh12

Summary

For adaptive HLS/DASH streams, PlusPlayer exposes multiple bitrates via
StreamingPropertyType.availableBitrate, but videoTracks often returns only
one track. Setting StreamingPropertyType.adaptiveInfo with
BITRATES=<value> during PLAYING/PAUSED does not change the active
rendition (active track bitrate stays at the highest level).

We need a supported API to lock / unlock ABR quality at runtime when only
a single VideoTrack is exposed.

Related PlusPlayer update:
#781
(Set ABR property : toggle bitrate change functionality) — this appears to
be an engine-side ABR on/off capability, but there is still no documented Dart
API that successfully forces a specific bitrate mid-playback for single-track
ABR streams.

Environment

  • Package: video_player_avplay (e.g. 0.8.13)
  • Platform: Tizen TV (PlusPlayer)
  • Stream type: HLS / DASH (adaptive)
  • Same stream on ExoPlayer (Android): multiple video tracks / formats are listed
  • On PlusPlayer: videoTracks.length == 1, but AVAILABLE_BITRATE lists N levels

Observed behavior

  1. After prepare/play:

    • getStreamingProperty(availableBitrate)
      249976:399988:799976:1499923:2499893:4499833
    • videoTracks1 item:
      id=0 1920x1080 bitrate=4499833 mime=video/x-h264_tz
  2. During playback, call:

    controller.setStreamingProperty(
      StreamingPropertyType.adaptiveInfo,
      'BITRATES=249976', // or other ladder value
    );

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions