ios ffmpeg audio decode
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相关推荐
- ios ffmpeg h264 decode
ios使用ffmpeg解码h264数据封装. #import "FFMpegAVCDecoder.h" #ifdef __cplusplus extern "C" ...
- iOS FFmpeg 优秀博客(资源)集锦
iOS FFmpeg 优秀博客(资源)集锦 这篇博客没有我自己写的内容: 主要是对FFmpeg一些优秀博客的记录 随时更新 1>iOS编译FFmpeg,kxmovie实现视频播放 2>视音 ...
- iOS ffmpeg+OpenGL播放yuv+openAL 快放 慢放 视频播放器
由于老版本的ffmpeg一些使用方法将要废弃如streams[videoStream]->codec这种方式查找解码器就不能用了,再使用就会报警告,或者报错,这里使用新版ffmpeg接口制作播放 ...
- ios html5 audio mp3,H5 audio 微信端 在IOS上不能播放音乐
前言 在做各种HTML5场景页面的时候,插入背景音乐是一个很普遍的需求.我们都知道,iOS下的safari是无法自动播放音乐的,以至一直以来形成了一种认知,iOS是无法自动播放媒体资源的.直到微信火爆 ...
- 解决iOS h5 audio自动播放(亲测有效)
微信H5页面,实现audio自动播放: function initMusic() {//动态创建一个audio节点var audio = document.createElement('audio') ...
- 解决ios上audio不能自动播放的问题以及监听audio播放状态
最近做了个H5产品的宣传活动,用到了audio标签并且要求自动播放,我们都知道safri on ios里面明确指出等待用户的交互动作后才能播放media,也就是说如果你没有得到用户的action就播放 ...
- iOS ffmpeg 之编译ffmpeg
第一步,下载万能编译脚本(原作者:Changbeom Ahn ),我fork了他的代码github网址https://github.com/zhangqipu/FFmpeg-iOS-build-scr ...
- ios vue 添加本地音乐_vue 项目,ios上audio音频 无法自动播放
// 音乐播放 function autoPlayMusic() { // 自动播放音乐效果,解决浏览器或者APP自动播放问题 function musicInBrowserHandler() { m ...
- ios ffmpeg(libfdk-aac) aac encode
使用ffmpeg编码aac,使用libfdk-aac. #import "FFMpegAACEncoder.h" #ifdef __cplusplus extern "C ...
最新文章
- 利用计算机软件温度补偿,基于自主传感器信号调理芯片温度补偿的软件设计
- PHP eval函数
- oracle 管道化表函数(Pipelined Table) [转]
- 算法题:水洼有多少(C++)
- oracle查询pga大小GB,Oracle如何调整SGA和PGA的大小
- 17---Net基础加强
- android webview file,Android WebView 不支持 H5 input type=file 解决方法
- matlab圆柱饶流,有限元法解二维圆柱绕流问题.pdf
- rz/sz安装与乱码问题
- 将PDF转为TXT文本格式提取中文
- OneNote for windows10 微软商店下载UWP版本应用打不开
- SVN checckout 失败:Error: REPORT request on '/svn/signature/!svn/me' failed 的解决办法
- python3爬取torrent种子链接实例
- 大学生计算机自我鉴定500字,大学生计算机专业的自我鉴定范文
- ESP32-CAM MicroPython配新板出现的PSRAM问题
- 什么是复制和交换成语?
- 虹膜识别1.opencv3同心圆的提取
- 【Python从入门到精通】二、核心编程:5.正则表达式
- 天津web前端培训,BAT会去哪里招好前端?
- 偏微分方程(Partial Differential Equation I)