View
697
Download
7
Category
Preview:
DESCRIPTION
WHICH FILE CONTAINER? • Material Exchange Format ( ) • Standardized in 2004 • By now the de facto standard of " professional audio-visual file formats • Many specifications and many features • Structural Metadata…
Citation preview
“TOOLS FOR MXF-EMBEDDED EBUCORE METADATA” Dieter Van Rijsselbergen, Jean-Pierre Evain Limecraft, EBU Get in contact: dieter.vanrijsselbergen@limecraft.com;"@limecraft
#FIATIFTADubai2013 D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata” Replace box with your company logo
Copyright © of this presenta1on is the property of the author(s). FIAT/IFTA is granted permission to reproduce copies of this work for purposes relevant to the above conference and future communica1on by FIAT/IFTA without limita1on, provided that the author(s), source and copyright no1ce are included in each copy. For other uses, including extended quota1on, please contact the author(s).
METADATA "TRANSFERS "INTO THE ARCHIVE
#FIATIFTADubai2013 Replace box with your company logo
Metadata
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
METADATA TRANSFERS → ARCHIVE • How to transfer Essence and its Metadata?
#FIATIFTADubai2013 Replace box with your company logo
Out-of-band delivery
Archive
Embedded
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
METADATA TRANSFERS → ARCHIVE
#FIATIFTADubai2013 Replace box with your company logo
Essence + Metadata MXF + Metadata XML
Delivery Interpretation
(file01.mxf + file01.xml)
Delivery Technology
(FTP)
Essence + Metadata MXF ← Metadata
Delivery Technology
(FTP)
Out-of-band delivery vs. Embedded delivery
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
WHICH FILE CONTAINER? • Material Exchange Format ( )
• Standardized in 2004 • By now the de facto standard of "
professional audio-visual file formats • Many specifications and many features
• Structural Metadata…
#FIATIFTADubai2013 Replace box with your company logo
Timecode TrackPicture Track
Virtual DMTrack
Sound Track 2Sound Track 1
DMSegment 1
Edit unit
Data TrackLinks to all essence tracks(default) Links only to sound tracks Links only to thepicture track
DMFramework
DMSegment 2
DMFramework
DMSegment 3
DMFramework
EventStartPosition
Duration
… and Descriptive Metadata!
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
WHICH EMBEDDED METADATA? • Descriptive Metadata for MXF exists
• E.g., Descriptive Metadata Scheme-1 (DMS-1) • Production characteristics, rights information, annotations,
person and entity identification, … • DMS-1 is barely being used for real
• Perhaps due to the fact that there is no DMS-1 notion outside of the MXF ecosystem?
• Exchange is always using another standard (e.g, MPEG-7, TV Anytime)
• Hard to obtain a viable and complete mapping or metadata authored outside of MXF
#FIATIFTADubai2013 Replace box with your company logo D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
WHICH EMBEDDED METADATA? • Alternatives?
• Use metadata that is used outside of MXF!
• Core • EBU’s extension of Dublin Core • Metadata framework for descriptive and technical metadata
• about audiovisual assets • for use
• in Service Oriented Architectures; • in audio-visual ontologies for semantic web; • and linked data developments
• Gaining traction and adoption"with broadcasters and archives
• Native format is XML (defined by XML Schema)
#FIATIFTADubai2013 Replace box with your company logo D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
EMBEDDED EBUCORE METADATA? • Embedding Core worklfow
• Use XML authoring and processing tools for metadata creation… • Directly or via transformation
• E.g., the MINT mapping tool
• …then place the EBUCore XML in the MXF container…
#FIATIFTADubai2013 Replace box with your company logo D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
EMBEDDING METADATA IN MXF? • How? • Translate EBUCore"to the KLV structure"of MXF somehow
#FIATIFTADubai2013 Replace box with your company logo
<?xml version="1.0" encoding="UTF-‐8"?> <ebuCoreMain xmlns:xsi="http://www.w3.org/2001/XMLSchema-‐instance" xmlns:dc=http://purl.org/dc/elements/1.1/ xmlns="urn:ebu:metadata-‐schema:ebuCore_2011" xmlns:default=http://iptc.org/std/nar/2006-‐10-‐01/ xmlns:ebu=http://ebu.org/nar-‐extensions/ version="1.3" dateLastModified="2011-‐01-‐31"> <coreMetadata> <title> <dc:title xml:lang="fr-‐can">Berlin Wall 50th</dc:title> </title> <alternativeTitle typeLabel="headline"> <dc:title>Berlin Wall 50th</dc:title> </alternativeTitle> <creator entityId="EBUNMSSRVCodeSource:TBA"/> <subject> <dc:subject/> <subjectCode>EBUNMSCategoryCode:EXCH</subjectCode> </subject> <subject> <dc:subject>In or about Europe and EU</dc:subject> <subjectCode>EBUNMSWebcatCode:EUROPE</subjectCode> </subject> <description typeLabel="pubStatus"> <dc:description>NMSStatusCode:TBC</dc:description> </description> <description typeLink="EBUNMSDescription:dopesheet"> <dc:description> The Berlin Wall (German: Berliner Mauer) was a barrier constructed by the German Democratic Republic (GDR, East Germany) starting August 13, 1961, that completely cut off West Berlin from surrounding East Germany…
Key Length Value
16 bytes16 bytes BER-‐encoded length
BER-‐encoded length Length lengthLength length
......
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
METADATA EMBEDDING STRATEGIES
#FIATIFTADubai2013 Replace box with your company logo
File Header File Body File Footer
HeaderPartition Pack
HeaderMetadata
EssenceContainer
IndexTable
FooterPartition Pack
EssenceContainer
HeaderMetadata
RunIn
BodyPartition Pack
(optional)
RandomIndex
(optional) (optional)(optional)(optional)
KLV
DARK KLV SIDE-CAR
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
METADATA EMBEDDING STRATEGIES • Dark
+ Embedded in the MXF file, easier to extract"(locate a single KLV element and read its contents) - No interaction with the structural metadata
• KLV + Full interaction and relations with structural metadata,"the MXF way - More complex to implement and support
• Sidecar + Valid (but limited) interaction with MXF timeline - No actual embedded metadata, "requires an out-of-band delivery mechanism
#FIATIFTADubai2013 Replace box with your company logo D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
METADATA EMBEDDING STRATEGIES • In case of KLV, a mapping is required between EBUCore XML and EBUCore KLV
#FIATIFTADubai2013 Replace box with your company logo
<ebucoreCoreMetadata key="06 0E 2B 34 02 7F 01 0B 0D 02 01 01 01 02 00 00" base="InterchangeObject" type="localSet"> <identifier globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 01 00" type="StrongRefBatch" use="optional" target="ebucoreIdentifier" /> <title globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 02 00" type="StrongRefBatch" use="optional" target="ebucoreTitle" /> <alternativeTitle globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 03 00" type="StrongRefBatch" use="optional" target="ebucoreAlternativeTitle" /> <creator globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 04 00" type="StrongRefBatch" use="optional" target="ebucoreEntity" /> <subject globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 05 00" type="StrongRefBatch" use="optional" target="ebucoreSubject" /> <description globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 06 00" type="StrongRefBatch" use="optional" target="ebucoreDescription" /> <publisher globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 07 00" type="StrongRefBatch" use="optional" target="ebucoreEntity" /> <contributor globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 08 00" type="StrongRefBatch" use="optional" target="ebucoreEntity" /> <date globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 09 00" type="StrongRefBatch" use="optional" target="ebucoreDate" /> <type globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 0A 00" type="StrongRefBatch" use="optional" target="ebucoreType" /> <language globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 0B 00" type="StrongRefBatch" use="optional" target="ebucoreLanguage" /> <coverage globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 0C 00" type="StrongRefBatch" use="optional" target="ebucoreCoverage" /> <rights globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 0D 00" type="StrongRefBatch" use="optional" target="ebucoreRights" /> <rating globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 0E 00" type="StrongRefBatch" use="optional" target="ebucoreRating" /> <version globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 0F 00" type="StrongRef" use="optional" target="ebucoreVersion" /> <publicationHistory globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 10 00" type="StrongRef" use="optional" target="ebucorePublicationHistory" /> <customRelation globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 11 00" type="StrongRefBatch" use="optional" target="ebucoreCustomRelation" /> <basicRelation globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 12 00" type="StrongRefBatch" use="optional" target="ebucoreBasicRelation" /> <format globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 13 00" type="StrongRefBatch" use="optional" target="ebucoreFormat" /> <part globalKey="06 0E 2B 34 01 01 01 0E 0D 02 01 01 02 A0 14 00" type="StrongRefBatch" use="optional" target="ebucorePartMetadata" /> </ebucoreCoreMetadata>
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
METADATA EMBEDDING STRATEGIES • In case of KLV, a mapping is required between EBUCore XML and EBUCore KLV
• This mapping and KLV representation have been submitted to SMPTE • Will form a part of the official SMPTE Metadata Register
• As Class 13 Public User Organisation metadata • Keys under 06.0E.2B.34.01.01.01.05.0D.02 are EBU’s
#FIATIFTADubai2013 Replace box with your company logo D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
TOOLS: EBUCORE MXF SDK • In order to lower threshold of using "EBUCore embedded metadata… • Initiative by EBU to provide community with reliable"and open-source software to manipulate MXF files
• Handle metadata • Handle essence and work on conformity of MXF files
• Available at: • Repository: https://github.com/Limecraft/ebu-mxfsdk • Binaries: http://sourceforge.net/projects/ebu-mxfsdk
• Released under the Apache License 2.0 • Free & Open Source • Use in non-commercial/commercial "
applications
#FIATIFTADubai2013 Replace box with your company logo
ebu2mxf.exe
raw2bm
x.exe
mxf2ebu.exe
Custom Tools and System
Integrations
EBU MXF SDK
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
TOOLS: EBUCORE MXF SDK • Use of the SDK
• Command line tools included • Use as-is for basic tasks • Getting started quickly
• Use as a function library • Build custom applications linked with the SDK
#FIATIFTADubai2013 Replace box with your company logo
ebu2mxf.exe
raw2bm
x.exe
mxf2ebu.exe
Custom Tools and System
Integrations
EBU MXF SDK
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
TOOLS: EBUCORE MXF SDK • Example use of the SDK
• Put EBUCore metadata in MXF file • Existing MXF file • Specify input EBUCore XML file • Pick a strategy (KLV default)
• Remove is also an option
#FIATIFTADubai2013 Replace box with your company logo
ebu2mxf.exe
raw2bm
x.exe
mxf2ebu.exe
Custom Tools and System
Integrations
EBU MXF SDK
Usage: ebu2mxf <<options>> <filename> Options: -h | --help Show usage and exit -v | --version Print version info -l <file> Log filename. Default log to stderr/stdout -i Print file information to stdout --ebu-core <file> Write embedded EBU Core metadata to file --force-header Force metadata to be appended into the header partition --dark Write EBU Core metadata into a dark metadata set --sidecar Write EBU Core metadata as a side-car reference --remove Remove EBU Core metadata from the MXF file header metadata
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
TOOLS: EBUCORE MXF SDK • Example use of the SDK
• Take EBUCore metadata from MXF file • Existing MXF file • Specify output EBUCore XML file
• All serialization strategies are"automatically evaluated
#FIATIFTADubai2013 Replace box with your company logo
Usage: mxf2ebu <<options>> <filename> Options: -h | --help Show usage and exit -v | --version Print version info -l <file> Log filename. Default log to stderr/stdout -i Print file information to stdout --ebu-core <file> Write embedded EBU Core metadata to file
ebu2mxf.exe
raw2bm
x.exe
mxf2ebu.exe
Custom Tools and System
Integrations
EBU MXF SDK
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
TOOLS: EBUCORE MXF SDK • Example use of the SDK
• Assemble new MXF files with EBUCore • Specify MXF flavor, essence "
and EBUCore XML file
#FIATIFTADubai2013 Replace box with your company logo
Usage: raw2bmx <<options>> [<<input options>> <input>]+ Options (* means option is required): -h | --help Show usage and exit -v | --version Print version info -l <file> Log filename. Default log to stderr/stdout -t <type> Clip type: as02, as11op1a, as11d10, op1a, avid, d10, wave. Default is as02 … EBU Core: --ebu-core <name> Parse and set EBU Core from <name> …
ebu2mxf.exe
raw2bm
x.exe
mxf2ebu.exe
Custom Tools and System
Integrations
EBU MXF SDK
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
TOOLS: EBUCORE MXF SDK - PoC • Example use of the SDK in a Proof-of-Concept demonstrator in Limecraft Flow
#FIATIFTADubai2013 Replace box with your company logo
mxf2ebu.exe
EBU MXF SDK
Feature Detection
Media Probing
Metadata Index
Media Repository
Search Application «User»
Retrieval Application
D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
CONCLUSIONS • There is a case for embedded metadata in archiving and media production
• Makes the delivery process easier • MXF and EBUCore make an interesting combination
• Broad adoption of both standards • There are various ways in which EBUCore"can be embedded in MXF
• Advantages and disadvantages to each strategy • EBU/Limecraft have built tools and an SDK to...
• Allow users to get started quickly and easily"with using EBUCore in MXF files
• Experiment with various serialization strategies • Use these tools in custom applications freely
• Please experiment: • Repository: https://github.com/Limecraft/ebu-mxfsdk • Binaries: http://sourceforge.net/projects/ebu-mxfsdk
#FIATIFTADubai2013 Replace box with your company logo D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata”
“TOOLS FOR MXF-EMBEDDED EBUCORE METADATA” Dieter Van Rijsselbergen, Jean-Pierre Evain Limecraft, EBU Get in contact: dieter.vanrijsselbergen@limecraft.com;"@limecraft
#FIATIFTADubai2013 D. V. Rijsselbergen; JP. Evain: “Tools for MXF-embeddded EBUcore metadata” Replace box with your company logo
Copyright © of this presenta1on is the property of the author(s). FIAT/IFTA is granted permission to reproduce copies of this work for purposes relevant to the above conference and future communica1on by FIAT/IFTA without limita1on, provided that the author(s), source and copyright no1ce are included in each copy. For other uses, including extended quota1on, please contact the author(s).
Recommended