首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >音视频基础

音视频基础

原创
作者头像
vitofliu
发布2021-07-05 20:19:13
2.2K0
发布2021-07-05 20:19:13
举报
文章被收录于专栏:云架构云架构云架构

目录

1.音频

1.1音频基本概念

1.2音频编码原理

1.3 ADTS

1.3.1 ADTS工具

1.4 ffmpeg处理aac

1.5 ffmpeg官方文档 aac, opus参数

1.6 音频重采样

2. 视频

2.1基本概念

2.2ffmpeg YUV实战

2.3 h264原理

2.3.1常用分辨率、帧率、码率

2.3.2编码技术

2.3.3H264码流结构

2.3.4 sps

2.3.5 PPS

2.3.6 slice header

2.3.7 H264分析工具

1.音频

1.1音频基本概念

采样频率:每秒钟采样的点的个数。常用的采样频率有:

22000(22kHz): 无线广播。

44100(44.1kHz):CD音质。

48000(48kHz): 数字电视,DVD。

96000(96kHz): 蓝光,高清DVD。

192000(192kHz): 蓝光,高清DVD。

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

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

2,比特率:每秒传输的bit数,单位为:bps(Bit Per Second) 间接衡量声音质量的一个标准。

没有压缩的音频数据的比特率 = 采样频率 * 采样精度 * 通道数。

码率: 压缩后的音频数据的比特率。常见的码率:

96kbps: FM质量

128-160kbps:一般质量音频。

192kbps: CD质量。

256-320Kbps:高质量音频

AAC通常压缩比为18:1,也有资料说为20:1,远胜mp3,而音质由于采用多声道,和使用低复杂性的描述方式,使其比几乎所有的传统编码方式在同规格的情况下更胜一筹.

码率越大,压缩效率越低,音质越好,压缩后数据越大。

码率 = 音频文件大小/时长。

Aac一个音频帧有1024个采样点, 所以 44.1K采样率 aac 通常1S含有44帧(44.1k / 1024 = 44.1帧))

比特率:每秒传输的bit数,单位为:bps(Bit Per Second)。

间接衡量声音质量的一个标准。

没有压缩的音频数据的比特率 = 采样频率 * 采样精度 * 通道数。

码率: 压缩后的音频数据的比特率。常见的码率:

96kbps:FM质量

128-160kbps:一般质量音频。

192kbps:CD质量。

256-320Kbps:高质量音频

码率越大,压缩效率越低,音质越好,压缩后数据越大。

码率 = 音频文件大小/时长。

帧:音频的帧的概念没有视频帧那么清晰,几乎所有视频编码格式都可

以简单的认为一帧就是编码后的一张图像。

帧长:

(1)可以指每帧采样数播放的时间, mp3 48k, 1152个采样点,每帧则为

24ms;aac则是每帧是1024个采样点。 攒够一帧的数据才送去做编码

(2)也可以指压缩后每帧的数据长度。所以讲到帧的时候要注意他适用

的场合。

每帧持续时间(秒) = 每帧采样点数 / 采样频率(HZ)

1.2音频编码原理

数字音频压缩编码采取去除声音信号中冗余成分的方法来实现。所谓冗余成分指的是音频中不能被人耳感知到的信号,它们对确定声音的音色,音调等信息没有任何的帮助。

这就是人耳听觉的掩蔽效应,主要表现在频谱掩蔽效应和时域掩蔽效应。

音频压缩分为两种,其基本的方法都是消除冗余信息,在这里的冗余信息指的是

人的听觉范围以外的音频信息: (1)有损压缩:消除冗余信息后,无法还原出原声。 (2)无损压缩:消除冗余信息后仍能够还原出原声

有损压缩使用信号遮蔽的方法,信号遮蔽使用的两种效应:

(1)频域遮蔽:不同频率的声音产生遮蔽效应

(2)时域遮蔽:声音强度高的在前后时间内将声音强度低的进行遮蔽

同一段频率 上音量高的 会遮住音量低的。但是不同频率 不会遮挡

比如两个女生吵架,频率相近,声音小的 会被盖住。

但男生和女生吵架,即使男生声音低一点,也不会被完全遮住,因为频率不同

压缩越小越好,速率越快越好。在两者之间追求平衡

消除冗余信息--有损压缩,无法还原成和原来一摸一样了

