
Quando uso isso, a qualidade não parece ruim.
ffmpeg -same_quant -i video.mp4 video.avi
Na ffmpeg
documentação está escrito: "Observe que NÃO É A MESMA QUALIDADE. Não use esta opção a menos que saiba que precisa dela."
Recebo com -same_quant
a melhor qualidade ou existe uma opção que dá a mesma qualidade da entrada e é mais recomendada?
Responder1
(adaptado dos comentários acima)
Dependendo dos codecs usados (alguns codecs são incompatíveis com alguns contêineres), você pode simplesmente copiar os streams ( -codec copy
). Essa é a melhor maneira de evitar alterações de qualidade, já que você não está recodificando os fluxos, apenas reembalando-os em um contêiner diferente.
Ao lidar com arquivos de áudio/vídeo, é importante ter em mente quecontainerssão em sua maioria independentes dos codecs usados. É comum ver pessoas se referindo a arquivos como “vídeo AVI” ou “vídeo MP4”, mas esses são contêineres e pouco nos dizem sobre se um player será capaz de reproduzir os streams, pois, além de limitações técnicas (por exemplo,AVI pode ter problemas com h264 e Ogg Vorbis), você pode usar qualquer codec.
-same_quant
parece ser uma maneira de dizer ao ffmpeg para tentar obter uma qualidade semelhante, mas assim que você recodificar o vídeo (pelo menos com codecs com perdas), você não terá como obter a mesma qualidade. Se você está preocupado com a qualidade, uma boa regra é evitar recodificar os fluxos quando possível.
Então, para copiar os streams com o ffmpeg, você faria:
ffmpeg -i video.mp4 -codec copy video.avi
(Como @ Peter.O mencionou, a ordem das opções é importante, então é para onde -codec copy
devemos ir. Você ainda pode manter -same_quant
, mas isso não terá nenhum efeito, pois você não está recodificando os fluxos.)
Responder2
No FreeBSD 8.2, tentei -codec copy, mas também recebi uma mensagem desconhecida decodificada. Após tentativa e erro, encontrei aquele que funciona no FreeBSD:
ffmpeg -i video.mp4 -vcodec copy video.avi