Creating MRSS Feeds for Distribution Partners

ProductVersionEdition
Video CloudLegacy StudioExpress I, Express II, Express III, Professional, Enterprise

Video Cloud has two options for RSS feeds that provide for a broad range of customization. The first we refer to as Simple RSS Feeds. Here's the documentation about Simple RSS Feeds. The feeds can be built based on playlists, players, related videos, most viewed videos, and more.

This page is based on the legacy Media API. You can also generate MRSS feeds using the new CMS API.

A quick overview of your options

Brightcove has two options for RSS feeds that provide for a broad range of customization. The first we refer to as Simple RSS Feeds. Here's the documentation about Simple RSS Feeds. The feeds can be built based on playlists, players, related videos, most viewed videos, and more. There are a couple notable limitations to these feeds. The first is that they are limited to a maximum of 25 items. The second is that you cannot include a URL to the actual video file, so if you are interested in using this for mobile or offline distribution (for example, podcasts), you will need to use our more advanced feeds.

Note: The following information regarding advanced MRSS feeds requires a Video Cloud account with 'Read Media API' access. If you have an Express edition account without this functionality we recommend using the 'Simple RSS Feeds' mentioned above.

Video Cloud's more advanced MRSS feeds are built with our Media API. Here's the documentation about MRSS and the Media API. Using the Media API to generate your feeds gives you many more options for customizing the videos that show up in your feeds. Essentially you have access to the same methods and arguments that developers use to create custom video experiences on a website but instead you are compiling a custom feed. Check out the available video methods. For each method in the Media API Reference, you will find some useful examples towards the bottom of the method description. To see how these examples look in MRSS feed format, simply add output=mrss to the URL. For example:

The following URL will give you a list of videos that match the tag Apes or Monkeys in a raw API output using JSON format:

http://api.brightcove.com/services/library?command=search_videos?any=tags:Apes&any=tags:Monkeys&token=[token]

To view this same query in MRSS format simply add the output=mrss parameter:

http://api.brightcove.com/services/library?command=search_videos&output=mrss&any=tags:Apes&any=tags:Monkeys&token=[token]

Working with video search engines and small distribution partners

To have your content indexed by Brightcove search engine partners like AOL or Blinkx or to distribute content to partners that will be given access to fewer than 100 videos, you should probably use our Simple RSS Feeds. For the search engines this is important, since the advanced feeds that we offer do not include a link to the video on your website, which is required by search engines. For small distribution partners the Simple RSS Feeds are an easy way to give someone access to a specific playlist of content.

Working with distribution partners that will syndicate more than 100 of your video titles

The best way to enable large distribution partners where you will be providing a video player and a feed of content is to use our advanced MRSS feeds and a tag-based approach. For instance, let's say that you want to distribute 400 videos to Brightcove partner Metacafe. First, you'll want to come up with a unique tag to designate which videos in your media library are approved for distribution. This unique tag could be based on the specific partner's name (for example, metacafe) or you might want to use something more generic so that it applies to all of your distribution relationships (for example, approved_for_distribution). You can use the batch editing feature in the Video Cloud Studio Media module to accomplish tagging these 400 videos quite efficiently. Next, get your API read token.

Now we're ready to jump in to the fun stuff! The following feed will return all videos from your library that are tagged metacafe and returns the output in MRSS format:

http://api.brightcove.com/services/library?command=find_videos_by_tags
  &output=mrss&and_tags=metacafe&token=[insert-token]

For performance reasons, Media API calls like this are limited to returning 100 videos at a time. As a result, you'll actually need 4 feeds to have complete access to the 400 videos that you have selected for distribution to Metacafe. To return all 400 videos, add the page_number parameter to the feed URL to cycle through the pages:

Page 2:
http://api.brightcove.com/services/library?command=find_videos_by_tags
  &output=mrss&and_tags=metacafe&page_number=1&token=[insert-token]
Page 3:   
http://api.brightcove.com/services/library?command=find_videos_by_tags
  &output=mrss&and_tags=metacafe&page_number=2&token=[insert-token]
Page 4: 
http://api.brightcove.com/services/library?command=find_videos_by_tags
  &output=mrss&and_tags=metacafe&page_number=3&token=[insert-token]

The other benefit of managing these relationships in this manner is that they only have to process this large index once and then can use the next two feeds to determine what content has been added or deleted from your library.

To find new videos that were added or to update videos that were modified:

This feed is taking the same feed that they originally indexed above and sorting by the most recently modified – they can add videos to their system from this feed until they reach one that they have already previously processed (and has not been modified) and this will get them caught up with changes to your library:

http://api.brightcove.com/services/library?command=find_videos_by_tags
&output=mrss&and_tags=metacafe&sort_by=modified_date
&sort_order=ASC&page_number=1&token=[insert-token]

To find videos that were deleted:

This feed uses the find_modified_videos method to look back to Dec 11th from today and listing all videos that were deleted. Your partner will need to update the "from_date" each time they run this feed to limit the results to the time period since they last ran the feed.

http://api.brightcove.com/services/library?command=find_modified_videos
&output=mrss&from_date=20483280&filter=DELETED&token=[insert-token]

Note is that the from_date field is defined as the timestamp in minutes from the epoch date. Your partners will likely have a way to code this into their workflow, but to understand how this works you can go here: http://www.onlineconversion.com/unix_time.htm Plug in a date, and divide the result by 60 to get the minutes.