ffmepg解码音频。

#import "FFMpegAudioDecoder.h"#ifdef __cplusplus
extern "C" {
#endif#include <libavutil/opt.h>
#include <libavcodec/avcodec.h>
#include <libavformat/avformat.h>
#include <libswscale/swscale.h>#ifdef __cplusplus
};
#endif@interface FFMpegAudioDecoder(){AVCodec *_audioCodec;AVCodecContext *_pCodecCtx;AVFrame *_pFrame;char* _pcmBuf;
}@end@implementation FFMpegAudioDecoder-(int)intDecoder{av_register_all();//NSString* codecName = @"libfdk_aac";//_audioCodec = avcodec_find_decoder_by_name([codecName UTF8String]);_audioCodec = avcodec_find_decoder(AV_CODEC_ID_AAC);_pCodecCtx = avcodec_alloc_context3(_audioCodec);if (!_audioCodec)return -1;_pCodecCtx->codec_id = AV_CODEC_ID_AAC;_pCodecCtx->codec_type = AVMEDIA_TYPE_AUDIO;if(avcodec_open2(_pCodecCtx, _audioCodec,NULL) >= 0)_pFrame = av_frame_alloc();// Allocate video frameelsereturn -1;return 0;
}-(int)decode:(char*)pktaudio len:(int)len{AVPacket pkt = {.data = (uint8_t*)pktaudio,.size = len,};int got_frame = 0;int decLen = avcodec_decode_audio4(_pCodecCtx, _pFrame, &got_frame, &pkt);if (!got_frame) {NSLog(@"avcodec_decode_audio4 failed .");return -1;}NSLog(@"avcodec_decode_audio4 succ len : %d",decLen);return 0;
}-(void)free{if(_pCodecCtx){avcodec_close(_pCodecCtx);_audioCodec = NULL;}if (_pFrame) {av_frame_free(&_pFrame);_pFrame = NULL;}if (_pcmBuf) {free(_pcmBuf);_pcmBuf = NULL;}
}@end

ios ffmpeg audio decode相关推荐

  1. ios ffmpeg h264 decode

    ios使用ffmpeg解码h264数据封装. #import "FFMpegAVCDecoder.h" #ifdef __cplusplus extern "C" ...

  2. iOS FFmpeg 优秀博客(资源)集锦

    iOS FFmpeg 优秀博客(资源)集锦 这篇博客没有我自己写的内容: 主要是对FFmpeg一些优秀博客的记录 随时更新 1>iOS编译FFmpeg,kxmovie实现视频播放 2>视音 ...

  3. iOS ffmpeg+OpenGL播放yuv+openAL 快放 慢放 视频播放器

    由于老版本的ffmpeg一些使用方法将要废弃如streams[videoStream]->codec这种方式查找解码器就不能用了,再使用就会报警告,或者报错,这里使用新版ffmpeg接口制作播放 ...

  4. ios html5 audio mp3,H5 audio 微信端 在IOS上不能播放音乐

    前言 在做各种HTML5场景页面的时候,插入背景音乐是一个很普遍的需求.我们都知道,iOS下的safari是无法自动播放音乐的,以至一直以来形成了一种认知,iOS是无法自动播放媒体资源的.直到微信火爆 ...

  5. 解决iOS h5 audio自动播放(亲测有效)

    微信H5页面,实现audio自动播放: function initMusic() {//动态创建一个audio节点var audio = document.createElement('audio') ...

  6. 解决ios上audio不能自动播放的问题以及监听audio播放状态

    最近做了个H5产品的宣传活动,用到了audio标签并且要求自动播放,我们都知道safri on ios里面明确指出等待用户的交互动作后才能播放media,也就是说如果你没有得到用户的action就播放 ...

  7. iOS ffmpeg 之编译ffmpeg

    第一步,下载万能编译脚本(原作者:Changbeom Ahn ),我fork了他的代码github网址https://github.com/zhangqipu/FFmpeg-iOS-build-scr ...

  8. ios vue 添加本地音乐_vue 项目,ios上audio音频 无法自动播放

    // 音乐播放 function autoPlayMusic() { // 自动播放音乐效果,解决浏览器或者APP自动播放问题 function musicInBrowserHandler() { m ...

  9. ios ffmpeg(libfdk-aac) aac encode

    使用ffmpeg编码aac,使用libfdk-aac. #import "FFMpegAACEncoder.h" #ifdef __cplusplus extern "C ...

最新文章

  1. 利用计算机软件温度补偿,基于自主传感器信号调理芯片温度补偿的软件设计
  2. PHP eval函数
  3. oracle 管道化表函数(Pipelined Table) [转]
  4. 算法题:水洼有多少(C++)
  5. oracle查询pga大小GB,Oracle如何调整SGA和PGA的大小
  6. 17---Net基础加强
  7. android webview file,Android WebView 不支持 H5 input type=file 解决方法
  8. matlab圆柱饶流,有限元法解二维圆柱绕流问题.pdf
  9. rz/sz安装与乱码问题
  10. 将PDF转为TXT文本格式提取中文
  11. OneNote for windows10 微软商店下载UWP版本应用打不开
  12. SVN checckout 失败:Error: REPORT request on '/svn/signature/!svn/me' failed 的解决办法
  13. python3爬取torrent种子链接实例
  14. 大学生计算机自我鉴定500字,大学生计算机专业的自我鉴定范文
  15. ESP32-CAM MicroPython配新板出现的PSRAM问题
  16. 什么是复制和交换成语?
  17. 虹膜识别1.opencv3同心圆的提取
  18. 【Python从入门到精通】二、核心编程:5.正则表达式
  19. 天津web前端培训,BAT会去哪里招好前端?
  20. 偏微分方程(Partial Differential Equation I)

热门文章

  1. 30个高质量的Psd设计文件分享
  2. JAX 是 Google 开发的计算机视觉研究
  3. java怎么看内存值_【java】内存分析
  4. 对象删除某个属性_JS对象基本用法
  5. eplise怎么连接数据库_Eclipse怎么打开数据库?Eclipse连接oracle等数据库的教程
  6. matlabapp窗口图像_Matlab在一个图形窗口里画多个图形的操作教程
  7. jdk8 HashMap初始化和扩容机制
  8. 理解 Generator 的执行
  9. Java集合Map(四)
  10. Web性能测试篇:AB 压力测试