以下两种技术:先有损 删除冗余信息,然后剩下的有效信息 要无损压缩。

冗余信息:比如人的听力范围(20hz-20Khz)以外的数据

有损压缩

去除冗余信息的技术方法:去除人听力范围以外的数据,频域遮蔽,时域遮蔽。

一段主要声音前(一般50ms)、后(可达200ms),次要声音可能被遮蔽

音频编码过程

心理声学模型-去除听力范围以外的数据

常见的音频编码器

( 1) OPuS:目前较新的音频编码器,webRTC默认使用0PUS,

( 2) AAC:在直播系统中应用比较广泛的编码器;

(3) ogg:软件牧费,应用比较少;

(4) Speez:显著的特点是支持回音消除,是七八年前应用非常广泛的编码器;

(5)G.711:固话使用的窄带音频编码器,但是音损非常严重,不适合实时通信;(6)其他: iLBC、AME。

二、不同音频编码器的音频编码质量比较

OPUS对不同的网络质量(窄带、宽带、超宽带、全带)都有对应的码流选择三、不同音频编码器的音频编码码率

不同编码器在不同的延时对码率的支持范围。

aac 取代mp3.(音质更好 压缩率更高)

opus逐渐会取代aac,实时一般用opus比如在线课堂等。

这几种的 优缺点比较。

主要研究aac和opus即可

音频编码质量对比:

纵轴是音频质量,窄带、宽带、超宽带、全波段、全波段立体声

横轴是码流大小

opus适用范围非常广

AAC规格描术

AAC LC : (Low Complexity)低复杂度规格,码流是128k,音质好。AAC HE:等于AAC LC + SBR(Spectral Band Replication)。其核心思相是按频谱分保存。低频编码保存主要成分,高频单独放大编码保存音质。码流在64k左右。

AAC HE V2:等于AAC LC +SBR + PS(Parametric Stereo)。其核心思相是双声道中的声音存在某种相似性,只需存储一个声道的全部信息,然后,花很少的字节用参数描述另一个声道和它不同的地方。

aac前边一般都是使用一个adts头,更适合流式传输。

如果不能播放一般是 adts头有问题

adts 结构

AAC格式

ADIF ( Audio Data Interchange Format )

这种格式的特征是可以确定的找到这个音频数据的开始,只能从头开始解码,不能在音频数据流中间开始。这种格式常用在磁盘文件中

ADTS ( Audio Data Transport Stream )

这种格式的特征是每一帧都有一个同步字,所以可以在音频流的任何位置开始解码。它类似于数据流格式。ADTS每一帧数据都有头, 所以比ADIF大.

1.3 ADTS

1.3.1 ADTS工具

ADTS是一种音频传输格式  

1.ADTS是个啥

ADTS全称是(Audio Data Transport Stream),是AAC的一种十分常见的传输格式。

记得第一次做demux的时候,把AAC音频的ES流从FLV封装格式中抽出来送给硬件解码器时,不能播;保存到本地用pc的播放器播时,我靠也不能播。当时崩溃了,后来通过查找资料才知道。一般的AAC解码器都需要把AAC的ES流打包成ADTS的格式,一般是在AAC ES流前添加7个字节的ADTS header。也就是说你可以吧ADTS这个头看作是AAC的frameheader。

2.ADTS内容及结构

ADTS 头中相对有用的信息 采样率、声道数、帧长度。想想也是,我要是解码器的话,你给我一堆得AAC音频ES流我也解不出来。每一个带ADTS头信息的AAC流会清晰的告送解码器他需要的这些信息。

一般情况下ADTS的头信息都是7个字节,分为2部分:

adts_fixed_header();

adts_variable_header();

syncword :同步头 总是0xFFF, all bits must be 1,代表着一个ADTS帧的开始

ID:MPEG Version: 0 for MPEG-4, 1 for MPEG-2

Layer:always: '00'

profile:表示使用哪个级别的AAC,有些芯片只支持AAC LC 。在MPEG-2 AAC中定义了3种:

profile的值等于 Audio Object Type的值减1 profile = MPEG-4 Audio Object Type - 1

MPEG-4 Audio Object Types: 主要 2 aaclc; 5 sbr=aac he v1; 29:ps=aac he v2

0: Null

1: AAC Main

2: AAC LC (Low Complexity)

3: AAC SSR (Scalable Sample Rate)

