Como aumentar a velocidade de vídeo e taxa de quadros sem duplicar quadros

5

Eu tenho um longo vídeo com uma taxa de quadros de 30 FPS que eu quero converter em um intervalo de tempo de 200x com uma taxa de quadros de 60 FPS. Meu único problema é que o avconv está duplicando desnecessariamente todos os outros quadros na saída, fazendo com que a saída de 60 FPS seja efetivamente de 30 FPS. Eu quero que cada quadro seja único. Com um aumento de velocidade de 200x e aumento de 2 vezes na taxa de quadros, não há motivo para duplicar quadros.

Por exemplo, o problema é que a saída está usando quadros de origem como 1,1,21,21,41,41, ... quando eu quero usar quadros 1,11,21,31,41,51 ...

Aqui está o comando que estou usando:

avconv -i input_30fps.avi -vcodec h264 -an -r 60 -vf "setpts=(1/200)*PTS" output_200x_60fps.avi
    
por Pilot_51 18.07.2016 / 22:07

2 respostas

4
Como acontece regularmente comigo, depois de passar horas tentando descobrir antes de pedir ajuda, encontro a solução sozinha minutos depois de perguntar.

Acontece que o avconv não é o melhor substituto para o ffmpeg que eu achei que era quando o Linux Mint, o IIRC, removeu o ffmpeg do repositório oficial em favor do avconv. De qualquer forma, o ffmpeg está de volta e eu o instalei e encontrei o comando equivalente que não duplica frames:

ffmpeg -i input_30fps.avi -vcodec h264 -an -vf "fps=60, setpts=(1/200)*PTS" output_200x_60fps.avi
    
por 18.07.2016 / 23:00
0

Sim, o motivo pelo qual não funcionou é que o comando que você usou NÃO foi projetado para acelerar a reprodução, mas para aumentar a definição do vídeo.

    
por 16.01.2017 / 20:01