Accessibility

Preparing and customizing content in Adobe Media Player

Adobe

 

Note: The following article is adapted from the Adobe Media Player 1.5 Content Developer Kit, available for download from the Adobe Media Player Developer Center home page.

Adobe Media Player provides you the opportunity to deliver video content in the form of Feeds, as well as Enhanced Feeds. Enhanced Feeds contain additional media assets that facilitate unique advertising, branding, measurement, and content protection opportunities.

This article discusses the basics of content customization, and describes how content publishers can customize content using Feeds and Enhanced Feeds.

Content customizing basics

Adobe Media Player is an aggregator for Flash-based FLV and H.264 video content. Adobe Media Player uses RSS to help deliver content for subscription. It allows viewers to discover and subscribe to Internet TV shows and video podcasts, and manage those assets on their computer.

Additionally, Adobe Media Player is tightly integrated with new features of Flash Media Server 3 to support audience measurement, and Flash Media Rights Management Server to support content integrity capabilities. Adobe Media Player also supports an extended XML namespace that facilitates custom branding and advertising features.

Adobe Media Player enables you to deliver:

In a Feed, you can deliver your video to Adobe Media Player in a branded experience (see Figure 1). The branding elements in a Feed, however, are static—they are not subject to change as the viewer watches the video content. Using AMODs in an Enhanced Feed, you can orchestrate the entire viewing experience by changing elements as the viewer watches your video content to, for example, deliver dynamic advertising:

Feed display in Adobe Media Player

Figure 1. Feed display in Adobe Media Player

For more information on Feeds, see "An overview of Feeds" later in this article. For information on Enhanced Feeds, see "An overview of Enhanced Feeds" in Delivering your advertising in Adobe Media Player.

An overview of the content customizing workflow

Perform the following steps to prepare your content for display in Adobe Media Player:

  1. Encode your video content to either FLV, F4V, or H.264, and create an RSS feed of your video content that references these video files. See the section "RSS feed customization" later in this article.
  2. Add the show and episode branding elements you want to include in your Feeds. See Customizing your branding in Adobe Media Player.

Note: Advanced features are also available for advertisements (see Delivering your advertising in Adobe Media Player), measurement (see Measurement basics in Adobe Media Player), content protection (see Applying content protections in Adobe Media Player), and for distributing content over the web (see Distributing content in Adobe Media Player using a website badge). Before attempting to use these advanced features, take some time to ensure you have a good grasp of how to work with basic Feeds.

H.264 and supported file formats

Adobe Media Player supports downloads of the H.264 enclosures and file formats listed in Table 1, along with their corresponding MIME types.

Table 1. Adobe Media Player supported H.264 enclosures and file formats

File extension MIME type
FLV video/x-flv
F4V video/x-f4v
MP4 video/mp4
MP4V video/mp4v-es
M4V video/x-m4v
3GP video/3gpp
3G2, 3GPP2 video/3gpp2
MOV video/quicktime

RSS feed customization

The following checklist provides suggestions for creating and customizing your content into a Feed that could be successfully added to the Adobe Media Player Catalog:

  1. Create a template document for a Feed. The following example shows an RSS feed template using RSS 2.0:
    <?xml version="1.0" encoding="UTF-8"?> 
    <rss version="2.0" xmlns:amp="http://www.adobe.com/amp/1.0" xmlns:media="http://search.yahoo.com/mrss"> 
       <channel> 
          <title></title> 
          <link></link> 
          <description></description> 
          <copyright></copyright> 
          <item> 
             <title></title> 
             <guid isPermaLink="false"></guid> 
             <description></description> 
             <pubDate></pubDate> 
             <enclosure url="" type=""/> <media:thumbnail url=""/> 
          </item> 
       </channel> 
    </rss> 
  2. Fill in the channel-level fields (title, link, description, copyright), which define the core metadata for the Feed.

    Important:Strings for show titles must not exceed 31 characters.

  3. After creating and publishing your branding assets, add the appropriate extension elements to the Feed. For more information on adding branding to your Feed, see Customizing your branding in Adobe Media Player.

    Advanced Metadata and Extensions: Add any additional fields which are relevant to your show:

    • category: Affects how the show is categorized when added to the Catalog.
    • media:credit: Defines the credits displayed in the Show Info screen.
    • media:rating: Indicates if the content is adult in nature.
    • amp:presentAs: Indicates if the show should be presented as a storyline.
  4. For each episode that should appear in the Feed, create a separate item with the given metadata elements (title, unique ID, description, date). Specify the URL for a thumbnail image to represent the episode. If you want to create an orchestrated media experience, create an Enhanced Feed using AMODs. Enhanced Feeds allow you to orchestrate video playback, banner display, logo display, and overlay ad display. If you want to eliminate advertisements from your content display, use either a FLV or H.264 media file (such as MP4) instead of an AMOD. Then, in the XML, specify the URL to the media file—for example, FLV, MP4, AMOD; you can use HTTP for the URL, or use RTMP if you plan to stream content.
  5. If you want to provide multiple representations of the same episode, use the media:group element. Episode grouping is helpful if you want to:
    • Provide episodes in different formats, such as FLV and MOV, to support a wider variety of video aggregators.
    • Provide episodes at different bit rates, to support varied viewer bandwidths and microprocessor speeds.

