SERVERSIDE.AI
  • Welcome to serverside.ai
  • Getting Started
    • Prerequisites
    • Onboarding Guide
      • Serverside.ai: Create an account
      • Prepare content source
        • Encoding specification
        • Packaging specification
        • Ad-Marker specification
          • SSAI LIVE - SCTE35
          • SSAI VoD - AdCuePoints
      • Request SSAI enabled stream
    • Features
  • Content Source
    • Encoding
    • Packaging
      • HLS
      • DASH
    • Protection
    • Ad-Marker Specifications
  • Video Player/App
    • Live - DASH/HLS
    • VOD - DASH/HLS
    • VAST Tracking
      • Live - DASH
      • Live - HLS
      • VOD - DASH/HLS
      • ClientSideTracking SDK
    • Timeshift/Startover for LIVE
    • Playlist size for LIVE
    • PauseLiveTV
  • Ad-Server Integration
    • Ad-Server Parameter
      • Equativ/ SmartAdServer
      • Freewheel
      • Google Ad Manager
      • SpotX
    • GVA - Generic VAST Adapter
      • GVA - Configuration
    • 3rd Party Audience Data Integration/DMP
  • Ad Media Condition and Delivery
    • Ad Media - Origin integration
    • Ad Media - CDN integration
    • Prefetch API
  • Manual - User Interface
    • Account
    • Channels/Streams
    • Reports
    • Assets
  • REST API
    • Channels
      • API routes - Channels
      • VOD Channels
      • Detailed channel analysis errors
    • Reports
      • API Routes - reports
    • Playlists
    • Error responses for all routes
    • Further Documentation
  • Support
    • About support case management
    • Creating a case
    • Case language
    • Case processing
    • Booking a meeting
    • Requesting elevated attention
    • Closing a case
  • FAQ - Questionnaire - Glossary
    • Q&A
    • Questionnaire
    • Glossary
    • Files
  • Quality of Service
  • Release Notes
    • Version 2.1.0.x
    • Version 2.0.7.x
    • Version 2.0.6.x
    • Version 2.0.5.x
Powered by GitBook
On this page
  • Creating or updating an mRSS feed
  • POST mRSS
  • Identifier for Advertising (IFA)
  • VoD Channel Creation
  • mRSS - Template
  • mRSS [simple - .mp4]
  • mRSS [extended - DASH/HLS without AdCuePoint]
  • mRSS [extended - DASH/HLS with AdCuePoint]
  1. REST API
  2. Channels

VOD Channels

VOD channels need extra parameters saved with them, and also need an a playlist (mRSS) to be created before they can be viewed. Here you will find guidance on setting up VOD channels and playlists.

Creating or updating an mRSS feed

POST mRSS

POST https://live.serverside.ai/ad-aggregation-service/mrss/channel/:id

Path Parameters

Name
Type
Description

id

string

The Channel's id (uuid)

Headers

Name
Type
Description

api-key

string

UUID

Request Body

Name
Type
Description

url

string

URL to the mRSS feed

context

string

e.g: 'web'

deilverytypes

array

Specifies the delivery type. Can only be 'hls' or 'dash' (not both at the same time). e.g. ['hls']

ifa

string

Identifier for Advertising - see link below.

{
 "dash": {
  "url": "http://localhost:3002/mpds/b435da54-f8a2-497f-b0a3-8411e94e56d1.mpd",
  "clips": [
   {
    "category": "intro",
    "titleId": null,
    "title": "intro",
    "duration": 4000
   },
   {
    "category": "ad",
    "titleId": "Ferrero_Love_Brands_WM_2018_4_Praemienmov",
    "title": "mov.ad instream ad via adition : 11244",
    "duration": 15000
   },
   {
    "category": "outro",
    "titleId": null,
    "title": "outro",
    "duration": 4000
   },
   {
    "category": null,
    "titleId": null,
    "title": "15 Fakten zu den MIGHTY MORPHIN POWER RANGERS!",
    "duration": 11520
   }
  ]
 }
}

Request example body

