HTML躬行记(4)——Web音视频基础

本文介绍了Web音视频的基础概念,包括音频的采样、量化、编码和常见格式,以及视频的帧类型、码率和HLS协议。在Web中,HTML5的video和audio元素提供了播放支持,MSE(Media Source Extensions)则允许更精细的媒体控制。此外,文章还讨论了播放器的架构和MSE的实现示例。
摘要由CSDN通过智能技术生成

1、基础概念

本节音视频的基础概念摘自书籍《FFmpeg入门详解 音视频原理及应用》。

1.1音频

声音的三要素为频率、振幅和波形,即声音的音调、声波的响度和声音的音色。

音频是一种利用数字化手段对声音进行录制、存放、编辑、压缩和播放的技术,相关概念包括采样、量化、编码、采样率、声道数和比特率等。

采样是指只在时间轴上对信号进行数字化。

量化是指在幅度轴上对信号进行数字化。

每个量化都是一个采样,将这么多采样进行存储就叫做编码。

声道数是指所支持的能发不同声音的音响个数,常见的有单声道、立体声道等。

比特率,也叫码率(b/s)指一个数据流中每秒能通过的信息量。

WebRTC 对音频的噪声抑制和回声消除做了很好的处理。

音频格式是指要在计算机内播放或处理的音频文件的格式,是对声音文件进行数、模转换的过程,常见的有 MP3、WAV、AAC 等。

音频信号能压缩的依据包括声音信号中存在大量的冗余度,以及人的听觉具有强音能抑制同时存在的弱音现象。

压缩编码原理是在压缩掉冗余的信号,冗余信号是指不能被人耳感知到的信息,包括听觉范围之外以及被掩蔽掉的音频信号,压缩编码分为 2 类。

  1. 无损压缩:熵编码,包括哈夫曼、算术和行程等编码。

  2. 有损压缩:波形、参数、混合等编码,波形编码包括 PCM、DPCM、ADPCM、子带编码、矢量量化等。

1.2 视频

视频泛指将一系列静态影像以电信号的方式加以捕捉、记录、处理、存储、传送与重现的各种技术。

帧(Frame)是视频的一个基本概念,表示一副画面,一段视频由许多帧组成。

视频帧又分为 I 帧、P 帧和 B 帧:

  1. I 帧是帧内编码帧,是一个完整都关键帧,无需辅助就能完整显示画面;

  2. P 帧是前向预测编码帧,是一个非完整帧,需要参考前面的 I 帧或 P帧生成画面;

  3. B 帧是双向预测编码帧,需要参考前后图像帧编码生成。

帧率(f/s 或 Hz)是单位时间内帧的数量,电视一般 1 秒 24 帧,帧率越高,画面越流畅、逼真。

码率即比特率(b/s),指单位时间内播放连续媒体(如压缩后的音频或视频)的比特数量,码率越高带宽消耗得就越多。

视频格式非常多,包括视频文件格式、视频封装格式和视频编码格式等。

视频文件格式有 MP4、RMVB、MKV、FLV、TS、M3U8 等。FLV 是一种流媒体格式,TS 广泛应用于数字广播系统。

M3U8 是使用 HLS 协议格式的基础,文件内容是一个播放列表(Playlist),采用 UTF-8 编码,记录了一些列媒体片段资源,顺序播放片段即可完整展示资源,如下所示。

#EXTM3U
#EXT-X-STREAM-INF:BANDWIDTH=150000,RESOLUTION=416x234,CODECS="avc1.42e00a,mp4a.40.2"
http://example.com/low/index.m3u8
#EXT-X-STREAM-INF
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值