4: AAC LTP (Long Term Prediction)

5: SBR (Spectral Band Replication)

6: AAC Scalable

7: TwinVQ

8: CELP (Code Excited Linear Prediction)

9: HXVC (Harmonic Vector eXcitation Coding)

10: Reserved

11: Reserved

12: TTSI (Text-To-Speech Interface)

13: Main Synthesis

14: Wavetable Synthesis

15: General MIDI

16: Algorithmic Synthesis and Audio Effects

17: ER (Error Resilient) AAC LC

18: Reserved

19: ER AAC LTP

20: ER AAC Scalable

21: ER TwinVQ

22: ER BSAC (Bit-Sliced Arithmetic Coding)

23: ER AAC LD (Low Delay)

24: ER CELP

25: ER HVXC

26: ER HILN (Harmonic and Individual Lines plus Noise)

27: ER Parametric

28: SSC (SinuSoidal Coding)

29: PS (Parametric Stereo)

30: MPEG Surround

31: (Escape value)

32: Layer-1

33: Layer-2

34: Layer-3

35: DST (Direct Stream Transfer)

36: ALS (Audio Lossless)

37: SLS (Scalable LosslesS)

38: SLS non-core

39: ER AAC ELD (Enhanced Low Delay)

40: SMR (Symbolic Music Representation) Simple

41: SMR Main

42: USAC (Unified Speech and Audio Coding) (no SBR)

43: SAOC (Spatial Audio Object Coding)

44: LD MPEG Surround

45: USAC

sampling_frequency_index:表示使用的采样率下标,通过这个下标在 Sampling Frequencies[ ]数组中查找得知采样率的值。

There are 13 supported frequencies:

0: 96000 Hz

1: 88200 Hz

2: 64000 Hz

3: 48000 Hz

4: 44100 Hz

5: 32000 Hz

6: 24000 Hz

7: 22050 Hz

8: 16000 Hz

9: 12000 Hz

10: 11025 Hz

11: 8000 Hz

12: 7350 Hz

13: Reserved

14: Reserved

15: frequency is written explictly

channel_configuration: 表示声道数

0: Defined in AOT Specifc Config

1: 1 channel: front-center

2: 2 channels: front-left, front-right

3: 3 channels: front-center, front-left, front-right

4: 4 channels: front-center, front-left, front-right, back-center

5: 5 channels: front-center, front-left, front-right, back-left, back-right

6: 6 channels: front-center, front-left, front-right, back-left, back-right, LFE-channel

7: 8 channels: front-center, front-left, front-right, side-left, side-right, back-left, back-right, LFE-channel

8-15: Reserved

frame_length : 一个ADTS帧的长度包括ADTS头和AAC原始流.

adts_buffer_fullness:0x7FF 说明是码率可变的码流

1.4 音频重采样

音频的三元组:采样率、采样大小、声道数

什么事音频重采样?将音频三元组的值转成另一组值。

