Menu

Opera TV Snap Data Format Requirements

June 9th, 2016

Table of Contents

Introduction

Opera TV Snap is an industry-first, end-to-end solution that allows content publishers to create and submit a Smart TV app to the Opera TV Store quickly and easily, for free. See the Opera TV Snap page for more details.

Basics

Specifications you should be aware of before preparing a video feed for the TV Snap Template:

Opera MRSS

For Opera TV Snap Template we use MRSS subset of tags.

  • MRSS may contain more tags than TV Snap Template supports, but they will be ignored.
  • For TV Snap 2.0 we don’t use any namespace in our feed parser, but media namespace is recommended for defining content.

Feed example

Required tags are:

  • <rss> as a top level tag.
  • One <channel> as a child of <rss>.
  • <channel> must contain <title> and at least one <item>.
  • Each <item> must be a child of <channel>.

Optional tags:

  • <link rel="next"> with proper href should point to the next page of results.
  • Tags like <title> or <description> and others not mentioned before won’t be used.

Feed structure:

<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title></title>
		<descrption></description>
		<item><!-- See example in next section --></item>
		<item><!-- … --></item>
		<!-- More items -->
		<link rel="next" href="[next results page]"/>
	</channel>
</rss>

Item example

Required tags are:

  • <media:title>
  • <media:content> with correct url & type.
    • Content might also contain duration & bitrate attributes.
    • Duration should be set as a number of seconds.
    • For widest device support and best user experience use mp4 video type with bitrate up to 4000 kbit (see our Audio & Video Support).
  • <media:thumbnail> with correct url pointing to an image.
    • 256 × 144 px format is recommended (see Basics for more info)
    • If there is more than one thumbnail then best will be selected based on width attribute (if present).

Optional tags:

  • <media:category> will be used as a section name for videos.
    • There might be more than one category, but only first one will be used.
    • If category is empty or not set then category based on <pubDate> will be created (eg. “March 2016”).
  • <media:description> if exist it will be displayed as description for the video.
  • <pubDate> will be used to group videos if <category> is not set.
    • If there are less than 20 videos monthly then periods are merged (eg. January — March 2016).
    • This attribute is also used to create Most Recent category (latest 20 videos) — if not defined then category is hidden.

Item structure:

<item>
	<media:title>
		Sam Smoothy Follows His Fathers
		Footsteps In The Andes | Lost…
	</title>
	<media:description>
		Many years ago, Sam Smoothy’s father
		climbed in the Andes mountains…
	</description>
	<media:category>Skiing</category>
	<pubDate>Mon, 21 Mar 2016 11:00:01 GMT</pubDate>
	<media:content url="video.mp4" type="video/mp4"
		bitrate="2200" duration="772"/>
	<media:thumbnail url="thumb.jpg" width="288" height="162"/>
</item>

Visualization

Below is example application look with defined categories. Background and thumbnail of this app (right top corner) is provided through the submission panel and is not a part of Opera MRSS format.

Example of TV Snap application without defined categories.