Edição de filmes precisa e confiável com avconv

4

Estou tentando realizar a edição de filmes de forma automatizada com o avconv. É feito em duas etapas:

  1. extrair algumas partes de um filme de entrada:
  2. concatena as partes para formar um filme de saída:

Eu tentei algumas combinações de containers e codecs para os filmes intermediários e de saída, mas sempre resultou em uma das seguintes situações:

  1. o áudio fica cada vez mais atrasado durante a reprodução do filme de saída. Parece que cada transição das partes concatenadas aumenta o atraso do áudio. Isso acontece, por exemplo, com os seguintes formatos e codecs:

    avconv -i input-movie.avi -ss $TIME_1 -vframes $NUMFRAMES_1 -f avi -q 1 -aq 1 -y movie-part1.avi
    avconv -i input-movie.avi -ss $TIME_2 -vframes $NUMFRAMES_2 -f avi -q 1 -aq 1 -y movie-part2.avi
    ...
    avconv -i input-movie.avi -ss $TIME_N -vframes $NUMFRAMES_N -f avi -q 1 -aq 1 -y movie-partN.avi
    
    avconv -i concat:movie-part1.avi|movie-part2.avi|...|movie-partN.avi -f avi -codec mpeg4 -q 1 -acodec libmp3lame -aq 1 -y output-movie.avi
    
  2. áudio e vídeo no filme de saída estão em sincronia, mas é mais longo do que deveria ser. Nessa situação, a saída de avprobe -show_streams output-movie mostra a duração e o vídeo nb_frames mais que o esperado, embora a execução de avconv -i output-video -f image2 %06d.jpg produza o número esperado de arquivos de quadro jpg (o número esperado de quadros é $NUMFRAMES_1 + $NUMFRAMES_2 + ... + $NUMFRAMES_N ). Isso acontece, por exemplo, com os seguintes formatos e codecs:

    avconv -i input-movie.avi -ss $TIME_1 -vframes $NUMFRAMES_1 -f mpeg -q 1 -aq 1 -y movie-part1.mpeg
    avconv -i input-movie.avi -ss $TIME_2 -vframes $NUMFRAMES_2 -f mpeg -q 1 -aq 1 -y movie-part2.mpeg
    ...
    avconv -i input-movie.avi -ss $TIME_N -vframes $NUMFRAMES_N -f mpeg -q 1 -aq 1 -y movie-partN.mpeg
    
    avconv -i concat:movie-part1.mpeg|movie-part2.mpeg|...|movie-partN.mpeg -f avi -codec mpeg4 -q 1 -acodec libmp3lame -aq 1 -y output-movie.avi
    

Existe uma maneira confiável / precisa de realizar essas operações e obter um filme resultante com áudio e vídeo em sincronia e com o número esperado de quadros?

    
por erdavila 06.03.2013 / 02:31

0 respostas