附:ffmpeg一些实用命令
删除视频中的音频:
ffmpeg.exe -i videoWithAudio.mp4 -c:v copy -an videoWithoutAudio.mp4
给视频添加音频:
ffmpeg \ -i video.mp4 \ -i audio.mp3 \ -c copy \ -map 0:v:0 \ -map 1:a:0 \ videoWithAudio.mp4
所做的就是使用map命令将视频和音频分别从不同的文件中复制到同一个输出文件。
- -map 0:v:0 选择了第0个输入文件(视频输入)的第0个轨道。
- –map 1:a:0 选择了第一个输入文件(音频输入)的第0个轨道。
- 不用重新编码,-c copy同时复制音轨和视轨到输出文件。
从视频中提取音频:
ffmpeg -i videoWithAudio.mp4 -vn -acodec copy onlyAudio.aac
提取时重新编码,并设置质量:
ffmpeg.exe -i videoWithAudio.mp4 -vn -c:a libmp3lame -q:a 1 onlyAudio.mp3
-q:a表示质量(在LAME文档中定义[1]),质量分布范围为0~6,其中0表示高质量音频,6表示低质量音频。
替换视频中的音频:
ffmpeg -i video_with_audio.mp4 -i newAudio.wav \ -map 0:0 \ -map 1:0 \ -c:v copy \ -c:a libmp3lame -q:a 1 \ -shortest \ video_with_newAudio.mp4
从一个文件中获取视频以及另一个文件中获取音频。而map命令完成了上述操作。从第一个输入文件(视频)中选择第0个轨道,并从第2个输入文件(音频)中选择第0个轨道。
然后原样复制视频并重新编码音频,再将它们一起放入新的文件中。如果你不想重新编码音频,你只需使用-a:c copy命令,那么音频就只被复制而不会重新编码。
-shortest命令用于确保当达到较短的输入文件(两个输入文件之一)长度时停止转换。
H264 vs H265
H.264,又称高级视频编码 (AVC) 或 MPEG-4 Part 10,是当今广泛使用的视频压缩标准。它支持 .mp4、.mov、.3gp、.ts 或 .f4v 等格式,即使在较小的比特率下也能提供出色的质量。
与 H.264 相比,H.265(高效视频编码,或 MPEG-H 第 2 部分)提供了比 H.264 更出色的视频压缩和质量。它支持低比特率的 UHD 8K 视频,以实现更流畅的流媒体播放。
总体而言,H.265 的编码效率比 H.264 最多可节省 50% 的码率。换句话说,即使提供与 H.264 相同的编码质量,H.265 也可以处理更大范围的码率降低。
视频质量
H.265 兼容识别分辨率高达 8192×4320 像素的 8K 超高清视频的能力。相比之下,H.264 仅支持流式传输 2048×2048 像素的视频(4K 高清)。
此外,H.265 可以将比特率比 H.264 降低 30%,但不会导致视频质量下降。因此,当它们保持相同的比特率时,H.265 可以为您提供更好的图像质量。
结论: H.265 可以提供更好的图像质量,但在流式传输视频时仍保留 30% 的较低比特率。
文件大小
视频文件大小很大程度上取决于媒体的比特率。比特率越高,视频文件占用的空间就越大。因此,如前所述,当 H.265 可以使用较低的比特率来编码与 H.264 相同质量的视频时,H.265 文件的输出文件大小将约为 H.264 的一半。总之,H.265 可以为您提供更好的图像质量,但需要的保存空间要小得多。
结论: 同等视频质量下,H.265占用空间几乎是H.264的一半。
设备兼容性
H.265 在提供更高压缩率、更佳视频质量、处理视频编码所需的带宽更少的同时,对设备硬件性能的要求也更高,因此 H.265 无法获得比 H.264 更广泛的设备兼容性,相反 H.264 更适合流媒体,这也是为什么 30% 比 H.265 更支持它。
结论: 当H.265需要更好的硬件技术来处理视频编码时,如果考虑更高的兼容性,H.264将是理想的选择。
H.265 需要更高的 CPU 来编码和传输媒体,而 H.264 占用的 CPU 较低,运行起来更加流畅。