我想用 ffmpeg 为视频添加水印。此时几乎所有东西都在正确计算,除了新视频的质量大大低于原始视频的质量。
我也使用 ffmpeg-php 并尝试将 minrate 设置为原始的比特率,但随后出现错误。代码现在看起来像这样。
$video = new ffmpeg_movie('hot_wheels_for_adults.flv');
$watermark = 'path/to/watermark.png';
$width = $video->getFrameWidth();
$height = $video->getFrameHeight();
$exec = 'ffmpeg -i hot_wheels_for_adults.flv ' .
'-y -vf "movie=' . $watermark . ' ' .
'[watermark]; [in][watermark] overlay=main_w-overlay_w-10:main_h-overlay_h-10 [out]" ' .
'-f flv -s ' . $width . 'x' . $height . ' ' .
'-minrate ' . $video->getBitRate() . ' ' .
'bla2.flv';
而已。没有“-minrate”线,质量不好。原始速率 = 630615,新视频速率 = 328000。
使用“-sameq”标志我得到了很好的质量,但它从 6,5MB 提高到近 30MB ......
我现在能做什么?