ffmpeg调用 avformat_open_input失败,返回 -2

本文介绍了在Ubuntu 12.04系统环境下使用Qt进行开发时遇到的问题:使用FFmpeg打开视频文件失败,并返回错误代码-2。通过打印详细的错误信息定位问题原因并解决,发现是因为文件路径未正确指定导致无法找到视频文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系统环境ubuntu12.04,开发环境Qt

执行程序卡在如下代码段:

[objc]  view plain  copy
  1. if(avformat_open_input(&pFormatCtx,filepath,NULL,NULL)!=0){//打开输入视频文件  
  2.     printf("Couldn't open input stream.\n");  
  3.     return -1;  
  4. }  

插入下面的代码分析

[objc]  view plain  copy
  1. char buf[] = "";  
  2. int err_code = avformat_open_input(&pFormatCtx,filepath,NULL,NULL);//打开输入视频文件  
  3. av_strerror(err_code, buf, 1024);  
  4. printf("Couldn't open file %s: %d(%s)\n",filepath, err_code, buf);  
打印出错误代码是-2,错误原因是no file or directory

我是将视频文件放在了Qt的工程目录下,但是找不到,于是我将视频移动到debug目录下,或者将当前路径视为debug路径时,编译正确,程序执行成功!大笑




参考:http://www.360doc.com/content/14/0515/15/2306903_377849306.shtml



转自:http://blog.csdn.net/bobsweetie/article/details/50935779




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值