ffmpeg编码avcodec_open2(pCodecCtx, pCodec,NULL)打开失败

弛简 2015-08-19 03:22:11
首先,用于android平台的。
在编码过程中,音频和视频(音频和视频都是从外界获取的,麦克风和摄像头设备)同时进行存放在.mp4中,这个编码流程是?
我的思路是:
音频编码ID是AV_CODEC_ID_AAC,视频编码ID是AV_CODEC_ID_MPEG4,按照一定规格,主要是时间顺序,将音频和视频编码的包AVPacket(通过每一帧编码得到的),写入到.mp4文件中,不知道这样对不对?
我按照这样的方式做,发现一个问题,就是视频编码没有问题,但是音频编码有问题:
pCodec = avcodec_find_encoder(AV_CODEC_ID_AAC); ////这里成功,能够找到
if (!pCodec){
printf("Can not find encoder!\n");
return -1;
}
if (avcodec_open2(pCodecCtx, pCodec,NULL) < 0){ ////这里失败,打开编码器失败
printf("Failed to open encoder!\n");
return -1;
}
就是这样的问题;
在此呢,首先我要确认我这样编码是否有问题?如果可行,为什么打开音频编码器失败呢?
最后说明一点:貌似AV_CODEC_ID_MP3,AC3都是不行的。
还请各位大神路过解释一番,小弟在此先行谢过!!!!
...全文
1862 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
终成一个大象 2019-09-02
  • 打赏
  • 举报
回复
引用 4 楼 弛简 的回复:
解决了,音频编码器没有

楼主可否说的详细些,是AV_CODEC_ID_AAC这个类型没有吗?还是别的
宁强核桃饼 2019-08-13
  • 打赏
  • 举报
回复
我也遇到同样的问题,怎么解决的。 if (avcodec_open2(_pACodecCtx, _pACodec, NULL) < 0) { printf("Could not open codec\n"); return -1; }
帅哥强001 2018-02-07
  • 打赏
  • 举报
回复
解决了吗?求解答
weiwei2012start 2017-05-24
  • 打赏
  • 举报
回复
pCodecCtx, pCodec 我发现这个参数不对, 也会导致出错
贺小布 2016-06-03
  • 打赏
  • 举报
回复
楼主我也是遇到这样的问题,open失败是因为ffmpeg没有链接faac,这个我老是编译失败,能给一份编译好的吗,能不能加下QQ1832537749,谢谢好心的楼主
弛简 2016-05-24
  • 打赏
  • 举报
回复
解决了,音频编码器没有
山河水 2016-04-04
  • 打赏
  • 举报
回复
解决了吗?遇到同样问题了。
lk0046 2016-03-01
  • 打赏
  • 举报
回复
同问,请问楼主解决了吗
弛简 2015-08-24
  • 打赏
  • 举报
回复
没人解答么?

80,354

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