Clause 13 of TS 26.512 describes the Media Stream Handler APIs at reference point M7.
Problem description
The Media Player methods listed in clause 13.2.3 of TS 26.512 are insufficient for Background Data Transfer cases. There currently exists no explicit method to instruct a media player to begin download of the whole of a given media session without also initiating playback.
Currently, the preload() method defined in clause 13.2.3.4 stipulates the following:
An 5GMSd-Aware Application calls preload() to cause the player to begin streaming the media as set by the attach() method in preparation for playing.
(...)
The Access Client schedules and generates requests for the relevant media segments based on the ABR Controller information, as well as the throughput estimation and downloads this media.
The Segments are downloaded from the corresponding URLs through reference point M4d earliest at the segment availability start time of the Segments.
The Segments ate appropriately appended to the track buffers as established according to Media Playback Platform and Content Decryption APIs, following the description in TS 26.511 [35] for playback requirements.
(...) For static services, the content is loaded from the beginning up to a suitable buffer duration, possibly as configured, and then downloading is stopped.
This implies that the Media Player can only download up to a pre-determined buffer duration. While this could be construed as the whole duration of a given media session in the Background Data Transfer case, this is not explicitly defined anywhere and is open to interpretation.
Suggested solution
A new precache() method should be defined which:
Requests relevant media segments
Caches them for future playback
The play() method should then be modified to include reference to these pre-cached media segments when the media session playback begins during or after the completion of the Background Data Transfer session.
Context
Clause 13 of TS 26.512 describes the Media Stream Handler APIs at reference point M7.
Problem description
The Media Player methods listed in clause 13.2.3 of TS 26.512 are insufficient for Background Data Transfer cases. There currently exists no explicit method to instruct a media player to begin download of the whole of a given media session without also initiating playback.
Currently, the preload() method defined in clause 13.2.3.4 stipulates the following:
(...)
This implies that the Media Player can only download up to a pre-determined buffer duration. While this could be construed as the whole duration of a given media session in the Background Data Transfer case, this is not explicitly defined anywhere and is open to interpretation.
Suggested solution
A new precache() method should be defined which:
The play() method should then be modified to include reference to these pre-cached media segments when the media session playback begins during or after the completion of the Background Data Transfer session.