компилирование ffmpeg с фиксированными аргументами? - PullRequest
0 голосов
/ 07 марта 2020

Я хотел бы скомпилировать ffmpeg с фиксированными аргументами, ie: ffmpeg -i rtsp: // localhost / live -vcode c copy -acode c copy -f flv rtmp: // remotehost / live

Я не могу по соображениям безопасности вызвать его из внешнего скрипта, это должно быть включено в двоичный файл ffmpeg. Проблема в том, что исходные коды очень большие, так что вы знаете простой способ сделать это?

Tx

Ответы [ 2 ]

0 голосов
/ 09 марта 2020

мои знания в C слишком легки ... это никогда не вызывает программу с аргументами:

int main (int arg c, char ** argv) {

  argv=malloc(10 * sizeof(char *));
   argv[1] =(char *) malloc( strlen("-i " ) + 1 );
    strcpy(argv[1],"-i " );
    argv[2] =(char *) malloc( strlen("rtsp://192.168.1.38/live" ) + 1 );
    strcpy(argv[2],"rtsp://192.168.1.38/live" );
    argv[3] =(char *) malloc( strlen("-vcodec" ) + 1 );
    strcpy(argv[3],"-vcodec" );
    argv[4] =(char *) malloc( strlen("copy" ) + 1 );
    strcpy(argv[4],"copy" );
    argv[5] =(char *) malloc( strlen("-acodec" ) + 1 );
    strcpy(argv[5],"-acodec" );
    argv[6] =(char *) malloc( strlen("copy" ) + 1 );
    strcpy(argv[6],"copy" );
    argv[7] =(char *) malloc( strlen("-f" ) + 1 );
    strcpy(argv[7],"-f" );
    argv[8] =(char *) malloc( strlen("flv" ) + 1 );
    strcpy(argv[8],"flv" );
    argv[9] =(char *) malloc( strlen("rtmp://192.168.A.114/live" ) + 1 );
    strcpy(argv[9],"rtmp://192.168.1.114/live" );
    printf("argument  %s\n", argv[1]);
    printf("argument  %s\n", argv[2]);
    printf("argument  %s\n", argv[3]);
    printf("argument  %s\n", argv[4]);
    printf("argument  %s\n", argv[5]);
    printf("argument  %s\n", argv[6]);
    printf("argument  %s\n", argv[7]);
    printf("argument  %s\n", argv[8]);
    printf("argument  %s\n", argv[9]);

    argv[10]=NULL;
    /*for (i=0; i < 9; i++)*/
    free(argv);
    return 0;
}
can anyone help ? 
0 голосов
/ 07 марта 2020

Я пока не могу комментировать, но если вы используете linux, можете ли вы использовать псевдоним?

https://www.tecmint.com/create-alias-in-linux/

...