我正在使用 FFmpeg 将两个文件 (a,b) 混合成一个输出 (c)。由于混合一个文件需要很长时间,所以我想显示一个进度条。有人可以指导我如何进行同样的操作吗?
字符串 fileMixCommand=“-i”+a+“-stream_loop-1-i”+b+“-filter_complex amix=inputs=2:duration=first:dropout_transition=0”+c;
答案1
来自 FFmpeg flutter 文档:
启用统计回调并跟踪正在进行的 FFmpeg 操作的进度。
void statisticsCallback(Statistics statistics) {
print("Statistics: executionId: ${statistics.executionId}, time: ${statistics.time}, size: ${statistics.size}, bitrate: ${statistics.bitrate}, speed: ${statistics.speed}, videoFrameNumber: ${statistics.videoFrameNumber}, videoQuality: ${statistics.videoQuality}, videoFps: ${statistics.videoFps}");
}
...
_flutterFFmpegConfig.enableStatisticsCallback(this.statisticsCallback);