为什么要重采样?(1〉从设备中采集的音频数据与编码器要求的数据格式不一致y(2〉扬声器要求的音频数据与要播放的音频数据不一致,(3)更方便运算〈回声消除时,将多通道重采样成单通道方便运算。)

重采样的步骤:(1)创建重采样上下文,(2〉设置参数;(3)初始化重采样;(4)进行重采样。重要的API: (1) swr_alloc_set_opts; (2) swr_init; (3) swr_convert; (d〉 swr_freeo

为什么要重采样:

设备采集数据与编码设备要求的数据不一致;(采集的是44.1K 32bit 2声道, aac编码44.1K 采样大小16bit, 双声道);

播放设备 要求的数据与待播放数据不一致;(mac win 安卓 ios设备可播放的参数都可能不一致)硬件设备的参数 一般是固定的, 所以各种数据都要重采样成硬件设备的参数;更方便运算(比如混音消除时 变成单个声道)

2. 视频

2.1基本概念

像素--- RGB---分辨率(宽*高像素个数)---图像

像素位深:每个像素用几个bit表示

1.非16:9或者4:3的视频是非标准的视频,渲染容易出问题,最好先转化成标准宽高比.现在主要是16:9

2.XXX P值得是高,然后按宽高比计算宽

360p= 640*360

720=1280*720

帧率:每秒钟采集或播放的图像个数。

帧率和分辨率的关系:帧率决定了视频的平滑度;分辨率决定了清晰度。

电影一般都是 60帧以上

直播上课 一般30帧

实时通信一般15帧

动画的帧率是25帧

使用RGB24(888)编码

RGB码流=分辨率*3Bytes*帧率*8bit

视频码流的计算

(1)分辨率,X轴的像素个数(宽)乘以 Y轴的像素个数(高)

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

常见的分辨率:360P(640*360)/720P(1280*720)/1K()/2K,这些分辨率都是16:9的.

4:3常见的是640*480,320*160

(2)帧率,每秒钟采集或者播放图像的个数。

动画的帧率是25帧/s;

常见的帧率:15帧/s,30帧/s,60帧/s

实时通信一般是15帧/s(帧率越大,占用的传输带宽就越大)

录课一班30帧/s能够满足需求;

电影一般在60帧/s;

要求的平滑度越高,帧率就越大。

要求的清晰度越高,分辨率就要越高。

图像的显示,分以下几种情况:

1、图像大小等于显示区域的大小

2、图像大小 小于 显示区域的大小(需要进行拉伸或者留白处理)。如果留白的话,一般是左右留白,很少有上下留白的。

3、图像大于显示区域(需要进行缩小或者截断剪切处理)

标准的YUV(也称YCbCr,Blue,Read)格式是YUV4:2:0。 YUV420 一般播放器都支持. 422和444有些播放器可能不支持. 数据量少,且向前兼容电视格式 所以需要yuv

电视是yuv,显示器是rgb。

yuv是采集数据,转换成rgb才能展示

为何需要yuv:因为yuv存储的数据要比rgb少很多

u分量 是 cb分量 blue,  Y分量就是黑白色的图片

V分量 是cr分量 red

YUV介绍wiki:https://en.wikipedia.org/wiki/YUV

播放器兼容,yuv420都支持,

其他两种可能有部分播放器不支持

1) YUV4:4:4一幅图的数据量 与RGB相同(以1280*720为例)为:*3

2) YUV4:2:2 (1 + 2/4 + 2/4 ) * 1280*720

3) YUV4:2:0 (1 + 1/4 + 1/4 ) * 1280*720 其实是4:1:1?? = 1.5/3 = 0.5* RGB数据量

yuv420存储格式

分层存储,非常方便兼容黑白电视。

黑白电视只需要读取前边的 y分量数据.安卓:nv21  ios:yv12

YUV4:2:0是分层存储的,即现存储Y分量,然后存储U分量,最后存储V分量。

YUV存储格式:

(1)planar(平面),分成两种模式

1、I420:YYYYYYYY UU VV -> YUV420P

2、YV12:YYYYYYYY VV UU -> YUV420P

以上两个的主要区别是现存U还是现存V。IOS是YV12格式存储的;android系统一般都是NV21存储。

(2)packed(打包)

NV12:YYYYYYYY UVUV -> YUV420SP

NV21:YYYYYYYY VUVU -> YUV420SP

2.3 h264原理

h264 压缩比 约1/100

yuv420 640*480 帧率15帧,原始码流640*480 * 1.5 * 15 *8=55Mbps而h264建议 500kbps. ---压缩55Mbps*1/100=550kbps

GOP:一组差别小的 强相关的视频帧

在视频编码序列中,GOP即Group of picture(图像组),指两个I帧之间的距离,

Reference(参考周期)指两个P帧之间的距离。⼀个I帧所占⽤的字节数⼤于⼀个P帧,⼀个P帧所占⽤的字节数⼤于⼀个B帧。

所以在码率不变的前提下,GOP值越⼤,P、B帧的数量会越多,平均每个I、P、B帧所占⽤的字节数就越多,也就更容易获取较好的图像质量;Reference越⼤,B帧的数量越多,同理也更容易获得较好的图像质量。

需要说明的是,通过提⾼GOP值来提⾼图像质量是有限度的,在遇到场景切换的情况时,

H.264编码器会⾃动强制插⼊⼀个I帧,此时实际的GOP值被缩短了。另⼀⽅⾯,在⼀个GOP

中,P、B帧是由I帧预测得到的,当I帧的图像质量⽐较差时,会影响到⼀个GOP中后续P、B帧的图像质量,直到下⼀个GOP开始才有可能得以恢复,所以GOP值也不宜设置过⼤。

同时,由于P、B帧的复杂度⼤于I帧,所以过多的P、B帧会影响编码效率,使编码效率降低.

