【发布时间】:2018-10-23 16:46:31
【问题描述】:
我有一个 .mp4 视频,文件大小为 540kb,在转换前的持续时间为 30 秒,但是当我使用 ffmpeg 将其转换为文件大小变为 21mb。我需要添加哪些选项才能将文件大小减小到 1mb?
我现在正在使用的ffmpeg命令:
video_filename = __DIR__. '/uploads/VID.mp4';
exec('ffmpeg -i '.$video_filename.' -c:v libx264 '.$video_filename.'');
【问题讨论】:
-
尝试添加 -crf {number},数字越大 = 质量越低: exec('ffmpeg -i '.$video_filename.' -c:v libx264 -crf 25 '.$video_filename.'') ;
-
@NedkoDimitrov 如何替换现有文件?例如文件名是video.mp4,输出名也是video.mp4?如何替换现有文件?我想替换原始文件,但是当我使用命令时文件没有替换
-
直接覆盖现有文件并非不可能。您需要将输出临时存储在其他位置或重命名。
-
覆盖输入文件会截断并损坏输入文件,从而导致输出文件损坏!
-
@NedkoDimitrov 如何正确覆盖文件?