-
17、H264编码-码流结构
参考文章:音视频学习从零到整-H264码流结构目录 H264结构图 H264编码分层 码流的基本概念 详解NAL UnitH264结构图H264视频压缩后会成为一个序列帧.帧里包含图像,图像分为很多片.每个片可以分为宏块.每个宏块由许多子块组成.这就是H264结构图.非常的情绪简单.H264结构中,一个视频图像编码后的数据叫做一帧,一帧由一个片(slice)或多个片组成,一个片由一个或多个宏块(MB)组成,一个宏块由16x16的yuv数据组成。宏块作为H264编码的基本单位场和...…
-
16、H264编码-编码原理
参考文章:音视频学习从零到整-H264编码原理目录 H264压缩技术 宏块划分与分组 组内宏块查找 帧内预测 DCT压缩 VLC压缩H264压缩技术 帧内预测压缩,解决的是空域数据冗余问题.什么是空域数据,就是这幅图里数据在宽高空间内包含了很多颜色,光亮.人的肉眼很难察觉的数据. 对于这些数据,我们可以认作冗余.直接压缩掉的. 帧间预测压缩,解决的是时域数据冗余问题.在我们之前举例说明过,摄像头在一段时间内所捕捉的数据没有较大的变化,我们针对这一时间内的相同的数据压缩掉...…
-
15、H264编码-基本概念
参考文章:音视频学习从零到整-H264基本概念目录 H264基本概念 GOF(Group of Frame)一组帧 SPS/PPS 视频花屏/卡顿原因 视频都有哪些视频编解码器H264基本概念一、I帧关键帧,采用帧内压缩技术.举个例子,如果摄像头对着你拍摄,1秒之内,实际你发生的变化是非常少的.1秒钟之内实际少很少有大幅度的变化.摄像机一般一秒钟会抓取几十帧的数据.比如像动画,就是25帧/s,一般视频文件都是在30帧/s左右.对于一些要求比较高的,对动作的精细度有要求,想要捕...…
-
14、H264编码-介绍
参考文章:音视频学习从零到整-关于视频的一些概念目录 简单介绍简单介绍H.264 是现在广泛采用的一种编码方式。关于 H.264 相关的概念,从大到小排序依次是:序列、图像、片组、片、NALU、宏块、亚宏块、块、像素。一、图像H.264 中,「图像」是个集合的概念,帧、顶场、底场都可以称为图像。一帧通常就是一幅完整的图像。当采集视频信号时,如果采用逐行扫描,则每次扫描得到的信号就是一副图像,也就是一帧。当采集视频信号时,如果采用隔行扫描(奇、偶数行),则扫描下来的一帧图像就被分为了两...…
-
13、编码解码概念
参考文章:音视频学习从零到整-视频H264编码目录 背景 编码 编码概念背景5G网络作为第5代的移动通信网络,它的网络峰值传播速度可1以达到10Gbps/s.这比4G的的传输速度快数百倍.举个例子,整部超高画质电影下载可在1秒钟之内下载完成.当然,随着5G技术的诞生,用在智能终端分享3D电影,游戏或者超高画质节目的时代已经毫无悬念的向我们走来.想必大家也逐步了解,国内外的互联网公司也已经布局音视频,3D技术方面的开发者招聘和相关产品研发.目前落地推广最普遍的就是直播类项目和小视频...…
-
12、视频的一些概念
参考文章:音视频学习从零到整-关于视频的一些概念目录 视频到底是什么? 视频文件格式 视频封装格式 视频编解码方式视频到底是什么?5G时代的到来,势必会对移动互联网的冲击将会是最刺激的.为何?一旦网络速度+设备的运行速度不受限制时,设想移动设备的暂时不可替代性是不是又更加的明显了.至少在目前为止,没有一款硬件可以替代手机设备在用户的地位.那我们来了解一下视频的常规知识.只有在了解视频的本质,你才有可能面对需求应对自如.一、视频的构成图像: 视频内容本身就是一帧一帧的图片构成.人...…
-
11、RGB与YUV.
参考文章:百度百科YUV 参考文章:理解YUV 参考文章:音视频学习从零到整-关于视频的一些概念 参考文章:YCbCr与RGB的转换目录 RGB YUVRGB我们开发场景中使用最多的应该是 RGB 模型在 RGB 模型中每种颜色需要 3 个数字,分别表示 R、G、B,比如 (255, 0, 0) 表示红色,通常一个数字占用 1 字节,那么表示一种颜色需要 24 bits。那么有没有更高效的颜色模型能够用更少的 bit 来表示颜色呢?YUV一、YUVYUV,是一种颜色编码方法。...…
-
10、AV Foundation之视频捕捉-简单人脸识别
文章摘抄自:https://www.jianshu.com/nb/13168678,用于记录学习目录 简单人脸识别简单人脸识别一、图层#import "THPreviewView.h"@interface THPreviewView ()@property(nonatomic,strong)CALayer *overlayLayer;@property(strong,nonatomic)NSMutableDictionary *faceLayers;@property(nonatom...…
-
9、AV Foundation之视频捕捉-二维码识别
文章摘抄自:https://www.jianshu.com/nb/13168678,用于记录学习目录 前言 代码实现前言一、简介AV Foundation 魅力远不止做一个系统相机或做一个简单播放器。那我们今天在AV Foundation的媒体捕捉的基础上,来尝试做一次延伸。AV Foundation 支持对动态识别,不仅可以做人脸识别,也可以识别机器可读代码。AV Foundation 在识别这一块有硬件加速器。所以可以同时扫描10张人脸或机器码。iOS原生识别二维码:CIDet...…
-
8、AV Foundation之视频捕捉-视频捕捉
文章摘抄自:https://www.jianshu.com/p/09e3d6cb9864,用于记录学习目录 前言 视频捕捉前言视频内容的捕捉。当设置捕捉会话时,添加一个名为AVCaptureMovieFileOutput的输出。这个了定义了方法将QuickTime 影片捕捉到磁盘。这个类大多数核心功能继承于超类AVCaptureFileOutput.这个超类定义了许多实用功能。比如录制到最长时限或录制到特定文件大小时为止。还可以配置成保留最小可用的磁盘空间。这一点在存储空间有限的移...…
-
7、AV Foundation之视频捕捉-拍摄静态图片
文章摘抄自:https://www.jianshu.com/p/3d5565f65db3,用于记录学习目录 前言 捕捉静态图片 使用ASSets Library框架前言回顾一下,我们在setupSession:方法中,将一个AVCaptureStillImageOutput实例添加到捕捉会话。这个类是AVCaptureOutput 的子类,用于捕捉静态图片。创建一个会话并添加捕捉设备输入&捕捉输出时,会话自动建立输入和输出的连接,按需选择信号流线路。访问这些连接在一些情况...…
-
6、AV Foundation之视频捕捉-调整闪光灯&手电筒模式
文章摘抄自:https://www.jianshu.com/p/2b792812f17e,用于记录学习目录 前言 方法实现前言AVCaptureDevice 类可以让开发者修改摄像头的闪关灯&手电筒模式。设备后面的LED灯当拍摄静态图片时作为闪光灯,而当拍摄视频时用作连续灯光(手电筒)。捕捉设备的flashMode和 touchMode 属性可以被设置为以下3个值中的一个:AVCapture(Torch/Flash)ModeOn: 闪关灯/手电筒总是开启AVCapture(...…
-
5、AV Foundation之视频捕捉-配置捕捉设备
文章摘抄自:https://www.jianshu.com/p/2b792812f17e,用于记录学习目录 前言 点击聚焦方法的实现 点击曝光的方法实现 重新设置对焦&曝光前言AVCapture Device 定义了很多方法,让开发者控制ios设备上的摄像头。可以独立调整和锁定摄像头的焦距、曝光、白平衡。对焦和曝光可以基于特定的兴趣点进行设置,使其在应用中实现点击对焦、点击曝光的功能。 还可以让你控制设备的LED作为拍照的闪光灯或手电筒的使用 每当修改摄像头设备时,...…
-
4、AV Foundation之视频捕捉-切换摄像头
文章摘抄自:https://www.jianshu.com/p/f61732835e6b,用于记录学习目录 简介 实现简介基本上ios设备都具备有前置&后置两个摄像头。接下来开发的功能是让用户在摄像头之间进行切换。当然,这个知识点除了能在我们所做的这个demo上使用。在我们的开发项目中也是运用的很平常的实现一、摄像头支撑的方法#pragma mark - Device Configuration 配置摄像头支持的方法- (AVCaptureDevice *)camera...…
-
3、AV Foundation之视频捕捉-创建捕捉控制器
文章摘抄自:https://www.jianshu.com/p/67c32aece62d,用于记录学习目录 THCameraController类中实现 处理隐私需求THCameraController类中实现一、用于配置不同的捕捉设备,同时对捕捉的输出进行控制和交互。#import <AVFoundation/AVFoundation.h>extern NSString *const THThumbnailCreatedNotification;@protocol T...…
-
2、AV Foundation之视频捕捉-创建预览视图
文章摘抄自:https://www.jianshu.com/p/28253f327f7a,用于记录学习目录 前言 创建预览视图 坐标空间转换 总结前言在讲述AV Foundation框架之媒体捕捉。我将用一个小案例来开始整个知识点的引导以及疏通。我就不一一赘述相关的UI实现了。关于UI搭建部分,同学们可以在本篇文章末尾拿到百度网盘分享。你就可以在这个基础上进行编码了。创建预览视图下图是项目的用户界面的组成图示。我们把重点放在中间层THPreview View的实现上。因为它直接...…
-
1、AV Foundation之视频捕捉-关键概念
文章摘抄自:https://www.jianshu.com/p/8c5c150dba65,用于记录学习目录 捕捉功能综述捕捉功能综述AV Foundation 照片和视频捕捉功能是从框架搭建之初就是它的强项。 从iOS 4.0 我们就可以直接访问iOS的摄像头和摄像头生成的数据(照片、视频)。目前捕捉功能仍然是苹果公司媒体工程师最关注的领域。 核心的捕捉类在iOS 和 OS X上是一致的。除了Mac OSX 为截屏功能定义了AVCaptureScreenInput 类。但iOS上由于...…
-
20、GLSL灰度马赛克等滤镜
目录 灰度 颠倒 旋涡灰度一、shader.vshattribute vec4 Position;attribute vec2 TextureCoords;varying vec2 TextureCoordsVarying;void main (void) { gl_Position = Position; TextureCoordsVarying = TextureCoords;}二、shader.fshprecision highp float;uniform sam...…
-
19、GLSL分屏滤镜
目录 顶点着色器 片元着色器顶点着色器shader.vshattribute vec4 Position;attribute vec2 TextureCoords;varying vec2 TextureCoordsVarying;void main (void) { gl_Position = Position; TextureCoordsVarying = TextureCoords;}片元着色器一、正常纹理precision highp float;uniform s...…
-
18、GLSL粒子效果(下)
目录 粒子效果粒子效果待整理…. 行者常至,为者常成!…