Post on 09-Nov-2018
Televisão digital2001/2002
MXF – Material eXchange Format
Trabalho realizado por:
Rodrigo Almeida ee98028Sérgio Silva ee98161 Paulo Costa ee98175
Introdução:
O formato MXF – Material eXchange Format – é um formato aberto direccionado para o
intercâmbio de material audiovisual com dados e meta-informação associados. Ele foi concebido
e implementado com o objectivo de melhorar a interoperabilidade entre servidores, estações de
trabalho e outros dispositivos de criação. Também foi concebido, tendo em linha de conta arquivos
digitais e tape streamers. A melhoria introduzida assim resultaria numa melhoria no workflow e
num trabalho mais eficiente do que é actualmente possível recorrendo aos variadíssimos formatos
proprietários.
O MXF foi concebido pelos principais envolvidos na indústria do broadcast, com uma grande
quantidade de entrada proveniente das comunidades de utilizadores para garantir que o novo
formato realmente vá de encontro às suas exigências. O MXF tem sido colocado como um Open
Standard, o que significa que é um formato de transferência de ficheiros disponível a todas as partes
interessadas.
O MXF não é um esquema específico de compressão e simplifica a integração de sistemas
usando MPEG e DV, bem como outras estratégias de compressão futuras ainda não especificadas.
Isto significa que a transferência destes ficheiros será independente do conteúdo, não obrigando
ao uso específico de equipamentos. Qualquer processamento requerido pode ser alcançado
simplesmente por invocar automaticamente o hardware e o software apropriado do codec. Todavia,
o MXF está concebido para um uso operacional e portanto toda a manipulação dos processos é
realizada de um modo transparente para o utilizador.
Para além de oferecer maior interoperabilidade – trabalhando com vídeo e áudio entre
diferentes equipamentos e aplicações – outra grande contribuição deste formato é o transporte de
meta-informação (metadata). Por ter sido desenvolvido desde o início como um novo formato,
muito esforço pôde ser investido nesta área, no tocante à sua implementação e ao seu uso. Isto não
só é importante para o funcionamento apropriado dos ficheiros MXF mas também permite o recurso
a novas e poderosas ferramentas na gestão da media bem como a melhoria no workflow por se
eliminar a entrada repetitiva de meta informação.
A mutação tecnológica da produção televisiva e serviços digitais para os telespectadores
implicam que o transporte de conteúdos – programas de vídeo e áudio – nos estúdios também está a
mudar. Não só se verifica um uso crescente de computadores e servidores, mas também uma
expansão da automatização na obtenção e reutilização de materiais. Para além da necessidade de
transportar meta-informação, a transferência de ficheiros é necessária para adequar o uso de
computadores a operações em tempo real.
O desenvolvimento do MXF é o resultado de uma notável colaboração entre a indústria e as
grandes organizações, tais como Pro-MPEG, EBU e AAF Association. Estabelece a
interoperabilidade dos conteúdos entre várias aplicações usadas na cadeia de produção televisiva.
Isto conduz a um aumento na eficiência e na liberdade de criação mediante um ambiente em
rede unificado.
Notas Históricas:
Em 1999, o fórum Pró-MPEG verificou que a indústria de servidores não tinham um formato
comum de ficheiro, apenas formatos proprietários. As primeiras propostas foram feitas em Julho de
1999, tendo-se, a partir de então efectuado um estudo profundo das exigências requeridas pelos
diferentes grupos envolvidos.
No encontro da Pró-MPEG de Atlanta de Maio de 2000, acordou-se que o MXF seria o
resultado do trabalho conjunto entre o Fórum Pró-MPEG e a AAF Association. A meta informação
do cabeçalho foi acordada em ser compatível com o AAF (Advanced Auithoring Format), visto que
a ligação entre os dois formatos era crucial.
Adicionalmente o grupo EBU P/PITV tem sido muito activo no desenvolvimento do MXF.
Como o MXF melhora o Workflow?
A existência de um formato aberto tão abrangente terá, sem dúvida, um grande impacto na
maneira como o material e manuseado. Os passos típicos na produção de um programa televisivo
são mostrados na figura ao lado. Actualmente, a passagem entre os diversos passos compreende
uma mistura de cassetes de vídeo, ficheiros multimedia proprietários, documentos em WORD,
EXCEL, faxes e outros meios para a transferência da meta-informação. Na verdade, a única
meta-informação que é razoavelmente universal é o timecode. Contudo, mesmo este não é muito
claro no sentido que muito trabalho é investido a volta dos problemas envolvendo o timecode, ao
invés deste facilitar a cadeia de meta-informação.
A medida que o MXF é adoptado por
mais e mais fabricantes, mais e mais etapas
do processo descrito irá permitir a
transferência de uma rica quantidade de
meta-informação para o próximo passo de
produção permitindo aos profissionais
concentrarem-se apenas no conteúdo
multimédia e na meta-informação, ao invés de andarem a procura das informações
necessárias.
Isto pode ser demonstrado mediante um simples exemplo: imagine-se que no cenário da vida
selvagem africana estão a decorrer filmagens. Meta-informação de GPS (i.e., as coordenadas
geográficas da câmara) são adicionadas a cada shot de filmagem como uma anotação. Esta
meta-informação residirá no mesmo ficheiro MXF da informação audiovisual à medida que o
programa é criado. Um processo de produção automática poderá, a posteriori, converter essa
informação das coordenadas GPS em meta-informação adicional legível para humanos. Esta
informação no workflow reduz o nível de intervenção humana, ao mesmo tempo que garante a
exactidão dos dados.
O MXF tem ainda a
vantagem adicional de partilhar
um modelo comum com o
Advanced Authoring Format–
AAF, constituindo este um
modelo sofisticado de dados e um
conjunto de ferramentas de software que permite a dispositivos de pós-produção complexos
partilharem a mesma informação e meta-informação. Isto significa que o uso de material num
ambiente de pós-produção e a extracção da informação final deste ambiente é perfeitamente
transparente.
O que o MXF pode fazer:
O MXF é um formato de ficheiro versátil, capaz de realizar um grande número de tarefas,
nomeadamente:
Armazenar trabalhos já concluídos com a sua meta-informação, substituindo assim o uso
de cassetes;
Armazenar ficheiros num formato transferível (streamable), de forma a ser visível
enquanto se transfere;
Encapsular uma lista de ficheiros a executar e guardar a sua informação de
sincronização;
Encapsular qualquer tipo formato de compressão.
Para se entender melhor este conceito, é preciso diferenciar entre as operações de streaming e
de transferência de ficheiros.
Normalmente, a emissão televisiva é construída a volta do streaming de vídeo e áudio. Isto
é lógico no sentido que a acção na cena original é captura em tempo real de modo contínuo,
permitindo a pré-visualização por parte dos intervenientes, num processo conhecido por continuos
streaming. O PAL e o NTSC, bem como SDI (serial digital interface) digital e SDTI (serial
digital transport (dat) interface) são todos do tipo stream. Contudo, computadores partilham
informação mediante a transferência de ficheiros. É possível, assim, fazer uma distinção entre
estes dois modos de transferência, como mostra a tabela abaixo:
Streaming Media Networked Media
- é visível durante transferência, antes de toda
a informação ser entregue;
- recorre a componentes padronizados de It de
baixo custo;
- garante o atraso mínimo para acção ao vivo; - pode ser armazenada numa grande
variedade de dispositivos, como discos e
cassetes;
- trata-se de uma ligação ponto-a-ponto, sem
perigo de engarrafamento: oferece fiabilidade e
uma operação contínua.
- oferece um intercâmbio, partilha e
distribuição flexível da informação.
Quer uma, quer outra opção têm as suas vantagens, e continuarão em uso, o que exige que
entre elas exista alguma compatibilidade de forma a poderem co-existirem e permitirem a
troca de material entre elas. Com isto em mente, a concepção do MXF torna-o num formato de
ficheiro que pode ser um stream – criando uma ponte transparente entre os dois formatos de
transferência. Não há qualquer esforço por parte do utilizador apara além de solicitar a
transferência.
De uma maneira similar, o pessoal responsável pela criatividade e operacionalidade pode
concentrar os seus esforços nas suas tarefas e não em problemas com a compressão. Contudo, deve-
se ter em conta que nem todos os formatos de compressão se adequarão a todas as aplicações e
vários esquemas continuarão a ser utilizados. Para tal, o MXF é independente da compressão,
oferecendo o mesmo serviço não importa o esquema em uso. Isto permite aos fabricantes
fornecer equipamentos com múltiplos codecs de compressão, o que pode conduzir a um
funcionamento transparente entre, por exemplo, sistemas baseados em MPEG e em DV.
Tendo isso em linha de conta, e de forma a prover um formato para o intercâmbio de
programas, era preciso que não houvesse qualquer ligação a conteúdos externos: todo o
conteúdo deveria estar contido no ficheiro, excepto em caso especiais em que todas as partes
envolvidas na normalização do MXF concordaram.
Além disso, é essencial a interoperabilidade com os formatos de straeams existentes, de
forma a permitir que os discos dos servidores e gravadores operem em harmonia.
Formatos Abertos e Normalização:
O MXF é uma solução aberta e por isso foi submetido à normalização pelo SMPTE. Ao
mesmo tempo, o fórum Pro-Mpeg e a AAF Association tem tido apoio de uma fasquia
considerável dos fabricantes. Adicionalmente, a colaboração com grupos de utilizadores, tais
como o EBU, assegura que as necessidades dos utilizadores estão abrangidas. Além disso
muitos fabricantes e fornecedores de software e hardware estão ansiosos de implementas o MXF tão
cedo quanto possível.
Como já referido, a normalização do MXF é feita segundo as orientações do SMPTE KLV
(Key, Length, Value – um método para o encapsulamento de informação para o transporte em redes)
e tem usado e testado extensivamente o dicionário SMPTE e outros registos.
Alcançar a interoperabilidade tem sido o objectivo primário da Pro-MPEG e MXF, e tal foi
implementado em três áreas:
diversidade das plataformas: o MXF deverá funcionar sobre diferentes protocolos de rede
e sistemas operativos, incluindo Windows, Mac, OS, Unix e Linux;
independência da compressão: não há conversão entre formatos de compressão, o objectivo
é a gestão da informação num ambiente mais amigável, pode ainda lidar com vídeo não
comprimido;
ponte entre o streaming e a transferência de ficheiros: MXF opera transparentemente com
streaming media – especialmente SDTI, em que o máximo intercâmbio transparente é possível. Esta
performance é bi-direccional, do MXF para o streaming e vice-versa, o que significa que o SDTI se
encaixa perfeitamente num ambiente baseado em ficheiros, resultando numa forte convergência.
Como o MXF funciona:
Um ficheiro MXF apresenta a seguinte estrutura:
É dotado de um cabeçalho (header) que provêm da informação sobre o ficheiro como um
todo, incluindo templates para a
determinação precoce do
descodificador, sendo que pelo
menos a primeira parte do
cabeçalho deve ser compatível
com todos os templates; um
rodapé (footer) que termina o
ficheiro e de um corpo (body),
onde se encontra a essência da
informação; no caso de haver
mais de uma essência torna-se
necessário um espaçamento de
forma a garantir a capacidade de
permitir determinadas vantagens
do stream, como a recuperação
de transferências incompletas,
edições por puro corte, etc..
Cada item num ficheiro MXF
encontra-se codificado segundo o sistema KLV (Key, Length, Value). Isto significa que cada item
dentro do ficheiro é identificado por um única chave (key) de 16 bytes e pelo seu comprimento. De
forma a reduzir o overhead podem ser utilizados conjuntos ou pacotes. Definindo o
comprimento de cada campo no ficheiro, incluindo a essência, permite a descodificadores mais
simples de MXF e programas de processamento a ignorar bits do ficheiro que eles não conheçam,
i.e., chaves (keys) que eles não reconhecem. Isto, por sua vez, permite que o formato do ficheiro
evolua de modo a incluir novas capacidades como novos esquemas de compressão, e ainda são
definidos esquemas para a meta-informação.
O comprimento está codificado segundo a notação ASN.1: dado o primeiro byte, L0, se
L0<128, então Length =128, senão o comprimento é definido pelos (L0 – 128) bytes seguintes.
O value consiste na informação em si mesma, e que foi inicialmente definida apenas para a
meta-informação, embora também possa ser usada na essência, i.e., no conteúdo de vídeo e áudio.
Pode ser um conjunto de dados recursivo. O KVL pode, de facto, ser usado para codificar e
identificar qualquer tipo de informação, podendo assim ser usado na construção de qualquer
informação, seja ela meta-informação, controlo, essência ou outra.
Pode ser construída segundo um modelo recursivo de informação, ou seja, conjuntos dentro
de conjuntos, sendo que o SMPTE define 5 tipos básicos de conjuntos:
Conjuntos Universais (etiquetas de codificação universal);
Conjuntos Globais (codificação de chave livre de perdas);
Conjuntos Locais (codificação de chave com perdas);
Pacotes de Comprimento Variável;
Pacotes de comprimento Fixo.
Em relação ao esquema acima, convêm referir algumas coisas. O preâmbulo (pre-amble)
contém parâmetros básicos do conjunto Partition Metadata. O pós-âmbulo (post amble) inclui
um conjunto de Partition Metadata que é completado depois da recepção do restante do
ficheiro, podendo ainda incluir uma repetição da meta-informação do cabeçalho, o que não é
mostrado na figura. O corpo do ficheiro normalmente corresponde a 99% do ficheiro total. A
meta-informação da partição e do cabeçalho pode ser opcionalmente repetida ao longo do
corpo para permitir a recuperação das quebras de transmissão ou após a aceleração de início.
No cabeçalho da área da meta-informação do ficheiro MXF é onde reside grande parte das
vantagens do MXF. Esta é a área em que a meta-informação é adicionada e os parâmetros para
a sincronização e temporização dos ficheiros são definidos. A sincronização e a descrição da
essencialmente controlada por três pacotes:
Pacote do material (material package);
Pacote de Ficheiro (file package);
Pacote da fonte (source package).
O pacote do material representa a linha de tempo de saída do ficheiro. A essência actual
está descrita no pacote do ficheiro. A derivação da essência (anteriormente EDLs, descrição do
estoque do filme original, etc.) está contida dentro do pacote da fonte. Pode ser visto no diagrama
que cada um dos pacotes de ficheiro pode ter um número de faixas (tracks): As faixas
representam cada um dos diferentes elementos da essência (por exemplo, uma faixa do tipo
Picture para o vídeo, uma faixa do tipo Souind para cada um dos canais de áudio, uma faixa do tipo
metadata para a meta-
informação). Estas faixas
por sua vez são
constituídas por uma
sequência de segmentos
que definem como criar a
saída desejada para o
ficheiro.
Se há apenas um
simples segmento no
pacote do material que
corresponde ao inteiro
pacote de ficheiro, então tem-se um ficheiro MXF que representa um EDL. Para gerir a
complexidade do MXF, padrões operacionais (operational patterns) foram definidos que limitam
as capacidades que podem ser usadas em diferentes aplicações. Estas formam uma grelha dividida
verticalmente dependendo da complexidade da timeline dentro do ficheiro e horizontalmente
dependendo do número de diferentes pacotes dentro do ficheiro. Para tal, os padrões
operacionais tem de ser especificados para o corpo e para a meta-informação do cabeçalho, para
permitir meta-informação desde o formato mais simples até o conjunto completo de meta-
informação permitido pelo formato AAF.
Tais padrões são indicados pelas etiquetas SMPTE na frente do cabeçalho e que são legíveis
por qualquer descodificador MXF.
Apresentam-se abaixo alguns dos padrões possíveis.
Figura 1 - Programa Simples
Figura 2 – Programa segmentado simples
Figura 3 – Programa Segmentado Composto
Figura 4 - Programa Simples Não Compilado
Figura 5 - Programa Composto Não Compilado
Figura 6 - Padrão onde só consta a Meta-informação
O MXF prevê ainda diferentes ferramentas tais como tabelas de índices, que permitem a
rápida conversão de índices baseados em amostra, como o timecode, em offsets de bytes dentro do
ficheiro, divisão dos streams, divisão para a recuperação da transferência de ficheiros, suporte
UMID e muitos outras características que fazem deste formato uma escolha para aplicações ricas
em media.
Meta-informação:
O maior objectivo do MXF é a transferência transparente do conteúdo do programa e a
meta-informação nele associada.
Também referida como a “informação da informação”, está presente em todos os sistemas
actualmente. Por exemplo, o timecode é uma forma de meta-informação. O problema reside no
facto que, devido a incompatibilidades, esta informação perder-se à medida que o conteúdo se
move entre sistemas. Sistemas baseados em MXF comunicarão usando meta-informação, vídeo e
áudio. Os tipos de meta-informação possível são os seguintes:
A estrutura do ficheiro;
O conteúdo do corpo (body) – por. Exemplo, MPEG ou DV, 525 ou 625;
Palavras-chaves ou o título;
Subtítulos;
Números de referência;
Notas de edição;
Localização, tempo, data e versão;
Outros;
Esta lista pode ser interminável. Em casos extremos, os ficheiros podem conter mais meta-
informação que conteúdo de vídeo e áudio. Todavia, a implementação eficiente da meta-
informação é vista como a chave para a organização do material, visto que pode ser filtrada
para manter apenas o que é relevante para um dado ambiente.
Figura 7
O conjunto de meta-informação do cabeçalho prevê informação para o corpo do ficheiro,
constituindo uma sequência de conjuntos locais KLV, como definido abaixo. O item End Fill é
usado para identificar o fim da sequência.
gura 8
A meta-informação está normalmente contida num estrutura de informação que define a
sintaxe da meta-informação, ou a sua gramática.
Formato Fixo (por exemplo, o DPX);
Baseado em Stream (por exemplo, MPEG Video-ES);
Baseado em Objectos (por exemplo, OMFI, AAF);
Baseado em Entidade-Associação (por exemplo, BBC SMEF e Sony News).
Tornam-se necessários mecanismos para compilar meta-informação complexa no formato
de stream para o arquivo e transporte.
A figura abaixo mostra como a meta-informação no cabeçalho descreve a estrutura do corpo
do ficheiro, bem como as suas componentes.
Figura 9
Cabe ainda referir a meta-informação mínima que um cabeçalho deve conter. É ela:
Conjunto do Prefácio – prevê parâmetros básicos do ficheiro e apontadores para outros
pacotes e conjuntos de meta-informação;
Conjuntos de identificação - fornece informação sobre o criador do ficheiro MXF e
outras subsequentes alterações;
Meta-informação do pacote material – descrevem a sincronização entre as diferentes
faixas da essência e a faixa de tempo. Inclui conjunto de etiquetagem dos programas e cenas;
Meta-informação do pacote de ficheiro - descreve a essência contida no corpo.
Esta estrutura básica permite um extensão completa para o modelo AAF se e quando
desejado.
Pacotes materiais e de Ficheiro
Figura 10
Figura 13
Suporte da Indústria
A velocidade com que o MXF tem progredido é o resultado de muitos engenheiros na
indústria trabalhando para um mesmo objectivo. Fabricantes e utilizadores reconhecem que
existe uma janela de oportunidade aberta para estabelecer um formato padrão para a indústria. O
uso de vídeo irá aumentar um nivel nunca imaginado com o uso de IT e servidores. Qualquer
atraso no estabelecimento de normalizações pode tornar esta tarefa muito díficil, à medida que
formatos proprietários proliferam-se no vácuo dos formatos.
Para aumentar a velocidade das implementações, um número de SDK ( software
develoopment kit) têm sido desenvolvidos. O código do software é open source, usando as
ferramentas disponíveis podem-se obter produtos básicos MXF muito rapidamente.
Em termos de exigências normativas, qualquer descodificador MXF deve ser capaz de
descodificar pelo menos a estrutura KLV para todas as partes do ficheiro, incluindo a estrutura da
informação para qualquer tipo de coro, bem como o cabeçalho, o que inclui a estrutura do cabeçalho
da meta-informação e do rodapé. A descodificação de outros aspectos tais como a o formato de
compressão dependem da capacidade do descodificador de suportar tais aspectos.
Todos os descodifcadores devem ser capazes de descodificar 3 etiquetas universais:
a própria identificação do ficheiro MXF em si mesmo;
a identificação de padrões, identificando os padrões da meta-informação no corpo;
a identificação do corpo, o que inclui múltiplos identificadores.
MXF e AAF
Advanced Auithoring Format (AAF) é um formato aberto destinado para o pós-produção e
produção de multimédia. Através dele é possível que os criadores dos conteúdos troquem media
digital e meta-informação através de plataformas e entre aplicações. Isto simplifica a gestão de
projectos, economiza tempo e preserva a preciosa meta-informação que antes era facilmente
perdida entre os diferentes estágios produtivos.
O MXF derivou o seu modelo do modelo de dados do AAF e não é mais que um formato
de intercâmbio simples, com o objectivo primário de facilitar a transferência de conteúdos
concluídos, programas inteiros ou secções já concluídas, entre servidores e tape streamers. MXF
também ajuda na tarefa de migração de sistemas de produção simples para ambientes de rede
normalizados.
Estes dois formatos são complementares: enquanto que o AAF integra de muito perto, e
complementa, formatos de ficheiro já existentes para media, o MXF oferece o mesmo para
formatos existentes de streams, bem como ficheiros AAF. Ambos os formatos podem existir por
si só, e cada um tem a sua concepção e funcionalidade optimizada para as suas esferas de aplicação
particulares. Ao mesmo tempo, nenhuma depende da outra. Por exemplo, um sistema inteiro de
broadcast pode usar apenas MXF enquanto que o serviço de pós-produção apenas AAF, embora a
opção natural será o recurso as duas.
Enquanto que o MXF e o AAF são complementares, há muitas diferenças. Uma delas é que o
AAF pode levar referências a material externo colocado noutros suportes, para ser usado numa
edição, o MXF está sempre completo e auto-contido: não requer qualquer acesso a material
externo. Contudo, pode incluir sequências de clips ou segmentos de programas. Adicionalmente, o
AAF inclui processos de transição básicos entre vídeos enquanto que o MXF não tem
necessidade de tal devido a abrangência do seu conteúdo.
As diferenças fundamentais entre estes dois formatos podem ser resumidas no quadro abaixo:
AAF MXF
recorre a alocação espacial de componentes; recorre a concatenação linear de componentes;
foi implementado usando o Microsoft Structured
Storage
trata-se “de um sistema de ficheiros dentro de
um ficheiro”: cada ficheiro AAF assemelha-se a
um único ficheiro mas contém sectores de
armaxzenamento em que cada sector ou grupo de
sectores contêm um componente AAF separado;
é muito flexível, permitindo que o
comprimento dos componentes varie conforme
as necessidedades, contudo está característica
pode causar fragmentação e consequente
redução da performance;
não é tão flexível quanto o AAF e não permite
que os componentes sejam dimensionadaos
conforme as necessidades(as strings de texto têm
um tamanho máximo;
de compreensão relativamente complexa.
Conclusões
Como características mais importantes deste formato podemos referir as seguintes:
As aplicações acedem aos conteúdos por um interface comum, criado para uma
interoperacionalidae máxima.
É um formato independente do formato de compressão, permitindo que a metadata
seja preservada em qualquer formato de compressão.
Suporta acesso aleatório e transferências de ficheiros parciais, i.e. pode ser só
transferido apenas o destaque de um acontecimento desportivo ou noticia sem ser necessário
transferir o ficheiro todo.
Permite a visualização e acesso aos dados transmitidos antes de serem completados.
Facilidade de organização e arquivamento dos dados.
O MXF é um formato que pretende satisfazer as exigências do utilizador e também fazer a
ponte entre as antigos estúdios centralizados para os sistemas de redes distribuídas.
Bibliografia:
the Material eXchange Format, Pro-MPEG draft white paper
MXF-the Material eXchange Format, Bruce Devlin
MXF File Format Update, Jim Wilkinson Pro-MPEG Forum
Pro-MPEG/AAF Assn.‘MXF ’, Tim Berners-Lee,1999
The Material Exchange Format (MXF) and its Application, Jim Wilkinson and Bruce Devlin