就是一个简单的图片加水印任务:
ffmpeg -hide_banner -y -i image.AVIF -i watermark.png -filter_complex "overlay=(main_w-overlay_w-50):(main_h-overlay_h-50)" output.AVIF
命令行中运行几乎秒完成,但在 Flutter 中几乎要半分钟。
await Process.run('ffmpeg', [
'-hide_banner',
'-y',
'-i',
'image.AVIF',
'-i',
'watermark.png',
'-filter_complex',
'overlay=(main_w-overlay_w-50):(main_h-overlay_h-50)',
'output.AVIF',
]);
整了一天了,完全没有头绪,求教,求教
1
jifengg 108 天前
你可以试试加 “-v 0”,把 ffmpeg 的输出完全关掉。
有可能是进程的输出流(包括 Error 流)阻塞了。 如果可以,但是你希望保留输出,那么研究一下 dart 里如何把 Process 的输出读取出来 |
2
cxxnullptr OP @jifengg 好的,谢谢,我试一试
|