Overview: Smart Player to Brightcove Player Migration

Video Cloud
Brightcove Player
Player Developer
Legacy Migration

In this topic you will learn about the process of migrating from Smart Player to Brightcove Player.


The Brightcove Player, which replaces the Smart Player, is an HTML-first video player that will deliver video entirely through HTML, CSS, and JavaScript in almost all cases. It is also considerably lighter and loads faster than the Smart Player, and it has a more robust plugin architecture that allows a broader range of customizations. Because of this and the fact that the internet is rapidly moving away from Flash, you are encouraged to migrate your content to the Brightcove Player as soon as it is practical to do so.

This guide will help you transition from using the Smart Player to using the Brightcove Player. To learn more about this player, see the Brightcove Player Overview document.

For a comparison between the two APIs, see the Smart Player to Brightcove Player API Comparison.

This guide contains the following:

Media compatibilty

Although there is considerable overlap between the media formats that the Smart Player and Brightcove Player support, the underlying technologies are entirely different. Therefore different formats are optimum for the two players. The Smart Player, using Flash by default, works best with streaming MP4 video, while the Brightcove Player, built on HTML and JavaScript, works best with video in HLS format (or MPEG-DASH for DRM-protected videos).

You will have access to all of your video content that you have uploaded using legacy Studio. Simply login to the new Studio platform and browse your content in the Media module.

However, because the Brightcove player works best with HLS content, you may need to update the renditions you have to take advantage of the Brightcove Player's playback technology. See the Video Renditions Inspector for help in determining whether your videos have renditions suitable for the Brightcove Player.

The next section explains ingest profiles, and how you can use these to insure that you have video renditions best suited to the players you are using.

Ingest profiles

When videos are uploaded using the legacy studio, the renditions created are based upon the transcode settings configured for the account. All uploaded videos use the same transcode settings. In the new studio, videos uploaded using the Upload module use ingest profiles to determine which, and how many, renditions are created. Different videos can use different ingest profiles. Publishers can also create their own ingest profiles.

Ingest Profiles can also be created and managed using the Overview: Ingest Profiles API.

If you have integration between your CMS and Video Cloud, you will also want to update that to take advantage of the new APIs:

Playback technology

The Smart Player uses Flash-first technology to play your content. If the browser does not support Flash, then HTML technology is used with a feature-limited player. The Brightcove Player is able to play most of your content using HTML5, including HLS. If it cannot, it falls back to using Flash.

For details, see the Guide: Playback Technology.

Player implementations

Smart Players are usually implemented using the <object> tag in your HTML page. You can also use the player URL as the src value for an <iframe>, but you will need to size the iframe appropriately using CSS.

Brightcove Players have two implementations to choose from:

  • The Standard implementation uses an <iframe> tag.
  • The Advanced implementation uses a <video> tag.

While the <video> tag is most similar to the Smart Player implementation, the <iframe> tag offers some distinct advantages.

Learn about Choosing the Correct Embed Code.

Also note that you can obtain the Brightcove Player embed codes using the Overview: Player Management APII if you are integrating your CMS with Video Cloud.

Player templates

When creating a new Smart Player, all players are based upon a player template. Brightcove provides a set of player templates, or you can create your own custom templates using BEML.

Brightcove Players are based on the single video player template. You can duplicate the default player or create a new player, and then add any features and customizations that you wish.

Player plugins

Both the legacy Smart Player and the Brightcove Player have plugin architectures, but they are quite different. Plugins created for the Smart Player will not work in the Brightcove Player!. You can probably reuse some of the code from Smart Player JavaScript plugins, but the APIs for the two players are different - see API Comparison below.

There are a number of plugins created by Brightcove for the Brightcove Player, and also some open-source plugins.

To create plugins for the Brightcove Player, see the Quick Start: Developing Plugins.

Player configuration

This section should help you to identify how your Smart Player was configured, and point you to the appropriate documents to obtain the same features and functionality in the Brightcove Player.

Smart Player feature Brightcove Player documentation

