Como devo codificar um vídeo H.264 totalmente funcional para o Flash player?

0

Eu fiz uma lição de casa:

Parece que devo usar um comando como ffmpeg -i input.mp4 -vcodec libx264 -g 1 -r 25 output.mp4 , mas isso não funcionou: o output.mp4 não pode pular para outros pontos de busca (pontos de munição) corretamente em qualquer Flash player. Minha pesquisa mostra que o vídeo pode não ter codificações suficientes / corretas codificadas, mas -g 1 deve fazer o trabalho. O input.mp4 é feito pelo XVidCap diretamente.

    
por cache 17.06.2012 / 23:31

2 respostas

0

Codificação de mídia Flash

Os controles disponíveis no Flash Media Encoding Server são muito mais extensos do que o Adobe Media Encoder, mas você começa praticamente da mesma maneira: escolhendo o formato e a predefinição do contêiner

OFlashMediaServereoFlashPlayerpodemtransmitiroureproduzirqualquerarquivoH.264empraticamentequalquerformato,portanto,ocontêinerF4VouMP4funcionaria.SevocêquiserumarquivoquepossaserreproduzidotantopeloQuickTimePlayerquantopeloFlashPlayer,euescolheriaoMP4;casocontrário,useF4V.Escolhaumapredefiniçãoqueuseumaresoluçãoigualousuperioràsuametaparagarantirquevocêuseoperfileoníveladequados.

AFigura13mostraosparâmetrosrelacionadosaoH.264noFlashMediaEncodingServer.ÀesquerdaestãoosvalorespadrãodapredefiniçãoselecionadanaFiguraabaixo.Àdireitaestãoosvaloresqueeuusaria.Osasteriscosvermelhosgrandesidentificamasalteraçõesrecomendadasdosvalorespredefinidos,nenhumdosquaisémuitodramático.

Eu estenderia o tamanho do GOP para 300 e usaria o posicionamento de quadro B adaptável para fornecer ao codificador a máxima flexibilidade. Estender o número de quadros de referência de 2 a 4 aumenta potencialmente a qualidade a um custo reduzido na codificação do tempo e na complexidade da decodificação, enquanto a desativação de decisões inter e intra rápidas novamente aumenta a qualidade, com algum aumento no tempo de codificação.

No geral, meus valores recomendados devem produzir a melhor qualidade, embora na borda externa do tempo de codificação. Se a taxa de transferência for crítica, eu faria o seguinte:

Use o valor padrão de 2 para quadros de referência

Ativar todas as opções de codificação "rápidas"

Use um formato de pesquisa 16 × 16

Use um pixel total para o modo de subpixel com estimativa de movimento

Ativar duas ou quatro fatias, supondo que você estava codificando em um sistema com vários núcleos

Se você tomar este caminho, no entanto, você deve comparar a saída desses parâmetros com a saída usando as configurações recomendadas mostradas na Figura abaixo para ver se os parâmetros de codificação mais rápidos fazem uma diferença de qualidade perceptível.

Na frente de áudio, eu usaria os valores padrão e alteraria apenas a taxa de bits de destino e os canais para corresponder aos meus destinos. Eu também uso os valores padrão para outros parâmetros de codificação H.264, como os registros de data e hora e os códigos de fim de seqüência, que o Flash Media Encoding Server disponibiliza.

É isso! Vá codificar alguns vídeos.

    
por 22.06.2012 / 17:19
2

Eu usei o seguinte comando ffmpeg para codificar o vídeo:

ffmpeg.exe
-i big_buck_bunny_trailer-1080p.ogg
-c:v libx264 -profile:v baseline -preset slow -b:v 800k
-c:a libvo_aacenc -b:a 128k
-s 512x288 
-movflags faststart
big_buck_bunny_trailer-288p-faststart.mp4

Os vídeos codificados parecem ser carregados corretamente em players Flash e HTML5. A linha de comando foi retirada de artigo .

    
por 03.09.2013 / 19:37