Uso de pontos de sinalização com legendas

Os pontos de sinalização permitem que você interaja com um vídeo. Por exemplo, é possível afetar a execução de um arquivo FLV ou exibir texto em momentos específicos no vídeo. Se você não tiver um arquivo XML Timed Text a ser usado com um arquivo FLV, poderá incorporar os pontos de sinalização de eventos em um arquivo FLV e associá-los ao texto. Esta seção apresenta informações sobre os padrões de pontos de sinalização do componente FLVPlaybackCaptioning e uma visão geral de como associar esses pontos de sinalização ao texto das legendas. Para obter mais informações sobre como incorporar pontos de sinalização de eventos no assistente de importação de vídeo ou no Flash Video Encoder, consulte o Capítulo 16, “Trabalho com vídeo”, em Uso do Flash .

Noções básicas dos padrões de ponto de sinalização do FLVPlaybackCaptioning

Nos metadados do arquivo FLV, um ponto de sinalização é representado como um objeto com as seguintes propriedades: name , time , type e parameters . Os pontos de sinalização do ActionScript do FLVPlaybackCaptioning têm os seguintes atributos:

name
A propriedade name é uma string que contém o nome atribuído do ponto de sinalização. A propriedade name deve iniciar com o prefixo fl.video.caption.2.0. e ter uma string após o prefixo. A string é uma série de números inteiros positivos que são incrementados a cada momento para manter a exclusividade de cada nome. O prefixo inclui o número de versão que também corresponde ao número de versão do FLVPlayback. Para o Adobe Flash CS4 e superior, você deve definir o número de versão como 2.0 .

time
A propriedade time é a hora em que a legenda deve ser exibida.

type
A propriedade type é uma string cujo valor é "event" .

parameters
A propriedade parameters é uma matriz que suporta os seguintes pares de nome/valor:
text:String
O texto em formato HTML da legenda. Esse texto é passado diretamente para a propriedade TextField.htmlText . O componente FLVPlaybackCaptioning suporta uma propriedade text: n opcional, que aceita o uso de várias faixas de idioma. Para obter mais informações, consulte Suporte para várias faixas de idioma com pontos de sinalização incorporados .

endTime:Number
A hora em que a legenda deve desaparecer. Se você não especificar essa propriedade , o componente FLVPlaybackCaptioning assumirá que ela não é um número (NaN), e a legenda será exibida até que o arquivo FLV seja concluído (a ocorrência de FLVPlayback despacha o evento VideoEvent.COMPLETE ) . Especifique a propriedade endTime:Number em segundos.

backgroundColor:uint
Este parâmetro define TextField.backgroundColor . Essa propriedade é opcional.

backgroundColorAlpha:Boolean
Se backgroundColor tiver um alfa equivalente a 0%, o parâmetro definirá TextField.background = !backgroundColor . Essa propriedade é opcional.

wrapOption:Boolean
Este parâmetro define TextField.wordWrap. Essa propriedade é opcional.

Noções básicas da criação de legendas para pontos de sinalização de eventos incorporados

Se você não tiver um arquivo XML Timed Text que contenha legendas para o arquivo FLV, poderá criar legendas associando um arquivo XML que contenha legendas aos pontos de sinalização de eventos incorporados. A amostra XML assume que você executou as seguintes etapas para criar pontos de sinalização de eventos incorporados no vídeo:

  • Adicione os pontos de sinalização de eventos (de acordo os padrões de FLVPlaybackCaptioning) e decodifique o vídeo.

  • No Flash, arraste um componente FLVPlayback e um componente FLVPlaybackCaptioning para o Palco.

  • Defina as propriedades de origem dos componentes FLVPlayback e FLVPlaybackCaptioning (o local do arquivo FLV e o local do arquivo XML).

  • Publique.

    A amostra a seguir importa o XML para o codificador:

    <?xml version="1.0" encoding="UTF-8" standalone="no" ?> 
    <FLVCoreCuePoints> 
     
        <CuePoint> 
            <Time>9136</Time> 
            <Type>event</Type> 
            <Name>fl.video.caption.2.0.index1</Name> 
            <Parameters> 
                <Parameter> 
                    <Name>text</Name> 
                    <Value><![CDATA[Captioning text for the first cue point]]></Value> 
                </Parameter> 
            </Parameters> 
        </CuePoint> 
     
        <CuePoint> 
            <Time>19327</Time> 
            <Type>event</Type> 
            <Name>fl.video.caption.2.0.index2</Name> 
            <Parameters> 
                <Parameter> 
                    <Name>text</Name> 
                    <Value><![CDATA[Captioning text for the second cue point]]></Value> 
                </Parameter> 
            </Parameters> 
        </CuePoint> 
     
        <CuePoint> 
            <Time>24247</Time> 
            <Type>event</Type> 
            <Name>fl.video.caption.2.0.index3</Name> 
            <Parameters> 
                <Parameter> 
                    <Name>text</Name> 
                    <Value><![CDATA[Captioning text for the third cue point]]></Value> 
                </Parameter> 
            </Parameters> 
        </CuePoint> 
     
        <CuePoint> 
            <Time>36546</Time> 
            <Type>event</Type> 
            <Name>fl.video.caption.2.0.index4</Name> 
            <Parameters> 
                <Parameter> 
                    <Name>text</Name> 
                    <Value><![CDATA[Captioning text for the fourth cue point]]></Value> 
                </Parameter> 
            </Parameters> 
        </CuePoint> 
     
    </FLVCoreCuePoints>

    O componente FLVPlaybackCaptioning também suporta várias faixas de idioma com o ponto de sinalização incorporado. Para obter mais informações, consulte Suporte para várias faixas de idioma com pontos de sinalização incorporados .

Suporte para várias faixas de idioma com pontos de sinalização incorporados

A propriedade track do FLVPlaybackCaptioning suporta várias faixas de idioma com pontos de sinalização incorporados, contanto que o arquivo XML Timed Text esteja de acordo com os padrões de ponto de sinalização do FLVPlaybackCaptioning. (Para obter mais informações, consulte Noções básicas dos padrões de ponto de sinalização do FLVPlaybackCaptioning .) No entanto, o componente FLVPlaybackCaptioning não suporta várias faixas de idioma em arquivos XML separados. Para usar a propriedade track , defina-a com um valor diferente de 0. Por exemplo, se você definir a propriedade track como 1 ( track == 1) , o componente FLVPlaybackCaptioning pesquisará os parâmetros de ponto de sinalização. Se uma correspondência não for encontrada, a propriedade text dos parâmetros de ponto de sinalização será usada. Para obter mais informações, consulte a propriedade track na Referência do ActionScript 3.0 para o Flash Professional .