在visual studio c ++中调用ffmpeg.exe

时间:2015-07-14 04:40:22

标签: c++ visual-studio-2012 ffmpeg

我只是c ++的新手。 我正在尝试在Visual Studio 2012中的C ++项目中使用FFmpeg,方法是调用其中的ffmpeg.exe文件。

这是我到目前为止所尝试的:

//FFMPEG CALLING
char ffmpeg2[BUFSIZ];
strcpy(ffmpeg2,"..\bin\ffmpeg.exe");
strcat(ffmpeg2,"-f s16le -ar 8K -ac -ss");
strcat(ffmpeg2,buffers);    //string hh:mm:ss
strcat(ffmpeg2,"-t");
strcat (ffmpeg2,buffer);    //string hh:mm:ss
strcat(ffmpeg2,"-i ..\\rec.pcm ..\Desktop\newFolder\filename");
if(system(ffmpeg2) !=0) 
{
    ft =fopen("ffmpeg_err.txt","a");
    fprintf( ft,"my command failed...\n" );
    fclose(ft);
}
else
{system(ffmpeg2);}

它在文本文件中继续生成我的命令失败。 你们有什么暗示如何解决它。

1 个答案:

答案 0 :(得分:0)

你在调用strcat之前或之后没有添加任何空格所以你的最终命令就像是 ..\bin\ffmpeg.exe-f s16le -ar 8K -ac -ss<buffers>-i ..\\rec.pcm ..\Desktop\newFolder\filename 在ffmpeg.exe之后添加一个空格,在-ss之后,-t之前和-i之前添加一个空格 最后的命令将成为 ..\bin\ffmpeg.exe-f s16le -ar 8K -ac -ss <buffers> -i ..\\rec.pcm ..\Desktop\newFolder\filename

这应该可以解决您的问题