AVCaptureSessionPreset

2018-07-09  本文已影响46人  little_ma

iPhone 设备前后置摄像头最大视频分辨率的支持

机型 前置 后置
iPhone 4 720P 720P
iPhone 4s 720P 1080P
iPhone 5 720P 1080P
iPhone 5s 720P 1080P
iPhone 6 720P 1080P
iPhone SE 720P 4K
iPhone 6s 720P 4K
iPhone 6sp 720P 4K
iPhone 7 1080P 4K
iPhone 7P 1080P 4K
iPhone 8 1080P 4K
iPhone 8P 1080P 4K
iPhone X 1080P 4K
iPhone XS 1080P 4K
iPhone XS Max 1080P 4K
iPhone XR 1080P 4K

iPhone6 的后置摄像头的一些例子

像素格式 分辨率 FPS HRSI FOV VIS 最大放大比例 Upscales AF ISO SS HDR
420v 1280x720 5~240 1280x720 54.626 YES 49.12 1.09 1 29.0~928 0.000003-0.200000 NO
420f 1280x720 5~240 1280x720 54.626 YES 49.12 1.09 1 29.0~928 0.000003-0.200000 NO
420v 1920x1080 2~30 3264x1836 58.040 YES 95.62 1.55 2 29.0~464 0.000013-0.500000 YES
420f 1920x1080 2~30 3264x1836 58.040 YES 95.62 1.55 2 29.0~464 0.000013-0.500000 YES
420v 1920x1080 2~60 3264x1836 58.040 YES 95.62 1.55 2 29.0~464 0.000008-0.500000 YES
420f 1920x1080 2~60 3264x1836 58.040 YES 95.62 1.55 2 29.0~464 0.000008-0.500000 YES

格式 = 像素格式

RGB格式的图像占用字节数为
size = width * height * 3

我们先确定每个独立帧图片的大小,以1280x720分辨率为例,一帧像素数量约等于一百万个像素点,通常称1M . 如果对每个像素点使用8位的RGB三原色存储,一个像素就需要24位存储空间. 一帧就需要2.6MB的存储空间. 而一个帧率30FBS的一秒视频就需要79MB存储. 显然,这不合实际. 所以需要专门对其的存储和传输格式做压缩处理 .

RGBA格式的图像占用字节数为
size = width * height * 4

yuv图像占用字节数为
size = width * height + (width * height) / 4 + (width * height) / 4

yuv格式是一种图片储存格式,跟RGB格式类似。yuv中,y表示亮度,单独只有y数据就可以形成一张图片,只不过这张图片是灰色的。u和v表示色差(u和v也被称为:Cb-蓝色差,Cr-红色差)。最早的电视信号,为了兼容黑白电视,采用的就是yuv格式。一张yuv的图像,去掉uv,只保留y,这张图片就是黑白的。yuv可以通过抛弃色差来进行带宽优化。比如yuv420格式图像相比RGB来说,要节省一半的字节大小,抛弃相邻的色差对于人眼来说,差别不大。

yuv420也包含不同的数据排列格式:I420,NV12,NV21.
I420格式:y,u,v 3个部分分别存储:Y0,Y1…Yn,U0,U1…Un/2,V0,V1…Vn/2
NV12格式:y和uv 2个部分分别存储:Y0,Y1…Yn,U0,V0,U1,V1…Un/2,Vn/2
NV21格式:同NV12,只是U和V的顺序相反。

kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange = '420v'
表示输出的视频格式为NV12;范围: (luma=[16,235] chroma=[16,240])

kCVPixelFormatType_420YpCbCr8BiPlanarFullRange = '420f'
表示输出的视频格式为NV12;范围: (luma=[0,255] chroma=[1,255])

kCVPixelFormatType_32BGRA = 'BGRA', 输出的是BGRA的格式
NSDictionary *videooutputSettings = [NSDictionary dictionaryWithObject:[NSNumber numberWithInt:kCVPixelFormatType_32BGRA] forKey:(id)kCVPixelBufferPixelFormatTypeKey];

FPS = 支持帧数范围

常见媒体的FPS帧率:
电影:24fps
电视(PAL):25fps
电视(NTSL):30fps

HRSI = 高像素静态图片尺寸

FOV = 视角

VIS = 该格式支持视频防抖

Upscales = 加入数字 upscaling 时的放大比例

AF = 自动对焦系统(1 是反差对焦,2 是相位对焦)

ISO = 支持感光度范围

SS = 支持曝光时间范围

HDR = 支持高动态范围图像

上一篇下一篇

猜你喜欢

热点阅读