另外,过长的GOP还会影响Seek操作的响应速度,由于P、B帧是由前⾯的I或P帧预测得到的,所以Seek操作需要直接定位,解码某⼀个P或B帧时,需要先解码得到本GOP内的I帧及之前的N个预测帧才可以,GOP值越,需要解码的预测帧就越多,seek响应的时间也越长。

2.3.1常用分辨率、帧率、码率

通常来讲,视频参数的选择要根据产品实际情况来确定,比如,如果一对一教学场景中 ,老师和学生的窗口比较大,要求的分辨率会高一点,随之帧率和码率也高;如果是一对四, 老师和学生的窗口都比较小,分辨率可以低一点,对应的码率帧率也会低一点,以减少编解码的资源消耗和缓解下行带宽压力。一般可按下列场景中的推荐值进行设置。

二人视频通话场景:

分辨率 320 × 240、帧率 15 fps、码率 200 Kbps

分辨率 640 × 360、帧率 15 fps、码率 400 Kbps

多人视频通话场景:

分辨率 160 × 120、帧率 15 fps、码率 65 Kbps

分辨率 320 × 180、帧率 15 fps、码率 140 Kbps

分辨率 320 × 240、帧率 15 fps、码率 200 Kbps

编码帧分类

B帧 压缩率高,但是耗cpu,所以实时通信 不常用

编码帧分类:I帧一般是GOP中第一帧,不参考别的帧。P帧占I帧一半大小。B帧占I帧1/4的大小,但是耗时,占用CPU,会导致延时增加,实时通讯(音视频会议,在线教育)一般只有I、P帧,音视频转码服务会大量使用B帧。

IDR帧核⼼作⽤是,是为了解码的重同步,当解码器解码到 IDR 图像时,⽴即将参考帧队列清 空,将已解码的数据全部输出或抛弃,重新查找参数集,开始⼀个新的序列。这样,如果前⼀个序列出现重⼤错误,在这⾥可以获得重新同步的机会。IDR图像之后的图像永远不会使⽤

IDR帧,解码器立即刷新帧,防止错误的传播。如果没有idr帧 中间只要错一帧,后边就全部无法解析了。

IDR帧可以防止错误传播

IDR帧,解码器立即刷新帧,防止错误的传播。如果没有idr帧 中间只要错一帧,后边就全部无法解析了。

b帧: 1/4左右,但耗诗 占用cpu,会导致延迟增加。所以实时通讯,音视频会议一般只有i p帧,转码服务的会大量使用b帧,节约空间。

编码帧分类:I帧一般是GOP中第一帧,不参考别的帧。P帧占I帧一半大小。B帧占I帧1/4的大小,但是耗时,占用CPU,会导致延时增加,实时通讯(音视频会议,在线教育)一般只有I、P帧,音视频转码服务会大量使用B帧。

I帧: 帧内编码帧 intra picture

P帧:前向预测编码帧 predictive-frame

B帧:双向预测帧 bi-directional interpolated prediction frame

1.gop1 解帧顺序:I帧-P-BBB。但播放时等GOP所有帧解析完,然后IBBBP播放。

I帧不依赖于其他,p帧向前依赖I, B前依赖I 后依赖P。BBB之间不互相依赖。

3. 一般是 一个I,3个B, 1个P

Sps是设置GOP的参数, pps设置单个图像的参数

2.3.2编码技术

H264压缩技术是一个技术合集.H264进行编解码是以宏块为单位进行处理的,以像素为单位效率太低了.

有损压缩:帧内压缩、帧间压缩

无损压缩:DCT、CABAC压缩

1有损压缩

1.1)帧内压缩 帧内预测 有损压缩

存储的数据 就是:预测模式数据 + 预测残差值数据

帧内压缩理论,用于压缩I帧 IDR帧.

帧内压缩的理论: 以此为理论 以一个宏块为基础预测下一个宏块(上 下 左 右)

帧内预测 9中模式,h264有算法决策使用哪种模式。每个宏块使用的模式 都可能是不同的

1.亮度块和色度块 是分开预测的

2.预测模式信息+帧内预测残差值

3.这些都是解决I帧的 压缩技术

1.2)帧间压缩

帧间压缩:一个GOP内相邻的帧,进行帧间压缩。 参考帧:后面的帧要参考前面的帧进行压缩。

