Replies: 1 comment
-
Updated the description of this issue with the two main use cases and some example M8 JSON for each case. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Feature description
The 5GMS-Aware Application needs information from the 5GMS Application Provider in order to determine the Media Entry Point (MPD, master .m3u8) hosted on the 5GMS AS. This is provided by a proprietary protocol between the 5GMS Application Provider and the 5GMS-Aware Application using the interface at a reference point M8. The information conveyed via the interface at M8 is dependent on how the Application Provider wishes to manage the media assets. It is typically generated by a Content Management System (CMS) as part of a data feed that populates a content guide user experience.
The information provided via M8 can be used by the Application Provider in two distinct ways:
distributionConfiguration.entryPoint
objects, with relative path details, which are then provided as absolute entry points in the M5 Service Access Information.entryPoints
for a piece of mediadistributionConfiguration.entryPoint
objects in theContentHostingConfiguration
. Entry points for individual VoD catalogue items or linear streams are provided via M8 and there may be multiple different media all using the same Provisioning Session.The information passed at interface at reference point M8 may also describe a mixture of these two approaches, with some media items having their own Provisioning Session and some sharing a common Provisioning Session.
For the use in the 5G-MAG examples we will come up with our own format for the messages at M8.
Single media for a Provisioning Session
When a Provisioning Session is just for a single piece of media (possibly in multiple formats such as DASH and HLS) then the entry points for the media can be provided to the 5GMS Application Function via the
ContentHostingConfiguration
, for example these twoContentHostingConfiguration
s (which for the sake of this example the Application Function will be attaching to Provisioning Sessions 2 & 3 respectively):...and...
This will then allow the 5GMS AF to provide Service Access Information for these two streams via the interface at reference point M5.
For the two examples these would be:
http://rt.5g-mag.com:7778/3gpp-m5/v2/service-access-information/2
...and...
http://rt.5g-mag.com:7778/3gpp-m5/v2/service-access-information/3
Because the
entryPoints
are surfaced in the ServiceAccessInformation, which is retrieved by the Media Session Handler using the interface at reference point M5, it is not necessary to provide these entry points over M8.Therefore the M8 information could look like:
This allows the 5GMS-Aware Application to show the available stream names to the user, allowing them to select one for playback. Once selected the 5GMS-Aware Application will then ask the Media Session Handler to start media session handling for the selected Provisioning Session Id and start playback.
In this sequence, the Media Session Handler selects a suitable
entryPoint
for the Media Stream Handler/Media Player and to ask it to play back that stream. The 5GMS-Aware Application could supply a preferred MIME content type and/or set of profiles as additional parameters to help the Media Session Handler choose a suitable Media Entry Point from those advertised in the Service Access Information.Multiple media for a Provisioning Session
Instead of establishing each piece of media as its own Provisioning Session (and for a VoD service there may be a few hundred thousand pieces of media) it is also possible in the framework for the Application Provider to set up a single Provisioning Session with a Content Hosting Configuration pointing to a top level URL path that can be used for multiple different media located underneath that top level. In this case the Content Hosting Configuration points to a media service rather than an individual piece of media. In such cases, the Content Hosting Configuration (and hence the Service Access Information) does not describe specific Media Entry Points.
For example (for the sake of this example we will attach this to Provisioning Session 1 in the Application Function):
The corresponding Service Access Information, provided by the 5GMS Application Function via the interface at reference point M5 would look like:
(The Service Access Information may also contain properties such as
clientConsumptionReportingConfiguration
for consumption reporting of the media that is played back, so is still useful to the Media Session Handler)Now in this case the M8 information needs to provide the entry points for each piece of media the 5GMS Aware Application will make available, therefore the M8 information could look like:
This M8 information contains multiple (in this case 2) media items all using the same Provisioning Session ID.
The 5GMS-Aware Application will present the media items to the user in much the same way it did for the Single media for a Provisioning Session case. When the user selects the media item for playback the 5GMS-Aware Application initialises the Media Session Handler with the Provisioning Session ID for the media. However, in this case it is up to the 5GMS-Aware Application to select a suitable Media Entry Point from the list provided over M8 and to request, via the Media Session Handler API at reference point M6 or directly via the Media Stream Handling API at reference point M7, that the Media Stream Handler (Media Player) begins playback.
Relevant specifications and corresponding sections
26.501 - 5G Media Streaming (5GMS); General description and architecture (Release 17)
26.512 - 5G Media Streaming (5GMS); Protocols (Release 17)
Beta Was this translation helpful? Give feedback.
All reactions