Smart Player uses a player configuration UI to configure advertising.

The Brightcove Player uses plugins for both IMA3 and FreeWheel to configure advertising. There is a UI section in Studio for IMA3, whereas FreeWheel needs to be configured manually.

Note that the Brightcove Player be an HTML player in almost all cases, so if you are relying on Flash-based ads or VPAID Flash, you need to migrate to HTML ads and/or VPAID JavaScript.


Developer guides:

Configuring IMA3 ads in Video Cloud Studio:

API comparison

The two APIs are markedly different. Concepts for what you can do are similar, but implementation can be quite different. Both APIs can be used with in-page scripts or plugins, but for the Brightcove Player, plugins are preferred and will work both with in-page and iframe embeds.

Developer guides:


With Smart Players, captions must be in DFXP format. Captions can be hosted by Brightcove or a remote url can be specified.

The same is true with Brightcove Players with the exception that captions in Brightcove Players must use the WebVTT format.

Developer guides:

Adding captions in Video Cloud Studio:

Domain restrictions

Controlling player availability can be done by restricting your player to a specific domain URL. This feature is available for both Smart Players and the Brightcove Players.

Developer guides:

Setting domain restrictions in Video Cloud Studio:


Both the Smart Player and the Brightcove Player allow you to enable social sharing options for the endscreen via Studio settings. Beyond that, the Smart Player offers the choice of displaying the video still (poster) or related videos (as determined by Video Cloud).

The Brightcove Player, on the other hand, has an endscreen plugin that allows you to include any HTML you want in the endscreen, either in Studio or via JavaScript.

See the following guide for details:

Geographic filtering

Geographic filtering allows you to restrict access to your content based on the viewer's geographic location. With Smart Players you could set geo restriction at the player level as well as the video level.

With Brightcove Players, you set geo restriction at the video level.

Developer guides:

Setting geo-filters in Video Cloud Studio:

Logo overlay

Smart Players can be configured to display a logo overlay. Logo overlays display a logo in the corner of the video playback window. Viewers can click through to a specified web site. Logo overlays can be configured for a single video or as part of the account settings so they appear on all the videos.

With Brightcove Players, logo overlays can be configured using the overlay plugin. There is currently not a way to have an overlay appear over all of the videos in an account.

Developer guides:

Developer samples:

You can also create a custom ingest profile that will burn a logo (watermark) into your video renditions.

Player language

With Smart Player you can click a radio button in the player property options to select a language.

Localizing Brightcove Player is only essential when concerned with screen readers as no words appear by default when using the player. If you wish to change the language there are API methods available to do so.

Developer guides:

Player styling

In Smart Player the styling and manipulation of the player is done using BEML.

With Brightcove Player basic web development technologies, CSS, HTML and JavaScript, are used to style and manipulate the player.

Developer guides:

Styling in Video Cloud Studio:


Smart Players offer several options for displaying a playlist in a player.

For now, Brightcove Players have the ability to display a vertical playlist to the right of the player. While you can style the playlist yourself, out-of-the-box styles are coming.

Note that the Smart Player option to continue playback from beginning of the playlist when the end of the playlist is reached is not currently available for the Brightcove Player, although you can add this functionality via JavaScript.

Developer guides:

Developer samples:

Creating playlists in Video Cloud Studio:

Pre-roll bumpers

Smart Player allows selection of an .flv file to be played as a bumper.

While not explicitly possible in Brightcove Player, playlists can be configured to act as bumpers, as well a IMA3 pre-roll can be configured to play.

Developer guides:

Social sharing

Smart Players allow you to add social sharing features to your player, but they are limited to Facebook and Twitter.

A broader range of social sharing platforms can be added to Brightcove Players either by using the Studio UI or by adding a plugin.

Developer guides:

Configuring social sharing in Video Cloud Studio:


Unlike the Smart Player, the Brightcove Player is released in specific versions. All players are automatically updated to the latest version. If you wish to, you can prevent automatic updates for specific players and manage updates manually. See Setting the Player Update Mode and Version for details.