Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for the latest SA format of the R&S transmitter #45

Open
dsilhavy opened this issue Nov 17, 2023 · 0 comments
Open

Support for the latest SA format of the R&S transmitter #45

dsilhavy opened this issue Nov 17, 2023 · 0 comments
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@dsilhavy
Copy link
Contributor

Description

The MBMS MW currently supports multiple different Service Announcement formats that are used for broadcast, unicast and dynamic switching between the two delivery formats. This is documented here: https://github.com/5G-MAG/Getting-Started/wiki/Configuration-Quick-Start-Guide#different-sa-formats.

The goal of this issue is to adjust the implementation to support the SA format that is used by the Rohde & Schwarz transmitter. The outdated formats shall be removed from the implementation to reduce complexity.

An example SA as provided by @haudiobe

MIME-Version: 1.0
Content-Type: multipart/related; 
	boundary="----=_Part_10116_1487448559.1481634301222"; type= "application/mbms-envelope+xml"
Content-Description: LTE TBS Service Announcement generated Tue Dec 13 13:05:01 UTC 2016

------=_Part_10116_1487448559.1481634301222
Content-Type: application/mbms-envelope+xml
Content-Transfer-Encoding: 7bit
Content-Location: http://10.2.19.249/fragments/envelope.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<metadataEnvelope xmlns="urn:3gpp:metadata:2005:MBMS:envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:3gpp:metadata:2005:MBMS:envelope MetadataEnvelope.xsd">
    <item metadataURI="http://10.2.19.249/Test/Test/Test/usdBundle.xml" version="1" validFrom="2016-12-13T09:12:50.738Z" validUntil="2016-12-13T20:15:00.000Z" contentType="application/mbms-user-service-description+xml"/>
    <item metadataURI="http://10.2.19.249/Test/Test/Test.sdp" version="1" validFrom="2016-12-13T09:12:50.738Z" validUntil="2016-12-13T20:15:00.000Z" contentType="application/sdp"/>
    <item metadataURI="http://10.2.19.249/Test/Test/Test/schedule.xml" version="1" validFrom="2016-12-13T09:12:50.738Z" validUntil="2016-12-13T20:15:00.000Z" contentType="application/mbms-schedule+xml"/>
    <item metadataURI="http://10.2.19.249/Test/Test/Test/unified.mpd" version="2" validFrom="2016-12-13T09:12:50.738Z" validUntil="2016-12-13T20:15:00.000Z" contentType="application/dash+xml"/>
    <item metadataURI="http://10.2.19.249/Test/Test/Test/dash.mpd" version="2" validFrom="2016-12-13T09:12:50.738Z" validUntil="2016-12-13T20:15:00.000Z" contentType="application/dash+xml"/>
    <item metadataURI="http://10.2.19.249/Test/Test/Test/0/video_00/init.mp4" version="2" validFrom="2016-12-13T09:12:50.738Z" validUntil="2016-12-13T20:15:00.000Z" contentType="video/3gpp"/>
    <item metadataURI="http://10.2.19.249/Test/Test/Test/1/audio_01/init.mp4" version="2" validFrom="2016-12-13T09:12:50.738Z" validUntil="2016-12-13T20:15:00.000Z" contentType="video/3gpp"/>
</metadataEnvelope>

