音视频学习一

0.音视频编解码流程

一.图像基础概念

基础概念:分别率,像素,位深,码率(带宽),跨距Stride

一. 1920*1080 的分别率的 像素就是 1920 * 1080 = 200w多

二.每个色彩RGB 每个占8个bit 0-255 也可以为10bit比较贵

三.帧率越高 码率(带宽)越低

注:码率:视频文件在单位时间内使用的数据流量。比如1Mbps(bit/s)。

四. 三者不能同时兼顾

五.原始数据决定分辨率,ai是修复数据的,原始720p不能变为1080p

六.Stride跨距

■Stride:指在内存中每行像素所占的空间。为了实现内存对齐每行像素在内存中所占

的空间并不一定是图像的宽度。

■Stride就是这些扩展内容的名称,Stride也被称作Pitch,如果图像的每一行像素末尾拥

有扩展内容,Stride的值一定大于图像的宽度值,就像下图所示:

比如分辨率638x480的RGB24图像,我们在内存处理的时候如果要以16字节对齐,如果不够就补齐,但是他补全的padding的内容不会保存到本地

七.YUV

  • Y(亮度):负责形状和细节。

  • U 和 V(色度):负责颜色本身。

■打包(packed)格式:将每个像素点的Y、U、V分量交叉排列 并以像素点为单元连续的存放

在同一数组中,通常几个相邻的像素组成一个宏像素(macro-pixel)

■平面(planar)格式:使用三个数组分开连续的存放Y、U、V三个分量 ,即Y、U、V分别存

放在各自的数组中。

YUV420 是用的最多 (4+1 +1) / 4 = 1.5 字节

有YUV422 444 等可以了解

YUV解码失败分量为000 转为RGB,可能会变成绿色

因为R 为 负数,G为整数 ,B也为负数

二 音频基础概念:

■人耳能听见的声音 为 20Hz~20KHZ
但是计算机需要使用采样定理,两倍频率去采集,采集后可以再去还原出来的声音。

麦克风采集模拟世界20kh-》AD-》计算机采样2倍的20khz,48khz、44.1khz-》DA转换-》喇叭播放

音频每帧多少秒怎么算

2. 如果没有按照原本的 LR 或 LLLRRR 方式保存,会发生什么?

情况 1:声道错乱

  • 如果本来应该是 L R L R 交替的立体声,却变成了 L L R R 或其他顺序:

    • 声音会变"怪",左右声道的音频信息错位

    • 某些乐器的声音可能跑到错误的一边

    • 如果是人声,可能出现相位问题,听起来空洞或失真

情况 2:单声道变立体声

  • 如果本来是单声道(LLLLL),但强行按立体声(LR)保存:

    • 两个声道听到的是相同内容,但文件体积变大

    • 没有真正的立体声效果

下面这种就会和视频相差两秒就会出现,会出现画面和音频不一致的问题

相关推荐
西岸行者13 天前
学习笔记:SKILLS 能帮助更好的vibe coding
笔记·学习
REDcker13 天前
WebCodecs VideoDecoder 的 hardwareAcceleration 使用
前端·音视频·实时音视频·直播·webcodecs·videodecoder
gihigo199813 天前
基于TCP协议实现视频采集与通信
网络协议·tcp/ip·音视频
悠哉悠哉愿意13 天前
【单片机学习笔记】串口、超声波、NE555的同时使用
笔记·单片机·学习
别催小唐敲代码13 天前
嵌入式学习路线
学习
毛小茛13 天前
计算机系统概论——校验码
学习
babe小鑫13 天前
大专经济信息管理专业学习数据分析的必要性
学习·数据挖掘·数据分析
山河君13 天前
四麦克风声源定位实战:基于 GCC-PHAT + 最小二乘法实现 DOA
算法·音视频·语音识别·信号处理·最小二乘法·tdoa
winfreedoms13 天前
ROS2知识大白话
笔记·学习·ros2
在这habit之下13 天前
Linux Virtual Server(LVS)学习总结
linux·学习·lvs