音视频开发-CMSampleBufferGetSampleAttachmentsArray造成的线程阻塞

背景 视频播放中,使用VideoToolBox进行硬解码,再使用OpenGL进行渲染。 使用了AVSampleBufferDisplayLayer和VideoToolBox两种方式。前者解码无需我们关心,只需要传入CMSampleBufferRef即可,后者需要自行解码。 对于AVSampleBu...

2019-06-25 16:46:50

阅读数 13

评论数 0

音视频开发-ffmpeg指令(2)

文章目录

2019-06-25 13:40:12

阅读数 16

评论数 0

音视频开发-ffmpeg指令(1)

文章目录ffmpeg基本信息查询命令录屏命令录制声音录制视频和声音多媒体格式转换分离视频分离音频 ffmpeg基本信息查询命令 Last login: Mon Jun 24 11:35:04 on ttys002 gensees-iMac:~ gensee$ ffmpeg -version ff...

2019-06-24 13:00:25

阅读数 28

评论数 0

音视频开发-OpenGL图形显示常见问题以及解决办法

渲染过程中可能产⽣生的问题 在绘制3D场景的时候,我们需要决定哪些部分是对观察者 可⻅的,或者哪些部分是对观察者不可⻅的.对于不可见的部分,应该及早丢弃.例如在⼀个不透明的墙壁后,就不应该渲染.这种情况叫做”隐藏面消除”(Hidden surface elimination). 油画算法 先绘制...

2019-06-23 12:42:08

阅读数 18

评论数 0

音视频开发-ffmpeg编译以及配置

ffmpeg编译 使用Git下载 git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg 下载完成后,进入FFmpeg源代码目录,运行配置命令 gensees-iMac:~ gensee$ cd /Users/gensee/Desktop/f...

2019-06-21 11:36:44

阅读数 35

评论数 0

音视频开发-YUV数据

YUV数据类型 h264编码中,我们使用YUV数据类型进行传输,从采集端采集的RGB转YUV,通过网络传输到接收端,YUV再转成RGB进行显示。 期间涉及数据的压缩,RGB->YUV数据,数据大小比率为2:1,即RGB占用的数据大小为(Width * Height)*3,因为一个像...

2019-06-16 21:33:52

阅读数 65

评论数 0

iOS逆向学习-lldb断点调试

文章目录lldb断点调试breakpoint对于函数对于方法对于任何这个方法对于文件中这个方法遍历断点查看断点退出lldb模式断点开关断点删除指令查看执行代码expression执行代码创建变量堆栈信息查看btup downframe值固定查看frame variable 查看参数回滚指令 thr...

2019-06-14 00:22:59

阅读数 103

评论数 0

iOS Framework-版本号指定

在做sdk开发时,需要设置当前sdk的framework版本号,一般创建framework会自动生成 #import <UIKit/UIKit.h> //! Project version number for YourSDK. FOUNDATION_EXPORT d...

2019-06-12 15:16:24

阅读数 107

评论数 0

音视频开发-向量理解

大学没有好好学习线性代数,无奈只能再次复习。 推荐一本书 《3D数学基础:图形与游戏开发》 向量 数学定义 对于数学家而言,向量就是一个数字列表,对于程序员而言则是另一种相似的概念-数组 向量与标量 ...

2019-06-11 23:11:03

阅读数 2250

评论数 3

音视频开发-OpenGL渲染流程以及固定存储着色器

文章目录OpenGL渲染架构正投影透视投影固定存储着色器存储着色器初始化单元着色器平面着色器上色着色器默认光源着色器点光源着色器纹理替换矩阵着色器纹理调理着色器纹理光源着色器OpenGL基本7种基本图元OpenGL点线OpenGL三角形OpenGL三角形环绕方式OpenGL 三角带OpenGL三角...

2019-06-02 16:44:34

阅读数 108

评论数 0

音视频开发-OpenGL下坐标系统理解

