如何使用ffmpeg高质量将flv转换为avi

Nao*_*ota 31 linux flash video ffmpeg flash-video

需要将flv文件转换为avi或mov,尝试ffmpeg但输出质量很差.如何使视频输出与源相同?

我以为ffmpeg -i name.flv -s 320x ... name.avi会这样做,但没有好处.

lau*_*ent 27

这是我用于ffmpeg项目的命令,质量应该足够好.如果没有,请尝试增加比特率(-b参数):

ffmpeg -i input.flv -ar 22050 -b 2048k output.avi
Run Code Online (Sandbox Code Playgroud)

  • @OptimusPrime:分别是视频/音频比特率(如果其他人也感到困惑). (3认同)

Elb*_*lby 15

这是一个很好的解决方案

ffmpeg -async 1 -i inputVideo.flv -f avi -b 700k -qscale 0 -ab 160k -ar 44100 outputVideo.avi
Run Code Online (Sandbox Code Playgroud)

或者使用以下一个

ffmpeg -loglevel 0 -async 1 -i inputVideo.flv -f avi -b 700k -sameq -ab 160k -ar 44100 outputVideo.avi
Run Code Online (Sandbox Code Playgroud)

  • +1,上面的第一个命令是唯一一个对我有用的命令,其他命令有"无效参数"或seg故障. (2认同)

小智 8

互联网上还有另一个解决方案,就像魅力一样!

只需使用相同的质量参数-sameq.

ffmpeg.exe -i video.flv -sameq outputVideo.avi
Run Code Online (Sandbox Code Playgroud)

实际上命令sameq的质量不一样.为了成功地执行此操作,必须应用此选项:如果您要在此处执行多个文件,则执行完整命令

for %i in (*.flv) do ffmpeg -i "%i" -q:a 0 -q:v 0 "%i".avi
Run Code Online (Sandbox Code Playgroud)

  • 这并不意味着"同样的质量":http://ffmpeg.org/trac/ffmpeg/wiki/Option%20%27-sameq%27%20does%20NOT%20mean%20%27same%20quality%27 (15认同)
  • "选项'sameq'已被删除.如果您正在寻找保留质量的选项(这不是-sameq的用途),请使用-qscale 0或等效的品质因数选项." (3认同)
  • `-q:a 0 -q:v 0` 是 2020 年的答案 (2认同)

Saa*_*ees 5

为了保持优质使用-qscale 0

例如 ffmpeg.exe -i InputVid.avi -qscale 0 OutputVid.mp4

我将1.64 GB的AVI视频转换为4.35 MB的mp4文件。