Como posso encontrar atraso exato em fluxos de áudio e vídeo mal sincronizados em um contêiner de mídia?

1

Ao fazer screencasts, sempre acabo tendo um arquivo com fluxos de áudio e vídeo mal sincronizados. Isso não é específico do contêiner, pois isso acontece com todos os formatos - ogg, mkv, avi, mp4 etc. Eu acho que isso tem algo a ver com o ffmpeg.

Após pesquisar na Internet, descobri que isso pode ser corrigido usando o parâmetro itsoffset no ffmpeg. Eu também testei e funciona. Mas a questão é como encontrar o atraso exato entre os fluxos de áudio e vídeo em segundos: milissegundos? Eu tentei ffmpeg -i mas sempre mostra atraso para ser zero.

    
por user8592 20.01.2011 / 12:05

1 resposta

2

Você sabe o que é um badalo? É um dispositivo antigo usado no cinema e se parece com isso:

Isso é usado pelo editor para sincronizar o vídeo e o áudio juntos. Você precisa disso porque não há nada sobre fluxos de áudio e vídeo que realmente permitam que um computador calcule o quanto estão fora de sincronia.

Seu melhor curso de ação é descobrir por que sua gravação está saindo de sincronia. Parece que o seu computador pode ser fraco (conjectura como eu não sei o quão poderoso é o seu computador). Se você não conseguir resolver o problema de sincronização, use um badalo (ou faça um) e, em seguida, faça um teste e um erro para sincronizá-lo.

É claro que isso só ajuda com problemas de sincronização fixos; se você tiver problemas de sincronização progressiva, poderá usar a fórmula de tempo para ressincronizar os fluxos e isso é algo que o computador pode ajudá-lo. É suspeito que é o que o ffmpeg está tentando fazer.

    
por Martin Owens -doctormo- 20.01.2011 / 12:27