Over the last five years Brightcove has had the opportunity to work intimately with some of the most sophisticated corporations pushing the boundaries with online video. Though we obviously strive to play a strategic and critical role for an organization in driving their initiatives with online video, we are also humble enough to recognize that no single vendor can provide a total solution. Therefore we focus on extensibility as a critical component to give development teams the reassurance that as their business objectives evolve, their investment in the Brightcove Online Video Platform (OVP) is a long term strategic advantage.
Our engagement with hundreds of customers on a world-wide basis has given us a robust understanding of the complicated needs to integrate into existing CMS, search and web publishing solutions. Brightcove has three mechanisms to ingest and manage content: FTP-based batch ingest, REST-based JSON APIs and through the Brightcove Studio. With these there are subtle, but critical pieces of architecture that allow robust synchronization of videos managed by Brightcove with external Web CMS or database systems.
The first is a notion of a "reference id" which is essentially a unique key defined by an external data repository. This reference id allows the Brightcove system to act as a dependent of another entity. If you are a news organization this value could be an article id generated by a custom web publishing solution. For retailers this value is the product id that is used through a very sophisticated supply chain and merchandising solution. Videos can be loaded, updated and managed by your unique identifier - this is an important tool for a development organization as they need to link and manage a wide variety of systems. Allowing your OVP to be directed by an external, universal identifier can radically simplify integration costs.
In a similar manner, our customers have stressed the importance of allowing their pre-existing web services to understand what is being managed by Brightcove. For example say your product team has a goal of providing universal search for all the content available on your website. Those search results need to include all the video content that is managed by an OVP such as Brightcove. One approach is to provide an RSS feed of the entire library of media, which may work if you have a small number of videos. One could consider building an integration with a search solution like Automony, Endeca, or Lucene/Solr to reindex all the videos from the feed on a periodic basis. But what happens when you start growing from dozens to hundreds, to thousands of videos? We've even seen customers that have tens of thousands of videos... It is not practical to reindex all the meta-data through a simple RSS feed. This is not always obvious until you encounter these issues of scale - at Brightcove we've been dealing with these sort of problems for years.
To help solve this business problem, we've designed our system so it knows how your media library changes over time. Through our Media API we've provided REST-based JSON access to data that allows one to know what videos have been recently added, updated or deleted. This enables incremental indexing of meta-data and provides a robust solution to this search index synchronization problem.
The Brightcove Media APIs have also been used to provide real-time, read/write synchronous integrations with CMS or other web publishing solutions. For those organizations that want to provide a seamless, single user interface for publishing, these APIs provide the backbone for increasing productivity and simplifying complicated workflows. Browse, search, and discover videos managed by Brightcove in your existing publishing platform - or rely on the usability-tested Brightcove Studio. Brightcove can adapt and evolve to your business goals.
If you are a developer you can learn more about our Media APIs on our Developer Center and specifically look for the function named find_modified_videos if you want to sync changes that occur in your Brightcove account with any external system.