Note: Adobe Media Player does not support Syndication feed extensions, nor does it support RSS 2.0 skipDays and skipHours variables.

Tip: If all episodes have the same date, set the download order by episode name media:title alphabetically, not description. If valid dates are not included for the episodes, Adobe Media Player lists them in the order they are listed in the Feed.

Tip: If your Feed is an RSS 2.0 feed, specify dates using three-character month representations. For example, the pubDate format is:
<pubDate>Fri, 17 Oct 2006 12:21:30 -500</pubDate>.

Optimizing feed information for viewers

Using the description tag, you can provide information on your show or Feed that helps viewers manage their expectations surrounding your content. For example, including information regarding frequency of Feed update, how long the Feed is available and whether it is promotional in nature, aids the viewer in making informed viewing decisions. All information included in the description tag displays on the Show Info page.

For example:

Strange Show. Watch your favorite web geeks as they troll the internets hunting the ultra-strange of emerging technologies. Updated Tuesdays.

An overview of Feeds

A Feed is a plain RSS feed. It represents your TV show, its associated episodes, and basic branding elements. As you add new episodes to your Feed, Adobe Media Player removes older episodes, creating a fluid, dynamic experience that changes as your associated content changes.

Figure 2 shows the typical information contained in a standard Feed. Each episode is typically represented as one media file; the Feed links to that episode at the time of download.

Standard feed information

Figure 2. Standard feed information

As you add new episodes over time, the Feed looks something like Figure 3.

Standard Feed information changes over time

Figure 3. Standard Feed information changes over time

RSS feeds for streaming video

Adobe Media Player gives you the ability to stream videos via RTMP. The following example shows an RSS feed with a single item that includes an RTMP URL.

Note: Some setup on Flash Media Server is necessary for it to deliver a fully qualified URL to the FLV.

<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss">
  <channel>
    <title>FMS Streaming FLVs for Adobe Media Player</title>
    <link>http://myserver.com/RSS-with-streaming/</link>
    <description> This is a simple RSS feed with one item that includes an
    RTMP stream URL as an enclosure for Adobe Media Player</description>
    <item>
      <title>Streaming Test1</title>
      <description>This item includes an RTMP stream URL as an 
      enclosure</description>
      <guid>uniqueid</guid>
      <pubDate>Fri, 18 May 2007 12:21:30 -0500</pubDate>
      <enclosure url=
        "rtmp://myserver.com:1935/streamtestapp/my-sample-stream/myvideo.flv"
        type="video/x-flv" />
      <media:group>
        <media:content url=
          "rtmp://myserver.com:1935/streamtestapp/my-sample 
          stream/myvideo.flv"
          type="video/x-flv"
          isDefault="true" />
      </media:group>
    </item>
  </channel>
</rss>

When streaming FLV content from nested folders, use _definst_ when specifying the FLV URL. The _definst_ variable represents a Flash Media Server directory that divides the RTMP URL into a Netstream connection and a Netstream video and path, ensuring that your video streams correctly in Adobe Media Player.

For example, the preceding sample code uses a simple absolute path to the FLV source:

url="rtmp://myserver.com:1935/streamtestapp/my-samplestream/myvideo.flv"

If you are using nested folders for your FLV source files, use _definst_ to define a partially relative path:

url="rtmp://myserver.com:1935/streamtestapp/_definst_/my-samplestream/myvideo.flv"

Storyline Feed

Adobe Media Player provides functionality called storyline subscription, which allows viewers to catch up on episodes of shows that they missed during television broadcast. When you enable storyline subscription in your Feeds, viewers can choose to watch episodes in chronological order, starting at whatever episode they like. For example:

