配置ffmpeg的使用CONCAT

问题描述:

这是我的JNI的C语言代码为Concatinate的mp3文件在SD卡中的Android配置ffmpeg的使用CONCAT

JNIEXPORT jint JNICALL Java_Test_Mp3_Merger_Audio_mergeAudio(JNIEnv *env, 
     jclass someclass, jstring inputFile, jstring outFile) { 
    log_message("Starting to trim video"); 

    int numberOfArgs = 8; 
    char** arguments = calloc(numberOfArgs, sizeof(char*)); 
    char start[5], duration[5]; 
    const char *in, *out; 


    in = (*env)->GetStringUTFChars(env, inputFile, 0); 
    out = (*env)->GetStringUTFChars(env, outFile, 0); 
    //ffmpeg -f concat -i mergelist.txt -c copy a.mp3 // this comand worked pecrfect in my computer terminal.. 
    arguments[0] = "ffmpeg"; 
    arguments[1] = "-f"; 
    arguments[2] = "concat"; 
    arguments[3] = "-i"; 
    arguments[4] = in; 
    arguments[5] = "-c"; 
    arguments[6] = "copy"; 
    arguments[7] = out; 

    int i; 
    for (i = 0; i < numberOfArgs; i++) { 
     log_message(arguments[i]); 
    } 
    log_message("Printed all"); 

    ffmpeg_main(numberOfArgs, arguments); 
    log_message("Finished"); 
    free(arguments); 
    (*env)->ReleaseStringUTFChars(env, inputFile, in); 
    (*env)->ReleaseStringUTFChars(env, outFile, out); 
    return 0; 
} 

使用的ffmpeg的下方与config.mak产生我的config.h列表 https://drive.google.com/file/d/0B4VBZ6KJJazSWHBqQWJpWHhuZnM/view?usp=sharing

,每当我调用本地方法修剪() 我得到了错误信息未知的输入格式:“CONCAT”。

但是concat.c显示为编译时使用ndk编译 出了什么问题?

concat.c是concat协议。 -f concat -i ...调用concat分路器,它是FFmpeg/libavformat/concatdec.c