当前位置: 首页 > news >正文

视频处理基础知识1

1、图像基本知识

图像的组成:像素、RGB(每个像素由三个发光二极管组成)、分辨率(横纵向像素的个数乘积)

PPI每英寸的像素数

DPI每英寸的点数,有可能一个点有多个像素

PPI>300 就属于视网膜级别,就是很清晰,基本上看不出小像素了

分辨率:x轴像素*y轴像素个数

常见宽高比:16:9/4:3

帧率:每秒钟采集/播放的图像的个数(动画25帧/s ,实时通信一般15帧/s就够了)

RGB码流:

这个3其实就是RGB

RGB码流 = 分辨率*3(Byte)*帧率(25帧)

但是一般要乘以8才是平常说的码流(69*8=552M)

2、YUV介绍

3、YUV与RGB的关系

4、YUV格式(YUV4:2:0最常见)

所以YUV4:2:0的数据量为:

YUV4:2:0的存储格式

上面格式就I420

YV12就是I420中v和u互换位置

码流(下面格式乘以8,因为传输的是比特,下面计算的是字节)

5、YUV实战

ffmpeg生成yuv文件

项目实战(直接在上一节音频程序修改)

音频是:0 ,摄像头是0,桌面是1,摄像头及音频是0:0

6、h264视频编码基础知识(压缩视频)

YUV与h264的压缩比(YUV约为55.2Mbps)

做视频开发,可以参考下面网址,看看码流如何设置

https://docs.agora.io/cn

GOP概念

GOP就是将相似的图像分成一组,比如向下面这几个图,背景基本一样,主要就望远镜区别,基本就可以保存变化的地方就行

1)帧的分类(I帧/P帧/B帧,实时通信一般使用I帧跟P帧,因为B帧解码需要占用过多cpu;大量音视频转码一般就使用B帧多,因为减少存储空间)

I帧跟前后帧无关

p帧跟前面帧有关

B帧跟前后帧都有关

IDR帧是I帧

在每个IDR帧都会SPS和PPS参数

2)H264压缩技术

宏块

有损压缩

无损压缩

。。。自己查资料(比较难)

3)H264码流分层

NAL层(因为有编号,可以一定程度上解决乱序、重传、丢包问题)

http://www.lryc.cn/news/405872.html

相关文章:

  • Linux退不出vim编辑模式
  • TikTok养号的网络环境及相关代理IP知识
  • 过程调用和数组的分配访问
  • TeamViewer手机端APP提示:请先验证账户
  • 【SpringBoot】分页查询
  • 微软CrowdStrike驱动蓝屏以及内核签名
  • Spring中Bean的循环依赖
  • Java二十三种设计模式-代理模式模式(8/23)
  • Windows 11 家庭中文版 安装 VMWare 报 安装程序检测到主机启用了Hyper-V或Device
  • 机械学习—零基础学习日志(高数09——函数图形)
  • java迭代集合出现并发修改异常(ConcurrentModificationException)的原因以及解决方案
  • BGP选路之Local Preference
  • WEB渗透信息收集篇--IP和端口信息
  • 国内微短剧系统平台抖音微信付费小程序app开发源代码交付
  • Java语言程序设计基础篇_编程练习题**15.19 (游戏:手眼协调)
  • 学习记录day16—— 数据结构 双向链表 循环链表
  • Air780EP模块 AT开发-MQTT接入OneNET移动物联网平台应用指南
  • HOST处理器预读PCI设备
  • 【Ansible】通过role角色部署lnmp架构
  • springboot给属性赋值的两种方式(yaml与properties)
  • 20240725 每日AI必读资讯
  • 17_高级进程间通信 UNIX域套接字1
  • 大型语言模型的生物医学知识图优化提示生成
  • winform datagrid 全部勾选
  • 从 NextJS SSRF 漏洞看 Host 头滥用所带来的危害
  • LC617-合并二叉树
  • 深入解析:端到端目标检测模型的奥秘
  • xmind--如何快速将Excel表中多列数据,复制到XMind分成多级主题
  • 在 Android 上实现语音命令识别:详细指南
  • 怎么理解FPGA的查找表与CPLD的乘积项