
iOS视频
humiaor
这个作者很懒,什么都没留下…
展开
-
iOS视频解码方案
在iOS平台上做视频的解码,一般有三种方案:1、软解码方案:ffmpeg缺点:消耗CPU太大,在iphone4s上一般720P 20帧以上就解不动了2、硬解码方案1:采用私有接口VideoToolBox优点:CPU消耗极低,解码效率极高缺点:要使用私有接口VideoToolBox,iOS设备必须越狱3、硬解码方案2:采用AVPlayer+httpse原创 2017-03-28 10:31:27 · 2617 阅读 · 0 评论 -
iOS平台使用FFmpeg解码H.264视频流
对于视频文件和rtsp之类的主流视频传输协议,ffmpeg提供avformat_open_input接口,直接将文件路径或URL传入即可打开。读取视频数据、解码器初始参数设置等,都可以通过调用API来完成。但是对于h264流,没有任何封装格式,也就无法使用libavformat。所以许多工作需要自己手工完成。这里的h264流指AnnexB,也就是每个nal unit以起始码00 00 00 01原创 2017-03-28 10:48:56 · 2142 阅读 · 10 评论 -
iOS8系统H264视频硬件编解码说明
公司项目原因,接触了一下视频流H264的编解码知识,之前项目使用的是FFMpeg多媒体库,利用CPU做视频的编码和解码,俗称为软编软解。该方法比较通用,但是占用CPU资源,编解码效率不高。一般系统都会提供GPU或者专用处理器来对视频流进行编解码,也就是硬件编码和解码,简称为硬编解码。苹果在iOS 8.0系统之前,没有开放系统的硬件编码解码功能,不过Mac OS系统一直有,被称为Video Tool原创 2017-03-28 11:17:48 · 705 阅读 · 0 评论 -
利用FFmpge进行视频解码(从H264视频流到图像)
class Ffmpeg_Decoder{public: AVCodecParserContext *avParserContext; AVPacket avpkt; //数据包结构体 AVFrame *m_pRGBFrame; //帧对象 AVFrame *m_pYUVFrame; //帧对象 AVCod原创 2017-03-28 17:25:12 · 4732 阅读 · 1 评论 -
在iOS平台使用ffmpeg解码h264视频流
摘要: 对于socket传输的h264流,需要手工设置AVCodec 和AVCodecContext,用接收到的完整nalu初始化avpacket,传给解码函数进行解码。遇到SPS PPS的时候,需要接收后面的IDR帧,一起传给解码器,解码器会自动检测SPS PPS里的信息,保存在AVCodecContext中。对于视频文件和rtsp之类的主流视频传输协议,ffmpeg提供avfo原创 2017-03-29 15:53:29 · 4236 阅读 · 10 评论 -
ios 硬解码h264视频的坑
最近这两天在写一个ios demo,用 VideoToolBox 硬解码从网络上实时接收过来的原始h264 nalu 数据(裸数据)。网络裸数据如下:后面的原始数据帧类似以上。。。(1)开始用了一个正常思路的方式:循环获取原始数据 -----> 分割大包中的nalu并单个送入硬解码 (nalu的前四个字节需要做调整:由00 00 00 01 变为大端的转载 2017-08-02 12:36:24 · 5994 阅读 · 0 评论 -
FFMPEG - iOS API 详解
认识FFmpegFFMPEG堪称自由软件中最完备的一套多媒体支持库,它几乎实现了所有当下常见的数据封装格式、多媒体传输协议以及音视频编解码器。因此,对于从事多媒体技术开发的工程师来说,深入研究FFMPEG成为一门必不可少的工作,可以这样说,FFMPEG之于多媒体开发工程师的重要性正如kernel之于嵌入式系统工程师一般。几个小知识:FFMPEG项目是由法国人Fabrice Bellard发起的,此...转载 2018-03-10 20:31:38 · 2865 阅读 · 0 评论 -
ffmpeg摄像头数据H264编码
yuyv(yuv422): 一行里的两个像素结合, 一个像素有(y, u), 另一个像素有(y, v). 还原rgb时两像素的数据需结合来使用.yuv420: 每两行的上下两个像素结合, 一行的两个像素只存(y, u, y), 下一行的两个像素只存(y, v, y)./////////////////////////////////////yuv444: y00u00v00 y01u01v...转载 2018-03-10 20:49:32 · 1890 阅读 · 0 评论 -
iOS底层开发应该需要了解与掌握的
1、音视频处理技术 (1) FFmpeg环境配置 (2)SDL环境搭建 (3)FFmpeg动态库编译 (4)FFmpeg视频编解码 (5) FFmpeg音频...原创 2019-01-22 16:20:37 · 454 阅读 · 0 评论