------=_Part_10116_1487448559.1481634301222
Content-Type: application/mbms-user-service-description+xml
Content-Transfer-Encoding: 7bit
Content-Location: http://10.2.19.249/Test/Test/Test/usdBundle.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<bundleDescription xmlns="urn:3GPP:metadata:2005:MBMS:userServiceDescription" xmlns:ns2="urn:3GPP:metadata:2007:MBMS:userServiceDescription" xmlns:ns3="urn:3GPP:metadata:2008:MBMS:userServiceDescription" xmlns:ns4="urn:3GPP:metadata:2013:MBMS:userServiceDescription" xmlns:ns5="urn:3gpp:metadata:2009:MBMS:schemaVersion" xmlns:ns6="urn:3GPP:metadata:2009:MBMS:userServiceDescription" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:3GPP:metadata:2005:MBMS:userServiceDescription USD.xsd">
    <userServiceDescription serviceId="urn:bmc:10113:Test:Test:Test" ns2:serviceClass="urn:oma:bcast:ext_bsc_embms:ServiceClass_1:1.0">
        <name lang="EN">Test/Test</name>
        <serviceLanguage>EN</serviceLanguage>
        <deliveryMethod associatedProcedureDescriptionURI="http://10.2.19.249/Test/Test/Test/adpd.xml" sessionDescriptionURI="http://10.2.19.249/Test/Test/Test.sdp">
            <ns5:delimiter>0</ns5:delimiter>
            <ns4:broadcastAppService>
                <ns4:basePattern>http://10.2.19.249/Test/Test/Test/1/audio_01/</ns4:basePattern>
                <ns4:basePattern>http://10.2.19.249/Test/Test/Test/0/video_00/</ns4:basePattern>
            </ns4:broadcastAppService>
            <ns4:unicastAppService>
                <ns4:basePattern>http://10.2.19.249/Test/Test/Test/1/audio_01/</ns4:basePattern>
                <ns4:basePattern>http://10.2.19.249/Test/Test/Test/0/video_00/</ns4:basePattern>
            </ns4:unicastAppService>
            <ns5:delimiter>0</ns5:delimiter>
        </deliveryMethod>
        <ns6:mediaPresentationDescription>
            <ns6:mpdURI>http://10.2.19.249/Test/Test/Test/dash.mpd</ns6:mpdURI>
        </ns6:mediaPresentationDescription>
        <ns6:schedule>
            <ns6:scheduleDescriptionURI>http://10.2.19.249/Test/Test/Test/schedule.xml</ns6:scheduleDescriptionURI>
        </ns6:schedule>
        <ns6:availabilityInfo>
            <ns6:infoBinding>
                <ns6:serviceArea>1001</ns6:serviceArea>
                <ns6:serviceArea>1000</ns6:serviceArea>
                <ns6:radioFrequency>2000</ns6:radioFrequency>
            </ns6:infoBinding>
        </ns6:availabilityInfo>
        <ns5:delimiter>0</ns5:delimiter>
        <ns4:appService appServiceDescriptionURI="http://10.2.19.249/Test/Test/Test/unified.mpd" mimeType="application/dash+xml"/>
        <ns5:delimiter>0</ns5:delimiter>
    </userServiceDescription>
    <ns5:schemaVersion>2</ns5:schemaVersion>
</bundleDescription>

------=_Part_10116_1487448559.1481634301222
Content-Type: application/sdp
Content-Transfer-Encoding: 7bit
Content-Location: http://10.2.19.249/Test/Test/Test.sdp

v=0
o=- 0 0 IN IP6 fe80:0:0:0:221:28ff:fef0:d1ce
s=File delivery session 1
t=0 0
a=mbms-mode:broadcast-mbsfn 264020284276870
a=source-filter: incl IN IP6 * fe80:0:0:0:221:28ff:fef0:d1ce
a=flute-tsi:5
m=application 1024 FLUTE/UDP 0
c=IN IP6 ff05:0:0:0:0:0:0:6

------=_Part_10116_1487448559.1481634301222
Content-Type: application/mbms-schedule+xml
Content-Transfer-Encoding: 7bit
Content-Location: http://10.2.19.249/Test/Test/Test/schedule.xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ns2:scheduleDescription xmlns="urn:3gpp:metadata:2009:MBMS:schemaVersion" xmlns:ns2="urn:3gpp:metadata:2011:MBMS:scheduleDescription" xmlns:ns3="urn:3gpp:metadata:2012:MBMS:scheduleDescription" xmlns:ns4="urn:3gpp:metadata:2013:MBMS:scheduleDescription" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:3gpp:metadata:2011:MBMS:scheduleDescription ScheduleDescription.xsd">
    <schemaVersion>3</schemaVersion>
    <ns2:serviceSchedule>
        <ns2:sessionSchedule>
            <ns2:start>2016-12-13T13:05:00Z</ns2:start>
            <ns2:stop>2016-12-13T20:00:00Z</ns2:stop>
            <ns2:index>1</ns2:index>
            <delimiter>0</delimiter>
            <delimiter>0</delimiter>
        </ns2:sessionSchedule>
    </ns2:serviceSchedule>
</ns2:scheduleDescription>

