Conversão FFMPEG de melhor qualidade de MTS para AVI

3

Eu recebi o seguinte código de algum fórum. Sou iniciante, por favor, tenha paciência com minhas perguntas ...

Preciso converter um vídeo de MTS para AVI em muito boa qualidade. Atualmente, estou usando o seguinte código para conversão.

for %%a in ("*.mts") do ffmpeg.exe -i "%%a" -vcodec libxvid -vtag XVID -aspect 16:9 -maxrate 1800k -b 1500k -qmin 10 -qmax 42 -bufsize 5120  -acodec libmp3lame -ac 2 -ab 160k -y "%%~na_xvid.avi" 
for %%a in ("*.m2ts") do ffmpeg.exe -i "%%a" -vcodec libxvid -vtag XVID -aspect 16:9 -maxrate 1800k -b 1500k -qmin 10 -qmax 42 -bufsize 5120 -acodec libmp3lame -ac 2 -ab 160k -y "%%~na_xvid.avi" 

Mas estou esperando uma qualidade melhor que a acima. Como faço para conseguir isso?


fonte
Você pode quantificar o que consideraria aceitável? Qual é a qualidade da entrada? O que você tentou? Você já tentou ajustar as opções relacionadas à qualidade?
tripleee
Não é o principal problema aqui que você está usando xvid? O H.264 é amplamente usado para compactar vídeo HD de alta qualidade, mas em resoluções SD comprime mais que xvid para a mesma qualidade de vídeo.
precisa
@ Tripleee: Tirei vídeos no Sony Digicam com qualidade HD e no MTS .. Quero converter para AVI e quero ver os vídeos quadro a quadro .. Então, para isso, preciso de uma Ouput de qualidade HD no formato AVI
@ Chris Becke: Obrigado, cara. Mas sou novo nisso .. Minha exigência é que preciso converter arquivos MTS de qualidade HD em AVI de qualidade HD usando FFMPEG ... Vocês podem me fornecer a codificação para fazer isso? ? Obrigado antecipadamente

Respostas:

4

Vídeo MPEG-4 Parte 2

Ao codificar para vídeo MPEG-4 Parte 2 usando os codificadores mpeg4ou libxviduse -qscale:v(ou o alias -q:v).

ffmpeg -i input -c:v libxvid -qscale:v 2 -c:a libmp3lame -ac 2 -q:a 4 output.avi
  • Ajuste -qscale:vpara a qualidade do vídeo e -q:a(semelhante a lame -V) para a qualidade do áudio.

  • Um valor mais baixo é uma qualidade mais alta para ambas as opções. Talvez você não consiga diferenciar a entrada e a saída com -qscale:v 2.

Veja também:

Vídeo H.264 e H.265 / HEVC

O vídeo MPEG-4 Parte 2 está desatualizado. O uso de um formato mais moderno fornecerá melhor qualidade com taxas de bits mais baixas.

Exemplo simples, supondo que você ffmpegtenha suporte para libx264 / libx265 (provavelmente):

ffmpeg -i input output.mp4

O exemplo acima usará a configuração padrão que é a mesma que abaixo:

ffmpeg -i input -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k output.mp4
  • Evite o AVI, se possível, com esses codificadores.
  • Use AAC em vez de MP3.

Veja também:

llogan
fonte
Observe que você só deve usar isso se precisar usar um player de hardware antigo que não possa lidar com vídeo h.264 + áudio AAC em um MP4.
evilsoup
0

Sendo eu mesmo amador, no Linux eu uso ffmpeg -i video.MTS -acodec copy -vcodec rawvideo -y video.avipara manter o vídeo bruto e os dados de áudio originais. Os sinalizadores mais opções são

-i: input file
-acodec copy: copy audio codec
-vcodec rawvideo: keep raw data for video codec
-y: silently overwrite output files

Para vários .mtsarquivos em um diretório, execute

for f in *.MTS; do ffmpeg -i $f -acodec copy -vcodec rawvideo -y  ${f%.*}.avi; done

Isso mantém a qualidade do vídeo, apesar de resultar em .aviarquivos muito grandes .

batista
fonte