运动估计:帧间压缩最重要的技术.指的是一个过程,通过宏块匹配的方法,最终找到运动的矢量。也就是宏块查找的过程,用于查找相同的宏块(比如相似度达到95%以上相似就认为是相同的)

运动补偿:计算残差值,在解码时 把残差值补上

帧间压缩理论原理:B P帧

帧间压缩比 帧内压缩要大。

所以I帧太多, 数据比较大。

B帧多,数据小,但解析算法复杂,耗cpu

1.同一个gop内 帧之间压缩

2.运动估计

花屏原因 主要是丢P帧和B帧.

卡顿:为避免花瓶 丢帧时直接丢掉改组gop。

花屏和卡顿 无法兼顾,要么花屏 要么卡顿。看自己的业务选择

2. 无损压缩

进行无损压缩之前,先要DCT变换:经过有损压缩之后的数据 是分散的二维图表的各个节点上的,数据分散 压缩比较困难.DCT变换把分散的数据集中到一块区域.

1) VLC压缩

即可变长的压缩编码,高频数据块采用少的数据量编码表示,低频数据块采用多的数据量编码表示,就可以将目标数据中的高频字符占用的体积大大压缩

2) CABAC 上下文适配的二进制算术编码压缩技术,属于无损压缩,在H264的编码过程中常用于 DCT (将分散的数据集中到一块儿)变换之后的进一步数据压缩。

H264的编码流程图(最下面一行是解码流程)。(Fn:当前帧,ME运动评估(宏块匹配查找)、MC运动矢量、T:DCT转换、Q量化(无损编码)、choose intra prediction帧内压缩选择的帧内预测模式,intra prediction帧内预测)

2.3.3H264码流结构

h264码流分层 网络传输协议层 NAL层 Network Abstraction Layer ,视频数据网络抽象层 接收端可以区分有没有乱序 丢包重传等错误 出现错误的时候可以通知发送者重新传 vcl 层 视频编码层.

分层存储

nal层 网络传输功能,处理 乱序 丢包 重传等;

vcl层:数据编码层

码流基本概念:

SODB 按bit编码,vcl层产生

RBSP sodb字节补齐,查3bit 则补100,差5bit则补10000

NALU NAL header(1B)+RBSP

一般是一张图用一个slice,但可以用多个slice。

一个视频包含多个帧(压缩后的图像),一个帧可有一个或多个slice。一个slice包含多个宏块,每个宏块又可划分成多个子块

一个packet里可能包含多个帧 比如包含sps pps sei i/b/p帧等

2.3.4 sps

profile 描述压缩特性

level 是视频的描述,视频的码率

sps/pps/sliceheader 可以知道分辨率 码率 解码和播放顺序

通过sps 可以知道profile,level,图像格式,帧率 分辨率,码率,最大帧数量,参考帧帧数,帧显示序号

Sps两个重要参数: profile和level

profile右侧 向上发展 压缩特性

向左侧发展的特性 视频level

通常用得比较多的是MAIN Profile

每一级level对应的应该设置的bitrate,分辨率,每秒 帧数

Sps参数:分辨率相关

SPS参数:帧相关

1)最大帧数:log2_max_frame_num_minus4的值应在0-12范围内(包括0和12),这个句法元素主要是为读取另一个句法元素 frame_num  服务的,frame_num  是最重要的句法元素之一,它标识所属图像的解码顺序 。这个句法元素同时也指明了 frame_num 的所能达到的最大值: MaxFrameNum = 2*exp( log2_max_frame_num_minus4 + 4 ) 。

2).最大参考帧数max_num_ref_frames,解码器设置缓冲区大小用到

3).显示帧序号pic_order_cnt_type, 计算帧显示顺序

SPS参数:帧率相关

2.3.5 PPS

2.3.6 slice header

1.帧类型 I B P。  每个slice是什么帧?一个slice是一个帧吗?

2.GOP中解码顺序

3.预测权重

4.滤波

2.3.7 H264分析工具

Elecard Sream Eye 收费 专业的 一般用这个

CodecVisa 也是收费

雷神的工具 免费specialvh2 64.exe he  videoeye

videoeye 一般用这个就够了,但没有sps pps

specialV  只能打开h264文件,可以查看sps pps

视频中Sream Eye 和 specialV对于sps参数的解析

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档