{
    "url": "http://localhost:3003/samples/playlists/mrss/mrss-cuepoints-extended-simple.xml",
    "context": "web",
    "deliverytypes": [ "dash" ],
    "ifa": "6f3f587acc245e113eba8eb06bad1486"
}

VoD Channel Creation

Ad-Source params that are special for VoD Channels (channel.adSource.params)

 params: {
    "generic": {
      "VPI": "MP4",
      "media_transcoding": "high",
      "ssai[enabled]": 1,
      "ssai[vendor]": ""
    },
    "context": {
      "web": {
        "content_page_url": ""
    },
    "app": {
      "app[bundle]": ""
    }
  }

mRSS - Template

mRSS [simple - .mp4]

<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:media="http://search.yahoo.com/mrss/" version="2.0">
 <channel>
  <item>
   <title>VoD Playlist</title>
   <media:category>ad</media:category>
   <media:content type="video/mp4" url="https://hostname/vod/contents/check/25s_ISVA.mp4"/>
  </item>
 </channel>
</rss>

mRSS [extended - DASH/HLS without AdCuePoint]

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:ad="http://ssai.nowtilus.tv/mrss/" xmlns:media="http://search.yahoo.com/mrss/">
 <channel>
  <title>VoD Playlist</title>
  <link></link>
  <description>Intro</description>
  <item>
   <title>Hinter den Kulissen</title>
   <media:content url="https://hostname/6671a1574df08e28392a140713b9d7c5.jpeg" medium="image"></media:content>
   <media:content url="https://hostname/vod/L2QfSeA81Qg/playlist_hd.m3u8" type="application/vnd.apple.mpegurl"></media:content>
   <media:content url="https://hostname/vod/L2QfSeA81Qg/HD_manifest.mpd" type="application/dash+xml"></media:content>
  </item>
</channel>
</rss>

mRSS [extended - DASH/HLS with AdCuePoint]

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:ad="http://ssai.nowtilus.tv/mrss/" xmlns:media="http://search.yahoo.com/mrss/">
 <channel>
  <title>VoD Playlist</title>
  <link></link>
  <description>Intro</description>
  <item>
   <title>Hinter den Kulissen</title>
   <media:content url="https://hostname/6671a1574df08e28392a140713b9d7c5.jpeg" medium="image"></media:content>
   <media:content url="https://hostname/vod/L2QfSeA81Qg/playlist_hd.m3u8" type="application/vnd.apple.mpegurl"></media:content>
   <media:content url="https://hostname/vod/L2QfSeA81Qg/HD_manifest.mpd" type="application/dash+xml"></media:content>
   <ad:cuepoints>
    <cuepoint id="adpod-0">
     <splicetime>0</splicetime>
     <maxcount>2</maxcount>
     <duration>45</duration>
     <intro type="application/vnd.apple.mpegurl" url="https://hostname/vod/4O5_sMiF1Qg/playlist_hd.m3u8"></intro>
     <intro type="application/dash+xml" url="https://hostname/vod/4O5_sMiF1Qg/HD_manifest.mpd"></intro>
     <outro type="application/vnd.apple.mpegurl" url="https://hostname/vod/x7OmjR2I1Qg/playlist_hd.m3u8"></outro>
     <outro type="application/dash+xml" url="https://hostname/vod/x7OmjR2I1Qg/HD_manifest.mpd"></outro>
    </cuepoint>
   </ad:cuepoints>
  </item>
</channel>
</rss>

Cuepoint

Field

Type

Mandatory

Description

cuepoint id =

String

yes

name / id for cuepoint

splicetime

Integer

yes

0= pre-roll

-1= post-roll

<number> splicetime in milliseconds for mid-roll

maxcount

Integer

no

Maximum number of ads for the given ad break

duration

Integer

yes

Ad break duration in seconds

PreviousAPI routes - ChannelsNextDetailed channel analysis errors

Last updated 5 years ago

To create a channel via the Serverside.ai that is suitable to serve ads you have to make sure to include the related config. Seefor general information.

Identifier for Advertising (IFA)
Channels POST