音视频基础知识

音视频技术基础知识 一、音视频基本原理1、音视频的主要处理过程:[1]. 采集。比如从客户端的摄像头、麦克风和本地原始文件等,获得基础的音视频数据;[2]. 预处理。在这个阶段其实就是对音视频进行修剪操作,毕竟收集到的原始数据,不一定是想要在最后呈现的效果,因此在这里可能会进行美颜、裁剪、AI识别处理、声音A3处理等;[3]. 编码。在经过预处理或者没处理过的原始文件,一般都会比较大,不适合进行传输,这个时候就需要进行压缩、转码之类的操作,减 少文件提交,然后再进行传输,执行编码的工具叫编码器,压缩数据的算法叫做编码格式;[4 阅读详情

音视频基础知识

音视频录制原理

请添加图片描述

音视频播放原理

请添加图片描述

图像表示RGB-YUV

图像基础概念

  • 像素:像素是一个图片的基本单位,pix是英语单词picture的简写,加上英语单词“元素element”,就得到了“pixel”,简称px,所以“像素”有“图像元素”之意。

  • 分辨率:是指图像的大小或尺寸。比如1920x1080。

  • 位深:是指在记录数字图像的颜色时,计算机实际上是用每个像素需要的位深来表示的。比如红色分量用8bit。

  • 帧率:在1秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次。比如25fps表示一秒有25张图片。

  • 码率:视频文件在单位时间内使用的数据流量。比如1Mbps。

  • 跨距(Stride):指在内存中每行像素所占的空间。为了实现内存对齐每行像素在内存中所占的空间并不一定是图像的宽度。

像素

像素是一个图片的基本单位,pix是英语单词picture的简写,加上英语单词“元素element”,就得到了“pixel”,简称px,所以“像素”有“图像元素”之意。例如2500×2000的照片就是指横向有2500个像素点,竖向有2000个像素点,总共是500万个像素,也俗称500万像素照片。

分辨率

图像(或视频)的分辨率是指图像的大小或尺寸。我们通常用像素表示图像的尺寸。例如2500×2000的照片就是指横向(宽)有2500个像素点,竖向(高)有2000个像素点。
常见的分辨率:360P(640x360)、720P(1280x720)、1080P(1920x1080)、4K(3840x2160)、8K(7680x4320)

分辨率-不同分辨率之间的区别

常说的 1080 和 720 其实是指垂直像素数,分辨率除去垂直像素,还需要考虑到水平像素数。按照 16:9(宽 : 高)的比例计算,720p 的水平像素数为 720 ÷ 9 × 16 = 1280,总计像素为921600像素即大约为 92 万像素。1080p 具有 1920 个水平像素,总计2073600像素即约 200 万像素,是 720p 的两倍多。

像素越多视频就越清晰,所以 1080p 比 720p 的视频更加清晰。图像的分辨率越高,图像就越清晰。

位深

我们看到的彩色图片,都有三个通道,分别为红®、绿(G)、蓝(B)通道(如果需要透明度则还有alpha分量)。通常每个通道用8bit表示,8bit能表示256种颜色,所以可以组成256*256*256=16,777,216 = 1677万种颜色。这里的8bit就是我们讲的位深。
每个通道的位深越大,能够表示的颜色值就越大,比如现在高端电视说的10bit色彩,即是每个通道用10bit表示,每个通道有1024种颜色。1024*1024*1024约为10,7374万色=10亿色, 是8bit的64倍。常见的颜色还是8bit居多。

帧率

帧率即 FPS(每秒有多少帧画面),经常玩游戏的同学应该会对这个词很熟悉。我们玩游戏时,FPS 帧率越高就代表游戏画面越流畅,越低则越卡顿。视频也是如此。
由于视觉图像在视网膜的暂时停留,一般图像帧率能达到24帧,我们就认为图像是连续动态的。
常见帧率:电影帧率一般是 24fps(帧每秒);电视剧一般是25fps;监控行业常用 25fps;音视频通话常用15fps;
帧率越高,画面越流畅,需要的设备性能也越高。

码率

视频文件在单位时间内使用的数据流量。比如1Mbps。大多数情况下码率越高,分辨率越高,也就越清晰。但模糊的视频文件大小(码率)也可以很大,分辨率小的视频文件可能也比分辨率大的视频文件清晰。对于同一个原始图像源的时候,同样的编码算法,则码率越高,图像的失真就会越小,视频画面就会越清晰。

跨距(Stride)

跨距(Stride)指在内存中每行像素所占的空间。为了实现内存对齐每行像素在内存中所占的空间并不一定是图像的宽度。跨距(Stride)就是这些扩展内容的名称,Stride 也被称作 Pitch,如果图像的每一行像素末尾拥有扩展内容,Stride 的值一定大于图像的宽度值,就像下图所示:

在这里插入图片描述

比如分辨率638x480的RGB24图像,我们在内存处理的时候如果要以16字节对齐,则6383/16=119.625不能整除,因此不能16字节对齐,我们需要在每行尾部填充6个字节。就是(638+2->640), 6403/16=120。此时该图片的stride为1920字节。

RGB、YUV深入讲解

RGB

我们前面已经讲过RGB色彩表示,这里我们重点讲RGB的排列。通常的图像像素是按RGB顺序进行排列,但有些图像处理要转成其他顺序,比如OpenCV经常转成BGR的排列方式。

在这里插入图片描述

YUV

与我们熟知RGB类似,YUV也是一种颜色编码方法,它是指将亮度参量(Y:Luminance或Luma)和色度参量(UV:Chrominance或Chroma)分开进行表示的像素编码格式。这样分开的好处就是不但可以避免相互干扰,没有UV信息一样可以显示完整的图像,
因而解决了彩色电视与黑白电视的兼容问题;还可以降低色度的采样率而不会对图像质量影响太大,降低了视屏信号传输时对频宽(带宽)的要求。

YUV是一个比较笼统地说法,针对它的具体排列方式,可以分为很多种具体的格式:

  • 打包(packed)格式:将每个像素点的Y、U、V分量交叉排列并以像素点为单元连续的存放在同一数组中,通常几个相邻的像素组成一个宏像素(macro-pixel)。
  • 平面(planar)格式:使用三个数组分开连续的存放Y、U、V三个分量,即Y、U、V分别存放在各自的数组中。

在这里插入图片描述

YUV采用A:B:C表示法来描述Y,U,V采样频率比例,下图中黑点表示采样像素点Y分量,空心圆表示采样像素点的UV分量。主要分为 YUV 4:4:4、YUV 4:2:2、YUV 4:2:0 这几种常用的类型。

在这里插入图片描述

下面以每个分量数据存储在一个char(或byte)中为例描述YUV的数据存储方式。

  1. 4:4:4格式

  2. 4:2:2格式

  3. 4:2:0格式

在这里插入图片描述

YUV数据存储-4:2:0格式:

在这里插入图片描述

RGB和YUV的转换

通常情况下RGB和YUV直接的相互转换都是调用接口实现,比如Ffmpeg的swscale或者libyuv等库。主要转换标准是 BT601 和 BT709。

YUV(256 级别) 可以从8位 RGB 直接计算:

Y = 0.299R + 0.587G + 0.114B
U = -0.169R - 0.331*G + 0.5B
V = 0.5 R - 0.419G - 0.081B

8bit位深的情况下,TV range是16-235(Y)、16-240(UV) , 也叫Limited Range;PC range是0-255,也叫Full Range。而RGB没有range之分,全是0-255。

反过来,RGB 也可以直接从YUV (256级别) 计算:

R = Y + 1.402 (Y-128)
G = Y - 0.34414 (U-128) - 0.71414 (U-128)
B = Y + 1.772 (V-128)

从YUV 转到 RGB 如果值小于0要取0,如果大于255要取255。

为什么解码出错显示绿屏?

因为解码失败时YUV分量都填为0值,然后根据公式:R = 1.402 * (-128) = -126.598,G = -0.34414 * (-128) - 0.71414 * (-128) = 44.04992 + 91.40992 = 135.45984,B = 1.772 * (-128) = -126.228。
RGB 值范围为[0,255], 所以最终的值为:R = 0,G = 135.45984,B = 0。
此时只有G分量有值所以为绿色。

YUV Stride对齐问题

比如分辨率638x480的YUV420P图像,我们在内存处理的时候如果要以16字节对齐,则638不能被16整除,我们需要在每行尾部填充2个字节。就是640。此时该图片的Y stride为640字节。

在这里插入图片描述

视频的主要概念

概念

视频码率:kb/s,是指视频文件在单位时间内使用的数据流量,也叫码流率。码率越大,说明单位时间内取样率越大,数据流精度就越高。

视频帧率:fps,通常说一个视频的25帧,指的就是这个视频帧率,即1秒中会显示25帧。帧率越高,给人的视觉就越流畅。

视频分辨率:分辨率就是我们常说的640x480分辨率、1920x1080分辨率,分辨率影响视频图像的大小。

不同的分辨率之间具体有什么区别呢?我们下面就以 720p、1080p 为例进行说明。

我们常说的 1080 和 720 其实是指垂直像素数,分辨率除去垂直像素,还需要考虑到水平像素数。按照 16:9 (宽 : 高) 的比例计算,720p 的水平像素数为 720 ÷ 9 × 16 = 1280,总计像素为921600像素即大约为 92 万像素。1080p 具有 1920 个水平像素,总计2073600像素即约 200 万像素,是 720p 的两倍多。

而像素越多视频就越清晰,所以 1080p 比 720p 的视频更加清晰。

已经解释了 720 和 1080 这两个数字的含义,那后面跟着的 p 又是指什么呢?甚至还有些网站的分辨率显示是 720i 和 1080i,这个 i 又指的是什么?同样都是1080,1080i 和 1080p 哪个会更清晰?

其实 i 和 p 是指扫描方式,i 表示隔行扫描,p 则表示逐行扫描,以 1080 的视频举例:

  • 1080i:1920 x 1080 分辨率。隔行扫描模式下的高清图像是隔行显示的。每一个奇数行图像都在每一偶数行图像后面显示出来。比如将 60 帧分成两部分,奇数帧只扫描 1,3,5,7,9… 行,偶数帧只扫描 2,4,6,8,10… 行。理论上人眼是察觉不出来画面不连续,反而是由于视觉残留,能自动将两帧叠加在一起。

  • 1080p:1920x1080 分辨率。和 1080i 的区别就在于 1080p 不是隔行扫描,是逐行扫描。每一线都同时表现在画面上,因此比隔行扫描电视更加的平滑。

分辨率、帧率和码率三者之间的关系,我们以不同的基准来看一下。

当我们以码率为中心时:

  • 如果码率为变量,那么帧率就会影响视频的体积,帧率越高,每秒钟经过的画面越多,编码器每秒编出的数据也就越大,那么视频体积也就越大。分辨率则影响图像大小,分辨率越高,像素越多,则图像越大;反之图像越小。
  • 而当码率不变时,分辨率与清晰度成反比关系:分辨率越高,需要的码率就会变高,但是此时码率不变,就会导致图像越不清晰。反之分辨率越低,图像越清晰,但是图像也会越小。

如果以分辨率为中心:

  • 当分辨率不变时,码率与清晰度成正比关系:码率越高,图像越清晰;反之码率越低,图像越不清晰。

所以,一个好的画质并不是盲选最高的分辨率就可以,而是需要平衡好分辨率、帧率以及码率,某一个值偏高都会让画质受收到影响。

然而这就带来了一个问题,如果一个视频的分辨率达到 720p、1080p 甚至更高,同时完美平衡了码率、帧数,我们会发现,视频的体积会变得相当大,这让视频在网络传输中对网速的要求迅速提升,甚至不进行处理会出现无法正常播放的情况。

I 帧(Intra coded frames):I帧不需要参考其他画面而生成,解码时仅靠自己就重构完整图像。

  • I帧图像采用帧内编码方式;
  • I帧所占数据的信息量比较大;
  • I帧图像是周期性出现在图像序列中的,出现频率可由编码器选择。
  • I帧是P帧和B帧的参考帧(其质量直接影响到同组中以后各帧的质量)。
  • I帧是帧组GOP的基础帧(第一帧),在一组中只有一个I帧。
  • I帧不需要考虑运动矢量。

P 帧(Predicted frames):根据本帧与相邻的前一帧(I帧或P帧)的不同点来压缩本帧数据,同时利用了空间和时间上的相关性。
P帧属于前向预测的帧间编码。它需要参考前面最靠近它的I帧或P帧来解码。
B 帧(Bi-directional predicted frames):B 帧图像采用双向时间预测,可以大大提高压缩倍数。

在这里插入图片描述

常用的视频压缩算法

MPEG阵营:MPEG2 、H264、H265(HEVC)。中国阵营:AVS 。Google阵营:VP8、VP9。

音频

声音是一种由物体振动引发的物理现象,如小提琴的弦声等。物体的振动使其四周空气的压强产生变化,这种忽强忽弱变化以波的形式向四周传播,当被人耳所接收时,我们就听见了声音。

声音的物理性质

  • 波形:声音是由物体的振动产生的,这种振动引起了周围空气压强的振荡,我们称这种振荡的函数表现形式为波形。
  • 频率:声音的频率是周期的倒数,它表示的是声音在1秒钟内的周期数,单位是赫兹(Hz)。千赫(kHz),即1000Hz,表示每秒振动1000次。声音按频率可作如下划分:次声(0~20Hz)、人耳能听见的声音(20Hz~20KHz)、超声(20KHz~1GHz)、特超声(1GHz~10THz)。
  • 振幅:振幅的主观感觉是声音的大小。声音的振幅大小取决于空气压力波距平均值(也称平衡态)的最大偏移量。

数字音频

音频常见名词:

  • 采样频率:每秒钟采样的点的个数。

  • 采样精度(采样深度):每个“样本点”的大小,常用的大小为8bit, 16bit,24bit。

  • 通道数:单声道,双声道,四声道,5.1声道。

  • 比特率:每秒传输的bit数,单位为:bps(Bit Per Second),间接衡量声音质量的一个标准。没有压缩的音频数据的比特率 = 采样频率 * 采样精度 * 通道数。

  • 码率: 压缩后的音频数据的比特率。码率越大,压缩效率越低,音质越好,压缩后数据越大。 码率 = 音频文件大小/时长。

    常见的码率:

    96kbps:FM质量。
    128-160kbps:一般质量音频。
    192kbps: CD质量。
    256-320Kbps:高质量音频。

  • 帧:每次编码的采样单元数,比如MP3通常是1152个采样点作为一个编码单元,AAC通常是1024个采样点作为一个编码单元。

  • 帧长:可以指每帧播放持续的时间,每帧持续时间(秒) = 每帧采样点数 / 采样频率(HZ)。比如:MP3 48k,1152个采样点,每帧则为1152/48000=0.024 秒=24毫秒。帧长也可以指压缩后每帧的数据长度。

  • 交错模式与非交错模式:交错模式指数据以连续帧的方式存放。首先记录帧1的左声道样本和右声道样本,再开始帧2的记录,以此类推;非交错模式指先记录一个周期内所有帧的左声道样本,再记录右声道样本。

为了将模拟信号数字化,本节将分为3个概念进行讲解:采样频率、采样量化、编码。

在这里插入图片描述

采样频率

根据Nyguist采样定律,要从采样中完全恢复原始信号波形,采样频率必须至少是信号中最高频率的两倍。

前面提到人耳能听到的频率范围是20Hz~20kHz,所以采样频率一般为44.1Khz,这样就能保证声音到达20Khz也能被数字化,从而使得经过数字化处理之后,人耳听到的声音质量不会被降低。

采样频率:每秒钟采样的点的个数。常用的采样频率有:
22000(22kHz): 无线广播。
44100(44.1kHz): CD音质。
48000(48kHz): 数字电视,DVD。
96000(96kHz): 蓝光,高清DVD。
192000(192kHz): 蓝光,高清DVD。

采样量化

采样是在离散的时间点上进行的,而采样值本身在计算机中也是离散的。采样值的精度取决于它用多少位来表示,这就是量化。例如8位量化可以表示256个不同值,而CD质量的16位量化可以表示65536个值,范围为[-32768, 32767]。

举个例子,3位量化只能表示8个值:0.75、0.5、0.25、0、-0.25、-0.5、-0.75和-1,因而量化位数越少,波形就越难辨认,还原后的声音质量也就越差。

音频编码

数字音频信号如果不加压缩地直接进行传送,将会占用极大的带宽。例如,一套双声道数字音频若取样频率为44.1KHz,每样值按16bit量化,则其码率为2*44.1kHz*16bit=1.411Mbit/s。如此大的带宽将给信号的传输和处理都带来许多困难和成本,因此必须采取音频压缩技术对音频数据进行处理,才能有效地传输音频数据。

数字音频压缩编码在保证信号在听觉方面不产生失真的前提下,对音频数据信号进行尽可能大的压缩,降低数据量。数字音频压缩编码采取去除声音信号中冗余成分的方法来实现。所谓冗余成分指的是音频中不能被人耳感知到的信号,它们对确定声音的音色,音调等信息没有任何的帮助。冗余信号包含人耳听觉范围外的音频信号以及被掩蔽掉的音频信号等。例如,人耳所能察觉的声音信号的频率范围为20Hz~20KHz,除此之外的其它频率人耳无法察觉,都可视为冗余信号。此外,根据人耳听觉的生理和心理声学现象,当一个强音信号与一个弱音信号同时存在时,弱音信号将被强音信号所掩蔽而听不见,这样弱音信号就可以视为冗余信号而不用传送。这就是人耳听觉的掩蔽效应,主要表现在频谱掩蔽效应和时域掩蔽效应。

  • 频谱掩蔽效应:一个频率的声音能量小于某个阈值后,人耳就会听不到。当有另外能量较大的声音出现时, 该声音频率附近的阈值会提高很多。

在这里插入图片描述

  • 时域掩蔽效应:当强音信号和弱音信号同时出现时,还存在时域掩蔽效应。即两者发生时间很接近的时候,也会发生掩蔽效应。
    时域掩蔽效应可以分成三种:前掩蔽,同时掩蔽,后掩蔽。前掩蔽是指人耳在听到强信号之前的短暂时间内,已经存在的弱信号会被掩蔽而听不到。同时掩蔽是指当强信号与弱信号同时存在时,弱信号会被强信号所掩蔽而听不到。后掩蔽是指当强信号消失后,需经过较长的一段时间才能重新听见弱信号,称为后掩蔽。这些被掩蔽的弱信号即可视为冗余信号。

在这里插入图片描述

当前数字音频编码领域存在着不同的编码方案和实现方式,但基本的编码思路大同小异,如图所示。

在这里插入图片描述

对每一个音频声道中的音频采样信号,将它们映射到频域中,这种时域到频域的映射可通过子带滤波器实现。每个声道中的音频采样块首先要根据心理声学模型来计算掩蔽门限值;由计算出的掩蔽门限值决定从公共比特池中分配给该声道的不同频率域中多少比特数,接着进行量化以及编码工作;将控制参数及辅助数据加入数据之中,产生编码后的数据流。

音频编解码器选型:OPUS、MP3、AAC、AC3和EAC3。

参考:《详解音频编解码的原理、演进和应用选型等 - 知乎 (zhihu.com) 》

封装格式的概念

封装格式(也叫容器)就是将已经编码压缩好的视频流、音频流及字幕按照一定的方案放到一个文件中,便于播放软件播放。一般来说,视频文件的后缀名就是它的封装格式。封装的格式不一样,后缀名也就不一样。

常见的视频封装格式:AVI、MKV、MPE、MPG、MPEG、MP4、WMV、MOV、3GP、M2V、M1V、M4V、OGM、RM、RMS、RMM、RMVB、IFO、SWF、FLV、F4V、ASF、PMF、XMB、DIVX、PART、DAT、VOB、M2TS、TS、PS。H.264+AAC封装为FLV或MP4是最为流行的模式。

在这里插入图片描述

视频编码数据

作用:将视频像素数据(RGB,YUV等)压缩成为视频码流,从而降低视频的数据量。

音频编码数据

作用:将音频采样数据(PCM 等)压缩成为音频码流,从而降低音频的数据量。

音视频同步基础

音视频同步概念

DTS(Decoding Time Stamp):即解码时间戳,这个时间戳的意义在于告诉播放器该在什么时候解码这一帧的数据。
PTS(Presentation Time Stamp):即显示时间戳,这个时间戳用来告诉播放器该在什么时候显示这一帧的数据。

音视频同步方式

  • Audio Master:同步视频到音频
  • Video Master:同步音频到视频
  • External Clock Master:同步音频和视频到外部时钟。

一般情况下的表现情况:Audio Master > External Clock Master > Video Master。

音视频同步

Avsync模块,目前只支持audio master的方式。

各个模块关键时间点的监测:

在这里插入图片描述

其他

客户端的首帧秒开,本质上就是不做同步先把第一帧显示出来。这个功能不能降低延迟。

推流没有问题时,如果拉流不能正常播放:

  1. 没有声音:dump rtmp拉流后的数据是否可以正常播放
  2. 声音异常:是否有解码错误报告,重采样前的pcm数据是否正常
  3. 没有图像: dump rtmp拉流后的数据是否可以正常播放
  4. 画面异常:是否有解码错误报告,scale前的数据是否正常
音视频基础概念(6)——视频基础 音视频开发基础中关于视频相关概念 阅读详情

相关推荐

音视频开发入门基础知识(视频入门篇)

音视频开发基础知识的介绍

u010140427的博客 4926

音视频入门基础理论知识

本节介绍了音视频的基本原理知识以及编码相关概念。我的qq:2442391036,欢迎交流!

明天你好的博客 3859

音视频编解码基础知识

VBR 动态比特率, 需要容器支持提供音视频的同步方法CBR 固定比特率HDRIP: 重新编码,再次经过压缩的视频REMUX版本:意思是重新封装,从HD-DVD或者BD理提取音视频数据,封装到其他格式如TS或AVI中。容器 AVI:微软的,成熟老技术。不支持VBR,不支持流媒体,因为索引在文件尾部。 TS:Transfer stream. ts的每段可以分别

Alex Xu's blog 5675

【音视频】音视频基础概念

日常生活中,音视频随处可见,但从技术角度来看,音视频到底是什么呢?这个问题涉及几个专业概念,包括视频、音频、编解码、封装容器、音视频等。

Antonio915的博客 2332

【入门音视频】音视频基础知识

本期内容主要讲解音视频基础知识,包含了音视频是如何保存成文件,以及如何通过文件播放的,通过这个流程讲解音视频编解码,封装解封装相关的协议。

jupangMZ的博客 1628

音视频开发基础知识整理

术语: 容器(Container):容器就是一种文件格式,比如flv,mkv等。包含下面5种流以及文件头信息。 流(Stream):是一种视频数据信息的传输方式,5种流:音频,视频,字幕,附件,数据。 帧(Frame):帧代表一幅静止的图像,分为I帧,P帧,B帧。(下文介绍) 编解码器(Codec):是对视频进行压缩或者解压缩的工具。 复用(mux):把不同的流按照某种容器的规则放入容器...

671coder的专栏 1299

【音视频开发——入门阶段】001 音视频基础知识

进行音视频代码开发前需要提前掌握的基础知识

weixin_58475009的博客 942

【FFmpeg】(一) 音视频相关基础知识以及FFmpeg介绍

目录【FFmpeg】(一) 音视频相关基础知识以及FFmpeg介绍一、音视频相关基础知识1、视频播放器原理1.1 解封装1.2 解码1.2.1 音频压缩数据解码1.2.2 视频压缩数据解码1.3 音视频同步二、FFmpeg 介绍1、定义2、FFmpeg 命令2.1 视频格式转换命令2.2 视频转 Gif 命令三、使用 visual studio 编译 FFmpeg四、使用 Linux主机 编译 F...

一个人的旅行的博客 1542

音视频开发基础知识

PS:最近的关键字「珍惜时间」。今天学习一下音视频的基础知识,日常工作中都会接触到音视频的开发,比如目前工作中都会涉及到 TSPlayer、IjkPlayer、MediaPlayer 提...

音视频开发进阶 956

音视频专栏-基础知识总结

TS | MPEG | 支持 | MPEG-1, MPEG-2, MPEG-4, H.264 | MPEG-1 Layers I, II, III, AAC, | IPTV,数字电视 || MP4 | MPEG | 支持 | MPEG-2, MPEG-4, H.264, H.263等 | AAC, MPEG-1 Layers I, II, III, AC-3等 | 互联网视频网站 |

博客 769

PX4无人机-Gazebo仿真实现动态目标追踪的视觉控制方案

本文详细介绍了PX4无人机在Gazebo仿真环境中实现动态目标追踪的视觉控制方案。从PX4与Gazebo仿真环境搭建、动态目标追踪核心技术栈、仿真环境深度定制技巧到追踪算法的优化实践,提供了全面的技术指导和常见问题排查方法,帮助开发者高效实现无人机视觉追踪功能。

weixin_29196315的博客 452

[总结]音视频基础知识·1

目前状态:音视频领域知识零基础 已经掌握理论或技能: 数学:高等数学、概率论与数理统计、线性代数计算机:计算机操作系统原理、计算机网络、C/C++语言信号处理:数字信号处理、信号与系统嵌入式:单片机原理与应用、Linux基础知识 本文主要参考资料: 《一代高效视频编码H.265/HEVC:原理、标准与实现》,简称《原理》《H.265/HEVC视频编码:新标准及其扩展》,简称

浪风一骑 532

用树莓派Pico低成本更新USB-C PD控制器固件实战指南

固件更新是嵌入式系统开发与维护中的核心环节,它直接决定了硬件设备的功能、性能与兼容性。其原理通常是通过特定的通信接口(如SWD、JTAG、UART或USB)与设备内部的Bootloader建立连接,将新的程序代码安全写入非易失性存储器。在USB Power Delivery(PD)和Type-C生态中,固件更新技术尤为重要,它能修复协议握手Bug、适配新设备并提升供电策略的灵活性。本文聚焦于一个典型的工程实践场景:如何利用广泛普及且成本极低的树莓派Pico开发板,作为USB-C协议到I²C协议的转换桥,实现

weixin_27869497的博客 462

音视频基础知识---封装格式介绍

音视频基础知识汇总: 音视频基础知识---协议相关RTSP RTMP HLS 音视频基础知识---封装格式 音视频基础知识---视频编码格式 音视频基础知识---音频编码格式 音视频基础知识---像素格式RGB 音视频基础知识---像素格式YUV 1.什么是音视频的封装格式 封装格式也称多媒体容器,它只是为多媒体编码提供了一个“外...

adolph_lu的博客 2297

端侧部署与优化:让 AI 真正走进现实生活的关键技术

AI 的开发流程分为 “训练” 与 “推理” 两大阶段。在训练阶段,科研人员依托云端海量数据和高性能 GPU 算力,构建出精度优异的 AI 模型 —— 比如能识别 1000 种物体的图像分类模型、能理解人类语言的自然语言处理模型。但这些在云端 “战绩斐然” 的模型,若直接应用到现实场景中,却会面临三大 “落地困境”。从云端到端侧,从模型压缩到硬件适配,端侧部署与优化技术解决了 AI 落地的核心难题,让 AI 不再是实验室里的 “高精尖技术”,而是融入日常生活的 “实用工具”。

m0_63477749的博客 1053

【四足机器人项目实战】波士顿spot四足机器人机工程设计及实现分析

主要介绍了波士顿spot机器人的发展历史、四足机器人的硬件系统及电机执行器组成包括硬件系统、关节电机执行器,机载传感器机处理器及电气连接等。概述了四足机器人规划控制、感知、定位及局部地图的相关算法方向。

qq_35635374的博客 5002

音视频硬解码篇——音视频基础知识

时至今日,短视频App可谓是如日中天,一片兴兴向荣。随着短视频的兴起,音视频开发也越来越受到重视,但是由于音视频开发涉及知识面比较广,入门门槛相对较高,让许许多多开发者望而生畏。 一、视频是什么? 不知道大家小时候是否玩过一种动画小人书,连续翻动的时候,小人书的画面就会变成一个动画,类似现在的gif格式图片。 本来是一本静态的小人书,通过翻动以后,就会变成一个有趣的小动画,如果画面够多,翻动速度够快的话,这其实就是一个小视频。 而视频的原理正是如此,由于人类眼睛的特殊结构,画面快速切换时,画面会有残留,感

C/C++Linux、音视频、DPDK 1958

Cadence OrCAD Capture原理图中为功能模块分配ROOM的方法

本文详解介绍原理图设计阶段为原理图模块分配ROOM的方法。

fydar的博客 1348
上一篇: 华为机试真题练习汇总(71~80)
下一篇: 华为机试真题练习汇总(81~90)
UestcXiye
博客等级 码龄8年 9031粉丝 1306原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

UestcXiye

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值