MPEG-DASH (Dynamic Adaptive Streaming over HTTP, ISO/IEC 23009-1:2012) is a vendor free format that is used to stream content through HTTP requests.
MPEG-DASH uses playlists called Media Presentation Description that end with .mpd extension.
When to use it ?
Multi-period is usually used to add content to a video, such as advertising or to split your video into different content.
Ads content
Adding an ad to a dash video is implemented using multi-period, if you want to monetize your video you can use the notion of ad insertion, for example you can add a 20-second ad every 30 minutes on a live stream.
Below is a diagram showing a multi-period video containing ads
Split your video into different content
You can use multi-period to divide your video into several parts.
For example:
- Period 1 : introductory technology presentation video,
- Period 2 : introductory speech,
- Period 2 : in-depth presentation of the technology
- Period 4 : an example of how the technology is used
What is Dash multi period ?
Multi-period can be used with VOD or Live video.
A dash media presentation description is split into parts called periods.
If the manifest contains a single period then it is considered to be the whole video, but if a manifest contains several periods then each period represents a piece of the video.
The player must parse the manifest and determine the correct period to use and then change period during playback according to the start dates of the periods.
For example with the following manifest (source :
https://reference.dashif.org/dash.js/nightly/samples/dash-if-reference-player/index.html)
<MPD xmlns="urn:mpeg:dash:schema:mpd:2011" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:dash:schema:mpd:2011 DASH-MPD.xsd" profiles="urn:mpeg:dash:profile:isoff-live:2011,http://dashif.org/guidelines/dash-if-simple" type="dynamic" availabilityStartTime="1970-01-01T00:00:00Z" publishTime="1970-01-01T00:00:00Z" minimumUpdatePeriod="PT2S" minBufferTime="PT2S" timeShiftBufferDepth="PT1M" maxSegmentDuration="PT2S"> <ProgramInformation> <Title>Basic MPD with 640x480@30 video at 300kbp and 48kbps audio using SegmentTemplate with `$Number$`</Title> </ProgramInformation> <Period id="P28325691" start="PT472094H51M"> ...... </Period> <Period id="P28325692" start="PT472094H52M"> ....... </Period> <Period id="P28325693" start="PT472094H54M"> ....... </Period> <UTCTiming schemeIdUri="urn:mpeg:dash:utc:http-iso:2014" value="https://time.akamai.com/?isoms"></UTCTiming> </MPD>
In the previous example, the player must change the period after one minute between P28325691 and P28325692 (because PT472094H52M – PT472094H51M = 1 min) and 2 minutes between P28325692 and P28325693 (because PT472094H54M – PT472094H52M = 2 min), the period change may be higher or lower depending on the different periods .
If the date when parsing manifest for the first time is Thu Nov 09 2023 15:51:15 GMT+0000 the player must choose the period which id is P28325691 because:
- PT472094H51M = 472094 * 3600000 + 51 * 60000 = 1699541460000 ms since epoch
- PT472094H52M = 472094 * 3600000 + 52 * 60000 = 1699541520000 ms since epoch
- Thu Nov 09 2023 15:51:15 GMT+0000 = 1699541475000 ms since epoch So Thu Nov 09 2023 15:51:15 GMT+0000 is between PT472094H51M and PT472094H52M
What’s next
This feature will be available in a future release, stay tuned !
About UbikLoadPack :
- Ubik Load Pack is used by Big players in the Video streaming field
- We provide professional services for Load Testing
- Learn more about our streaming plugin
- Detailed features of UbikLoadPack Streaming Solution
- Get a Free trial
You’ll probably also like:
Recent Posts
- UbikLoadPack Video Streaming Plugin 9.1.5 14 June 2024
- What is DASH multi period and when to use it ? 4 December 2023
- UbikLoadPack Java Serialization Plugin 23 November 2023