设置量化参数QP=0ffmpeg -i input -c:v libx264 -preset ultrafast -qp 0 output.mkvCRF是恒定质量的编码方式。设置QP比设置CRF要好。因为8 bitx264和10 bitx264中的 crf 针对无损模式使用了不同的值。...
咱们平时如果经常拍视频的话,都会遇到一个困境:视频文件太大了,存储的时候需要占用很多的空间。如果直接使用视频压缩工具来压缩码率的话,又会担心损失了视频的画质,这该怎么办呢?
这个时候,我们就可以使用
ffmpeg
的hevc编码功能来实现
无损
的压缩!
什么是
FFmpeg
?
FFmpeg
是业内有名的开源图像视频处理程序。它被广泛的使用,在许多视频剪辑软件、图像处理软件中,都使用的
FFmpeg
,还有比如OBS这样的导播软件里面也使用了
FFmpeg
啥是HEVC编码?
咱们常用的MP4格式中,一般使用的
代码调用:
command='
ffmpeg
.exe -i "视频\\{}.mp4" -i "视频\\{}.mp4" -acodec copy -vcodec copy "视频\\{}.mp4"'.format(audiofile,videofile,add)
原先以为是合并的文件名中有非法字符,或者是
ffmpeg
的环境变量没有配好。
代码调用:
command='E:\\javaEdit\\
ffmpeg
\\
ffmpeg
-2022-0
FFmpeg
是一种强大的多媒体处理工具,可以用来处理音频和视频文件。使用
FFmpeg
,用户可以轻松地进行音频和视频的格式转换、剪切、合并、裁剪以及其他各种操作。
其中,
无损
合并视频是
FFmpeg
的重要功能之一。
无损
合并是指将多个视频文件合并到一起,且合并后的视频质量与原始视频质量完全一致,没有任何损失。合并后的视频不会产生任何图像质量的损失,不会有任何的时间空隙,也不会产生任何的卡顿。
要实现
无损
合并视频,首先需要下载并安装
FFmpeg
,在安装完成之后,打开命令行窗口(Windows用户)或Terminal(Mac用户/Linux用户),输入以下命令:
ffmpeg
-i input1.mp4 -i input2.mp4 -i input3.mp4 -filter_complex "[0:v:0] [0:a:0] [1:v:0] [1:a:0] [2:v:0] [2:a:0] concat=n=3:v=1:a=1 [v] [a]" -map "[v]" -map "[a]" output.mp4
其中,input1.mp4、input2.mp4和input3.mp4是要合并的视频文件名称,output.mp4是合并后的视频文件名称。如果需要合并多个视频,可以根据需要添加更多的-i参数。
以上命令中,filter_complex参数的作用是将多个视频文件合并在一起,n=3表示有三个输入文件,v=1表示合并视频流,a=1表示合并音频流。
输入完命令后,按下回车键,等待合并过程完成即可。合并后的视频质量与原始视频质量完全一致,没有任何损失,用户可以用来进行后续编辑和制作。