Quantcast
Channel: All Forums
Viewing all articles
Browse latest Browse all 28058

Manifest -> Fragments Redirect

$
0
0

Hello,

We want to control the access to the different Fragments of a Smooth Streaming Content during the playback. Using Smooth Streaming each content is divided into Fragments and the player requests each Fragment during the playback.

On our tests, the player is using a standard Manifest of a particular content, where we have set the URL of the source:

<?xml version="1.0" encoding="utf-8"?>
<SmoothStreamingMedia MajorVersion="2" MinorVersion="1" Timescale="10000000" Duration="1202561451">
<StreamIndex Type="audio" Index="0" Chunks="60" QualityLevels="1" Timescale="10000000" Url="http://controlServer/QualityLevels({bitrate})/Fragments(audio={start time}).isma">
<QualityLevel Bitrate="126898" FourCC="AACL" SamplingRate="44100" Channels="2" BitsPerSample="16" PacketSize="4" AudioTag="255" CodecPrivateData="1210" />
<c d="20201360" />
...
<c d="10681179" />
</StreamIndex>
<StreamIndex Type="video" Chunks="62" QualityLevels="1" MaxWidth="480" MaxHeight="272" DisplayWidth="480" DisplayHeight="272" Timescale="10000000" Url="http://controlServer/QualityLevels({bitrate})/Fragments(video={start time}).ismv">
<QualityLevel Index="0" Bitrate="735623" FourCC="H264" MaxWidth="480" MaxHeight="272" CodecPrivateData="00000001674d401eeca0f0474200000300c8000025741e2c5b2c0000000168ebef20" />
<c d="19607843" />
...
<c d="5840634" />
</StreamIndex>
</SmoothStreamingMedia>


When the player tries to get the video/audio Fragments, we get the petition on the control server and it is redirected to the streaming server (we are using a Wowza Streaming Server). The problem is that after the two first Fragments (one of video and other from audio), the player change the source to the streaming server, and not to our server. We think that this is not the standard behaviour, because we are sending 307 from the control server so we expect that the player will ask all the Fragments to the control server and not directly to the streaming server.

The scenario is the following:

Player -> Control Server (Redirect) -> Streaming Server

What we expect:

Each Fragment of the Manifest is obtained from the Control Server, because the player uses the URL tag, which redirects to the Streaming Server.

Player Fragment1 -> Control Server (Redirect) Fragment1 -> Streaming Server
Player Fragment2 -> Control Server (Redirect) Fragment2 -> Streaming Server
Player Fragment3 -> Control Server (Redirect) Fragment3 -> Streaming Server
...

What we get:

The player asks only the first Fragments to the control Server, and after the 303 redirect, asks the following Fragments to the Streaming Server.

Player Fragment1 -> Control Server (Redirect) Fragment1 -> Streaming Server
Player Fragment2 -> Streaming Server
Player Fragment3 -> Streaming Server
...

How can we achieve this? How can we change this behaviour to the standard one? This is a problem with the player, with the Manifest or with the 307 message?

Thank you for your help!

Sergi


Viewing all articles
Browse latest Browse all 28058

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>