使用移动ffmpeg android在两次视频之间进行图像覆盖

使用移动ffmpeg android在两次视频之间进行图像覆盖,android,ffmpeg,Android,Ffmpeg,我试图使用“mobile ffmpeg full gpl:4.4”库在视频上添加图像覆盖,但遇到以下错误: Error when evaluating the expression 'between(t' for enable' error. 我有一个类,用于创建用于添加图像的覆盖过滤器: class ImageFilter { static String getFilter(String input, String output, ArrayList<ExtraTL> list

我试图使用“mobile ffmpeg full gpl:4.4”库在视频上添加图像覆盖,但遇到以下错误:

Error when evaluating the expression 'between(t' for enable' error.
我有一个类,用于创建用于添加图像的覆盖过滤器:

class ImageFilter {

static String getFilter(String input, String output, ArrayList<ExtraTL> listImage, int order){
    String filter="";
    for (int i=0; i<listImage.size(); i++){
        ImageHolder image = listImage.get(i).imageHolder;
        int index = i+order;
        String in = i==0?input:"[out"+index+"]";
        String out = i==listImage.size()-1?output:"[out"+(index+1)+"];";
        filter += prepareImage(image, index);
        filter += addImage(in, out, image, index);
    }
    return filter;
}

private static String prepareImage(ImageHolder image, int index){
    return "["+index+":v]scale="+image.width+":"
                +image.height+",rotate="+image.rotate+":c=none:ow=rotw("+image.rotate
                +"):oh=roth("+image.rotate+")[ov"+index+"];";
}

private static String addImage(String input, String output, ImageHolder image, int index){
    return input+"[ov"+index+"]overlay="+image.x
            +":"+image.y+":enable='between(t,"+image.startInTimeLineSec +","
            +image.endInTimeLineSec +")'"+output;
}`
此外,我运行程序时的日志为:

'2021-03-03 17:26:32.165 11664-11830/com.hecorat.azplugin2 E/mobile-ffmpeg: [overlay @ 0xdc5f3b80] [Eval @ 0xc5bd6b70] Missing ")" or too many args in "between(t"

2021-03-03 17:26:32.167 11664-11830/com.hecorat.azplugin2 E/mobile-ffmpeg: [overlay @ 0xdc5f3b80] Error when evaluating the expression "between(t" for enable'
如何解决此错误

尝试在逗号(t,0.0,10.0)之前插入一个`s,否则该逗号将被解释为筛选器分隔符

指导@slhck;我代替

enable='between(t,"+image.startInTimeLineSec +","
        +image.endInTimeLineSec +")'


<>和它工作。

在代码< >逗号> />代码>中退出逗号。如果你找到了一个解决方案,而不是把它添加到你的问题中,考虑把它作为答案使用“POST应答”按钮。它可以帮助你获得声誉积分,这样你最终可以在网站上做得更多。
enable='between(t,"+image.startInTimeLineSec +","
        +image.endInTimeLineSec +")'
enable='between(t\\,"+image.startInTimeLineSec +"\\,"
        +image.endInTimeLineSec +")'