------=_Part_10116_1487448559.1481634301222
Content-Type: application/dash+xml
Content-Transfer-Encoding: 7bit
Content-Location: http://10.2.19.249/Test/Test/Test/unified.mpd

<?xml version="1.0" encoding="UTF-8"?>

<MPD xmlns="urn:mpeg:DASH:schema:MPD:2011" xmlns:ns2="http://www.w3.org/1999/xlink" profiles="urn:hbbtv:dash:profile:isoff-live:2012,urn:mpeg:dash:profile:isoff-live:2011" type="dynamic" availabilityStartTime="2016-12-13T13:01:32Z" mediaPresentationDuration="PT6H58M28.000S" minimumUpdatePeriod="PT30.00S" minBufferTime="PT10.00S" timeShiftBufferDepth="PT5M0.000S" publishTime="2016-12-13T13:01:22Z">
  <Period id="0" start="PT0S">
    <BaseURL>http://10.2.19.249/Test/Test/Test/</BaseURL>
    <AdaptationSet id="0" par="16:9" maxWidth="1280" maxHeight="720" maxFrameRate="25/1" segmentAlignment="true">
      <SegmentTemplate media="0/$RepresentationID$/chunk_$Number$.mp4" initialization="0/$RepresentationID$/init.mp4" duration="10000000" startNumber="1" timescale="10000000"/>
      <Representation id="video_00" bandwidth="2000000" width="1280" height="720" sar="1:1" frameRate="25/1" mimeType="video/mp4" codecs="avc1.64001f" startWithSAP="1" scanType="progressive"/>
    </AdaptationSet>
    <AdaptationSet id="1" segmentAlignment="true">
      <SegmentTemplate media="1/$RepresentationID$/chunk_$Number$.mp4" initialization="1/$RepresentationID$/init.mp4" duration="10000000" startNumber="1" timescale="10000000"/>
      <Representation id="audio_01" bandwidth="64000" audioSamplingRate="48000" mimeType="audio/mp4" codecs="mp4a.40.2" startWithSAP="1">
        <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
      </Representation>
    </AdaptationSet>
  </Period>
</MPD>


------=_Part_10116_1487448559.1481634301222
Content-Type: application/dash+xml
Content-Transfer-Encoding: 7bit
Content-Location: http://10.2.19.249/Test/Test/Test/dash.mpd

<?xml version="1.0" encoding="UTF-8"?>

<MPD xmlns="urn:mpeg:DASH:schema:MPD:2011" xmlns:ns2="http://www.w3.org/1999/xlink" profiles="urn:hbbtv:dash:profile:isoff-live:2012,urn:mpeg:dash:profile:isoff-live:2011" type="dynamic" availabilityStartTime="2016-12-13T13:01:32Z" mediaPresentationDuration="PT6H58M28.000S" minimumUpdatePeriod="PT30.00S" minBufferTime="PT10.00S" timeShiftBufferDepth="PT5M0.000S" publishTime="2016-12-13T13:01:22Z">
  <Period id="0" start="PT0S">
    <AdaptationSet id="0" par="16:9" maxWidth="1280" maxHeight="720" maxFrameRate="25/1" segmentAlignment="true">
      <SegmentTemplate media="0/video_00/chunk_$Number$.mp4" initialization="0/video_00/init.mp4" duration="10000000" startNumber="1" timescale="10000000"/>
      <Representation id="video_00" bandwidth="2000000" width="1280" height="720" sar="1:1" frameRate="25/1" mimeType="video/mp4" codecs="avc1.64001f" startWithSAP="1" scanType="progressive"/>
    </AdaptationSet>
    <AdaptationSet id="1" segmentAlignment="true">
      <SegmentTemplate media="1/audio_01/chunk_$Number$.mp4" initialization="1/audio_01/init.mp4" duration="10000000" startNumber="1" timescale="10000000"/>
      <Representation id="audio_01" bandwidth="64000" audioSamplingRate="48000" mimeType="audio/mp4" codecs="mp4a.40.2" startWithSAP="1">
        <AudioChannelConfiguration schemeIdUri="urn:mpeg:dash:23003:3:audio_channel_configuration:2011" value="2"/>
      </Representation>
    </AdaptationSet>
  </Period>
