FFmpeg - scale e pad [duplicado]

2

Eu tenho um vídeo que quero melhorar, mas não quero perder a proporção do vídeo original.

Minha resolução de arquivo de origem é 864 x 692 e quero atualizá-lo para 1280 x 720

Eu encontrei isso no superusuário , mas sinceramente eu não conseguia entender como fazê-lo.

Se você puder me ajudar a construir um comando ffmpeg que seja adequado ao meu caso, isso realmente me ajudará.

Obrigado

Atualização Eu usei este guia e cheguei perto de tudo o que eu queria fazer link

    
por Levan 24.10.2015 / 23:37

1 resposta

8

Você tem duas opções principais para ajustá-lo depois de usar a escala : pad ou corte . Dê uma olhada nestes exemplos e na documentação de cada filtro.

pad

Isso irá reforçar a imagem.

ffmpeg-iinput-vf"scale=-1:720,pad=1280:ih:(ow-iw)/2" output

Um comando mais genérico que funcionará para todas as relações de aspecto do arquivo de entrada usará force_original_aspect_ratio=1 como uma opção para scale :

ffmpeg -i input -vf "scale=w=1280:h=720:force_original_aspect_ratio=1,pad=1280:720:(ow-iw)/2:(oh-ih)/2" output

recorte

Isso cortará a parte superior e inferior.

ffmpeg-iinput-vf"scale=1280:-1,crop=iw:720" output

Um comando mais genérico que funcionará para todas as relações de aspecto do arquivo de entrada usará force_original_aspect_ratio=2 como uma opção para scale :

ffmpeg -i input -vf "scale=w=1280:h=720:force_original_aspect_ratio=2,crop=1280:720" output

Use seu player

Se você não quer se preocupar com a re-codificação, qualquer jogador que valha a pena usá-lo deve permitir que você faça isso após a reprodução. Exemplo usando ffplay :

ffplay -vf "scale=-1:720,pad=1280:ih:(ow-iw)/2" input

Ou veja "Efeitos de Vídeo" no VLC.

    
por 25.10.2015 / 03:19

Tags