Remover-to 10

Remover-to 10

Testei um comando ffmpeg para gerar miniatura ffmpeg -y -ss 0 -to 10 -i acb.mp4 -qscale:v 2 -frames:v 1 abc.jpegno macOS e funcionou bem, mas deu erro para o mesmo comando no ubuntu 18.04.2 (AWS EC2) para ffmpeg.

erro:

Option to (record or transcode stop time) cannot be applied to input url abc.mp4 -- you are trying to apply an input option to an output file or vice versa. Move this option before the file it belongs to.
Error parsing options for input file abc.mp4.
Error opening input files: Invalid argument

Estou usando AWS EC2 (ubuntu 18.04.2), usei sudo apt install ffmpeg. Alguém pode me ajudar com isso, se eu tiver que instalá-lo de uma maneira diferente ou se estiver faltando alguma coisa aqui. Desde já, obrigado.

Responder1

Remover-to 10

  • Você está gerando um único quadro, então não precisa declarar um tempo de parada de duração com -to. Uma única imagem não tem duração, portanto -toé ignorada de qualquer maneira.
  • -ss(deslocamento de horário de início) com um valor de 0não está fazendo nada, então você também pode removê-lo.

Exemplo:

    ffmpeg -y -i acb.mp4 -qscale:v 2 -frames:v 1 abc.jpeg

O mesmo que acima, mas obtém uma captura de tela em 30 segundos:

    ffmpeg -y -ss 30 -i acb.mp4 -qscale:v 2 -frames:v 1 abc.jpeg

Obtenha uma captura de tela às 22 horas, 15 minutos e 5 segundos, mas produza uma qualidade inferior:

    ffmpeg -y -ss 22:15:05 -i acb.mp4 -q:v 5 -frames:v 1 abc.jpeg

Você pode usar o alias -q:vem vez de -qscale:v, se desejar.

Por que funciona no macOS e não no Ubuntu

A -toopção anteriormente era apenas uma opção de saída. Ele foi atualizado para funcionar também como arquivo de entrada (declarado antes -i). Você está usando o FFmpeg 3.4.6, que é muito antigo para ser usado -tocomo opção de entrada. Sua versão do FFmpeg no macOS é nova o suficiente para ser usada -tocomo opção de entrada. Mas, como mencionado anteriormente, ao gerar uma única imagem, -tonada acontece e ela é ignorada.

Veja também

informação relacionada