gpt4 book ai didi

c - ffmpeg, 'protocol not found' 错误

转载 作者:太空宇宙 更新时间:2023-11-04 03:21:29 24 4
gpt4 key购买 nike

我正在使用下一个代码:

const char *sFileOutput;
AVOutputFormat *ofmt;
AVFormatContext *ofcx;

int main( int argc, char* argv[] )
{
av_log_set_level( AV_LOG_DEBUG );
av_register_all();
avcodec_register_all();
avformat_network_init();

char s1[40]={0};
const time_t timer = time(NULL);
u = localtime(&timer);
strftime(s1, 40, "%d.%m.%Y-%H:%M:%S.avi", u);
sFileOutput=&s1;

//char *sFileOutput = "01.01.2017-23.23.23.avi";

ofmt = av_guess_format( NULL, sFileOutput, NULL );
ofcx = avformat_alloc_context();
ofcx->oformat = ofmt;
int ret2=avio_open( &ofcx->pb, sFileOutput, AVIO_FLAG_WRITE);
if(ret2<0){
fprintf(stderr, "\nError occurred when opening output file: %s\n",av_err2str(ret2));
}
}

当我运行它时,控制台出现错误:

Error occurred when opening output file: Protocol not found

但是如果我取消注释字符串

char *sFileOutput = "01.01.2017-23.23.23.avi";

一切正常,程序运行无误。请告诉我哪里出了问题。

最佳答案

谢谢你的回答,对我也有帮助。但真正的问题是生成的名称包含“:”。我将字符串更改为

strftime(s1, 40, "%d.%m.%Y-%H.%M.%S.avi", u);

而且效果很好。

关于c - ffmpeg, 'protocol not found' 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45664963/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com