我想让 FFMPEG 将我的播客音频导出到一个文件,我可以上传到 YouTube,该文件在视觉上很有趣。
目前我正在使用以下代码,但我没有完全理解:
ffmpeg -i E04_ProphetsPrey.wav -filter_complex \
" [0:a]showfreqs=mode=line:ascale=log:fscale=rlog:s=1280x518,pad=1280:720[vs]; \
[0:a]showfreqs=mode=line:ascale=log:fscale=rlog:s=1x1[ss]; \
[0:a]showwaves=s=1280x202:mode=p2p[sw]; \
[vs][ss]overlay=w[bg]; \
[bg][sw]overlay=0:H-h,drawtext=fontfile=/usr/share/fonts/TTF/Vera.ttf:fontcolor=white:x=10:y=10:text='\"Rated80s Prophets Prey\" by Comics On Film'[out]" \
-map "[out]" -map 0:a -c:v libx264 -preset fast -crf 18 -c:a copy -threads 0 output.mkv
我想要做的是设置一个(品牌)背景图像,并在上半部分上显示 showfreqs 渲染,在下半部分上显示 showwaves 渲染。
这可能吗?如果可以,您能给我一个详细的例子吗?
(我在arch linux上)
ffmpeg -i music.mp3 -loop 1 -i image.jpg -filter_complex \
"[0:a]showfreqs=mode=line:ascale=log:fscale=log:s=1280x518[sf]; \
[0:a]showwaves=s=1280x202:mode=p2p[sw]; \
[sf][sw]vstack[fg]; \
[1:v]scale=1280:-1,crop=iw:720[bg]; \
[bg][fg]overlay=shortest=1:format=auto,format=yuv420p,drawtext=fontfile=/usr/share/fonts/TTF/Vera.ttf:fontcolor=white:x=10:y=10:text='\"Rated80s Prophets Prey\" by Comics On Film'[out]" \
-map "[out]" -map 0:a -c:v libx264 -preset fast -crf 18 -c:a libopus output.mkv
vstack https://ffmpeg.org/ffmpeg-filters.html#vstack垂直堆叠两个效果。它比使用覆盖更容易并且通常更快。
示例背景图像太大,因此scale https://ffmpeg.org/ffmpeg-filters.html#scale and crop https://ffmpeg.org/ffmpeg-filters.html#crop将图像设置为 1280x720。
然后使用叠加过滤器将 vstacked 效果分层在背景之上,格式过滤器使像素格式与非 FFmpeg 基础的播放器兼容(如果只是上传到 YouTube,则可以将其删除),最后drawtext https://ffmpeg.org/ffmpeg-filters.html#drawtext制作文本。
如果你得到[overlay] Unable to parse option value "auto"
您的版本太旧,您应该升级。请参阅FFmpeg 下载 http://ffmpeg.org/download.html链接页面。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)