You can include a storyline extension element in your Feeds to allow viewers to download and view show episodes in chronological order. The Feed default, if no storyline element is included, is to display show episodes in reverse chronological order, or typical aggregator format. If a storyline element is included for the Feed, the default presentation that defined by the storyline element is used unless the viewer overrides it.

When the extension amp:presentAs with the value storyline is present in the Feed, as in the following example, the Feed is treated as a storyline Feed:

<?xml version="1.0" encoding="UTF-8"?> 
<feed xmlns="http://www.w3.org/2005/Atom" 
    xmlns:media="http://search.yahoo.com/mrss" 
    xmlns:amp="http://www.adobe.com/amp/1.0"> 
    <title>MyShow</title> 
        <id>#############</id> 
    <amp:presentAs>storyline</amp:presentAs> 

Feed categories

You can also include category tags in your Feeds. These categories influence the genre tag associated with the show, and how shows appear in search results. Multiple categories can be associated with a Feed, in the following recommended format:

<media:category>category1</media:category> <media:category>category2</media:category> 

Adobe Media Player references a static Adobe-approved list of genres. If the Feed contains a category that matches an entry on the blessed list, Adobe adds the category or genre to the Catalog. Example categories include Action & Adventure, Business, and Sci Fi. For blessed list details, see adobe.com/go/learn_mp_blessedlist.

Feed geolimiting

You can specify geolimiting rules in your Feeds, to restrict distribution of your content in certain countries. Using the media:restriction tag and a deny rule, you can set your Feeds to deny redistribution to specific country codes. The Adobe Media Player Catalog stores and detects these geolimiting rules and, based on the location of viewer, either denies or allows Feed retrieval from the Catalog. Or, if you want your content to be viewed only in specific countries, you can use the media:restriction tag with an allow rule. When the Adobe Media Player Catalog detects the allow rule based on the location of the viewer in an allowed country, the Feed is made available for viewing.

  1. Add a media:resriction tag to your Feed with a deny or allow rule.
  2. When submitted to the Adobe Media Player Catalog, the Feed is parsed, and the rules are stored by the Catalog server. The Catalog detects the location of the viewer and filters the Feed according to the rules that are defined.

Note: Geolimited metadata in the feed is only helpful in Adobe Media Player when specified at the Feed level. Item-level restrictions are not supported.

You can allow or deny access for multiple countries—based on two-character country codes—by separating the country codes with a space character. For example, the following code limits the viewing of the content to United States (US) and Puerto Rico (PR):

<media:restriction relationship="allow" type="country">US PR</media:restriction> 

Apple iTunes image support in Feeds

Adobe Media Player supports the Apple iTunes image tag. This allows Adobe Media Player to display your iTunes show image in the Feed, rather than the default image. The image tag contains an href attribute; this is the URL to the image.

The following example shows a Feed that uses the iTunes image tag:

<?xml version="1.0" encoding="UTF-8"?> 
<rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0"> 
  <channel> 
    <title>FooShow</title> 
    <link>http://www.foo.com/fooeshow</link> 
    <itunes:image href="http://www.foo.com/fooshow.jpg" /> 
    <item> 
      ... 
    </item> 
  </channel> 
</rss> 

Note: The iTunes namespace is http://www.itunes.com/dtds/podcast-1.0.dtd. The recommended prefix is itunes.

Adobe Media Player selects logos in the following order of precedence:

  1. The amp:logo element (in the Adobe Media Player namespace) takes precedence.
  2. If no such element exists, then the Feed image takes precedence. (For Atom 1.0, this is feed.icon. For RSS 1.0, this is RDF.image. For RSS 2.0, this is channel.image.)
  3. If no such element exists, then the iTunes image takes precedence.

Setting up a network

Adobe Media Player features partner Networks in the Catalog. The creation of a Network requires a business relationship with Adobe. A Network is defined as an organization that produces or distributes more than one Show. To set up a Network on Adobe Media Player, contact Adobe Strategic Alliance Group at ampbizdev@adobe.com.

Optimizing the viewer video experience

To ensure you are creating the best video viewing experience for your viewers, Adobe provides guidance on how to best encode and deliver your content within Adobe Media Player, including:

Where to go from here

For detailed instructions on best encoding practices, see the Flash Media Encoder documentation at adobe.com/go/fme_bestpractices.

To learn more about branding works in Adobe Media Player, and how to customize it, see Customizing your branding in Adobe Media Player.

Browse the other chapters linked to at left to read more of the CDK.

About the author

This content was authored by Adobe Systems, Inc.