</MPD>


------=_Part_10116_1487448559.1481634301222
Content-Type: video/3gpp
Content-Transfer-Encoding: base64
Content-Location: http://10.2.19.249/Test/Test/Test/0/video_00/init.mp4

AAAAHGZ0eXBkYXNoAAAAAWlzb21hdmMxZGFzaAAAAvFtb292AAAAbG12aGQAAAAAAAAAAAAAAAAA
mJaAAAAAAAABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAKG12ZXgAAAAgdHJleAAAAAAAAAABAAAA
AQAAAAAAAAAAAAAAAAAAAlV0cmFrAAAAXHRraGQAAAAHAAAAAAAAAAAAAAABAAAAAP////8AAAAA
AAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAABQAAAALQAAAA
AAHxbWRpYQAAACBtZGhkAAAAAAAAAAAAAAAAAJiWgAAAAABVxAAAAAAAJmhkbHIAAAAAAAAAAHZp
ZGUAAAAAAAAAAAAAAAB2aWRlbwAAAAGjbWluZgAAABR2bWhkAAAAAQAAAAAAAAAAAAAAJGRpbmYA
AAAcZHJlZgAAAAAAAAABAAAADHVybCAAAAABAAABY3N0YmwAAAEXc3RzZAAAAAAAAAABAAABB2F2
YzEAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAFAALQAEgAAABIAAAAAAAAAAEAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAY//8AAACxYXZjQwFkAB//4QCWZ2QAH62UKRhCjBESGAgEQIEC
hEBSFAiEAKAP4PgEgBhAwAcIG5QWrNwUBgMgSIECEBn+BEBACEChAgNSFIR0Z6FHVmMWQshjokrM
RkECSoxBUWUUIHDxISDUNg4HDwI0DNEf9NNGOSUxjkMcphgmIiYgjECBIlDBAyNEhgJDBoTBMGIZ
B4EAiBMgWtEAUAW7AUoCAgPFAQAEaO68sP34+AAAAAAQc3R0cwAAAAAAAAAAAAAAEHN0Y28AAAAA
AAAAAAAAABBzdHNjAAAAAAAAAAAAAAAUc3RzegAAAAAAAAAAAAAAAA==
------=_Part_10116_1487448559.1481634301222
Content-Type: video/3gpp
Content-Transfer-Encoding: base64
Content-Location: http://10.2.19.249/Test/Test/Test/1/audio_01/init.mp4

AAAAHGZ0eXBkYXNoAAAAAWlzb21hdmMxZGFzaAAAAjFtb292AAAAbG12aGQAAAAAAAAAAAAAAAAA
mJaAAAAAAAABAAABAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAEAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAAAAKG12ZXgAAAAgdHJleAAAAAAAAAACAAAA
AQAAAAAAAAAAAAAAAAAAAZV0cmFrAAAAXHRraGQAAAAHAAAAAAAAAAAAAAACAAAAAP////8AAAAA
AAAAAAAAAAABAAAAAAEAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAA
AAExbWRpYQAAACBtZGhkAAAAAAAAAAAAAAAAAJiWgAAAAABVxAAAAAAAJmhkbHIAAAAAAAAAAHNv
dW4AAAAAAAAAAAAAAABhdWRpbwAAAADjbWluZgAAABBzbWhkAAAAAAAAAAAAAAAkZGluZgAAABxk
cmVmAAAAAAAAAAEAAAAMdXJsIAAAAAEAAACnc3RibAAAAFtzdHNkAAAAAAAAAAEAAABLbXA0YQAA
AAAAAAABAAAAAAAAAAAAAgAQAAAAALuAAAAAAAAnZXNkcwAAAAADGQAAAAQRQBUAAl4AAnWAAAJm
uAUCEZAGAQIAAAAQc3R0cwAAAAAAAAAAAAAAEHN0Y28AAAAAAAAAAAAAABBzdHNjAAAAAAAAAAAA
AAAUc3RzegAAAAAAAAAAAAAAAA==
------=_Part_10116_1487448559.1481634301222--
@dsilhavy dsilhavy added the enhancement New feature or request label Nov 17, 2023
@dsilhavy dsilhavy added this to the 1.0.0 milestone Nov 17, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants