Defining a Brightcove Video Content Type
The Brightcove video content type must at least have the following:
-
A
media
child element belonging to the namespacehttp://xmlns.escenic.com/2013/media
. This element must have anenabled
attribute set totrue
. -
A parameter called
com.escenic.article.staging
set tofalse
, which specifies that content item staging must be disabled for this content type. If content item staging is disabled generally at your installation or for the whole publication, then you can omit this parameter. -
A
basic
video field with:-
mime-type
set toapplication/json
-
a
video
sub-element belonging to the namespacehttp://xmlns.escenic.com/2010/video
with anenabled
attribute set totrue
.
-
-
A decorator called
bcovVideoArticleDecorator
-
An interface-hints element called
list-style
set tovideo
to show proper listing at CUE. -
A
basic
external media metadata field with:-
mime-type
set toapplication/json
-
a
media
sub-element belonging to the namespacehttp://xmlns.escenic.com/2013/media
.
The
external-media-metadata
field should be a hidden field. It contains the actual Brightcove video JSON data. You can retrieve any information you need about the video from this field. You can, for example, retrieve tags that have been added to the video in Brightcove. -
Here is an example Brightcove video content type with the important parts highlighted:
<content-type name="brightcove-video"> <media:external-video enabled="true"/> <parameter name="com.escenic.article.staging" value="false"/> <ui:icon>graphic</ui:icon> <ui:label>Brightcove Video</ui:label> <ui:title-field>title</ui:title-field> <ui:decorator name="bcovVideoArticleDecorator"/> <ui:list-style>video</ui:list-style> <panel name="main"> <field name="title" type="basic" mime-type="text/plain"/> <field name="video" type="basic" mime-type="application/json"> <video xmlns="http://xmlns.escenic.com/2010/video" enabled="true"/> </field> <field name="external-media-metadata" type="basic" mime-type="application/json"> <media:external-media/> <ui:label>External media JSON</ui:label> <ui:hidden/> </field> </panel> </content-type>