Skip to main content
Skip table of contents

Segment Lists

Motivation

In an on-prem/hybrid/BYOC MAM solution you often need segment lists. Segment lists are a collection of segments. Each segment in refers to a certain timecode interval on the timeline of a an asset. Different segment lists refer to different content types. There may be segment lists for Subtitles, for game events (like goals, fouls, off-sides, etc.), for results of different AI-based content analysers, and so on.

To model a similar concept in VidiCore metadata field groups are used. Metadata field groups have a unique name which corresponds to the purpose of the segment list. Each field group can contain different metadata fields which makes modelling shot metadata much very flexible.

The field group names for segment lists follow the standard naming schemes of the on-prem/hybrid/BYOC MAM solution Metadata Model.

Segments of the same segment list may overlap.

Examples

A segment list definition:

CODE
PUT /API/metadata-field/field-group/V3_DemoSegmentList

<MetadataFieldGroupDocument xmlns="http://xml.vidispine.com/schema/vidispine">
  <field>
    <name>V3_SegmentTitle</name>
    <type>string</type>
  </field>
  <field>
    <name>V3_SegmentDescription</name>
    <type>string</type>
  </field>
  <field>
    <name>V3_SegmentDetails</name>
    <type>string</type>
  </field>
</MetadataFieldGroupDocument>

Naming of metadata field groups shall follow the same rules as for metadata fields.

To create a segment from frame 0 to 25:

CODE
PUT /API/item/<itemId>/metadata

<MetadataDocument xmlns="http://xml.vidispine.com/schema/vidispine">
  <timespan start="0@PAL" end="25@PAL">
    <group>
      <name>V3_DemoSegmentList</name>
      <field>
        <name>V3_SegmentTitle</name>
        <value>Title for segment 0-25</value>
      </field>
      <field>
        <name>V3_SegmentDescription</name>
        <value>Description for segment 0-25</value>
      </field>
    </group>
  </timespan>
</MetadataDocument>

 Please note that start and end are 0-based values in VidiCore.

To retrieve only metadata for a specified field group:

CODE
GET /API/item/<itemId>?content=metadata&group=V3_DemoSegmentList

This will return timed metadata for this specified field group only (and all non-timed metadata from –INF to +INF).

Important Notes When Migrating From Worker-Based VPMS

Segments were modelled as shots or events in worker-based VPMS. The concept was a bit different as worker-based VPMS had defined, but restrictive database structures for them, whereas von VidiCore the more flexible concept of metadata field groups is used for this purpose.

Some notes on the differences:

  • Shots must not overlap in worker-based VPMS, only events may. VidiCore does not have this restriction.

  • There is no predefined Default Shotlist in an on-prem/hybrid/BYOC MAM solution as it was in worker-based VPMS. The Default Shotlist often lead to misunderstandings as it never had been clearly defined what the Default Shotlist should contain. In an on-prem/hybrid/BYOC MAM Solution the preferred way to go is to create properly designed segment lists for each specific use-case.

  • The concept of a representative thumbnail for a video (where the default shotlist also was used for in worker-based VPMS) is modelled by VidiCore via the representativeThumbnail metadata field.

  • The term “shotlists” was not re-used for on-prem/hybrid/BYOC MAM solutions for several reasons:

    • “shot” was a very misleading word in the VPMS world already because others understood different things when hearing “shots”.

    • The shot concept in VPMS was rather restrictive (shots must not overlap, restricted metadata set).

    • MediaPortal initially has chosen segments as wording for this concept.

So overall it makes sense to use the MediaPortal wording throughout the whole on-prem/hybrid/BYOC MAM product suite.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.