文章目录左手坐标系和右手坐标系坐标系将坐标系统组合在一起模型变换视变换 左手坐标系和右手坐标系 注意OpenGL中坐标系中的物体、世界、照相机坐标系都属于右手坐标系,而规范化设备坐标系使用左手坐标系 坐标系 OpenGL希望每次顶点着色后,我们的可见顶点都为标准化设备坐标(Normalized ...

2019-06-02 09:19:37

阅读数 2082

评论数 1

音视频开发-OpenGL概念理解

顶点着色器 Vertex shader 相当于告诉opengl图形的顶点,由此得知形状,才能进一步进行填充颜色等等。相当于一个骨架 顶点着色器的计算也是由GPU负责 片元着色器 Fragment shader 也称之为片段着色器,像素着色器,对每个像素的显示进行处理,即一张图片,有很多像素点,每个...

2019-05-29 09:24:17

阅读数 3432

评论数 2

NSNotificaiton的理解

Notification Notification的发送,是再哪个线程发送,收到的回调就会在哪个线程处理,那么如何做到线程周转,子线程发送的通知需要在主线程实行,利用NSMachPort执行 #import "ViewController.h" @interface View...

2019-05-14 14:53:36

阅读数 80

评论数 0

使用KxMovie和GPUImage冲突的问题

问题描述 项目中使用GPUImage进行摄像头采集,同时对软解后的数据使用OpenGL渲染,这里借鉴了KxMovie的逻辑代码,当两者同时操作时,使得GPUImage图像倒置90度,并出现闪屏,图片失真问题,这里分享下KxMovie的一些问题,另外GPUImage也有部分问题需要改进 1、KxMo...

2018-12-10 19:41:29

阅读数 113

评论数 0

GPUImage的水印添加遇到的问题

Tried to overrelease a framebuffer, did you forget to call -useNextFrameForImageCapture before using -imageFromCurrentFramebuffer? 问题描述 在使用GPUImage添加...

2018-12-10 19:07:49

阅读数 206

评论数 0

iOS AVAudioSessionInterruptionNotification通知接收混乱

项目中需要使用音频处理,播放。 处理AVAudioSessionInterruptionNotification通知时,每次退到后台,然后退到前台,会受到一个AVAudioSessionInterruptionNotification通知,且AVAudioSessionInterruptionTy...

2018-11-01 11:46:23

阅读数 957

评论数 0

Parallels Desktop 12上win7复制键无效

提供下mac下Parallels Desktop 12破解版的下载链接 链接: https://pan.baidu.com/s/13pBlNyZWiZB42Xn_5P21AQ 提取码: wes7 1.Parallels Desktop的设置 2.win7虚拟机的设置 没有安装Parallels ...

2018-10-30 16:10:14

阅读数 448

评论数 0

iOS模拟各种网络状态测试

苹果在iOS系统中预置了网络调试工具,但是只有添加过测试设备,并使用Xcode连接下设备才能激活 1.Xcode未连接前 2.Xcode连接后发现设置中多出来一项:开发者 3.选择Status 4.选择需要模拟的网络状态 • 注意点:开发者选项也是对全局有效的,如果开启了某一项网络状态,对...

2018-10-22 15:12:57

阅读数 385

评论数 0

iOS如何脚本打包framework库

framework库大多使用在制作第三方库SDK,如何自动打包SDK 1.添加Aggregate 打开xcode,找到target栏 添加aggregate 添加脚本 2.判断是Proj还是workspace 编译我们都是使用xcodebuild命令...

2018-08-24 11:48:10

阅读数 624

评论数 0

OpenAL处理直播音频流数据

OpenAL处理直播音频流数据 音频解码后的PCM数据处理,解码部分这里不包括 openAL介绍 对于音频处理,openAL有上下文context,设备device,声源source和声音数据buffer四个东西 我用我自己理解的一种方式阐述: 想像下,在一个空间(即Conte...

2018-06-25 09:58:53

阅读数 317

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