视频格式、视频方式区别、一个视频播放的全过程

news2024/12/23 10:56:48

一:直播和点播的区别及有的格式

1:视频直播的播放内容是媒体直播流的形式,不存在物理文件,视频画面和声音信息都是实时采集、传输和播放的。如果没有录制模块,视频画面和声音播放完毕就消失了,不能提供二次播放。而视频点播的播放内容一般都是存储在物理磁盘里的视频文件。

2:首先说视频直播,视频直播会涉及一个比较完整的视频处理流程,包括视频画面和声音采集、视频编码、组包发送、网络传输、收包解包、视频解码、视频渲染和声音播放等。

相对而言,视频点播包括的流程就比较少了,一般只涉及文件读取、网络传输、视频解码、视频渲染和声音播放等流程,不会涉及视频画面和声音采集、视频编码、组包。
 

3:视频直播和视频点播在技术架构方面也存在明显的差异。视频直播,常见的低延时方案大多是 RTC 方案,比如 WebRTC;大会直播类的场景一般是 CDN 方案,常用 rtmp、hls流媒体协议方案。当然也有别的方案,这里不展开讨论,后续专门介绍。

视频点播,常用的有电视信号和网络协议,比如 http,https 等,视频格式有 m3u8、mp4、flv、mkv、mxf 等。由于上述网络协议和传输信号的差异,视频直播和视频点播的播放器方案有所不同,也是二者的显著差异之一
直播和点播的区别_音视频开发老舅的博客-CSDN博客

二:RTMP、RTSP、m3u8、flv、 mp4、f4v区别及含义 格式文件的对比

RTMP 与 RTSP 是比较常见的两种流媒体协议。
流媒体协议是一种用于通过 Web 传递多媒体的协议。
每次观看直播或点播视频时,背后的技术就是流媒体协议。

RTMP
英文全称:Real Time Messaging Protocol
中文意思:实时消息协议
底层协议:TCP
应用级视频流协议
视频编解码器:H.264
音频编解码器:AAC
延迟:3 - 30 秒

RTMP 最大优点 是可以在服务器和客户端服务器之间保持稳定的连接,
无论用户的互联网连接质量如何,它都可以无缝低延迟进行流媒体传输。
这个技术主要通过将数据流分成相等的小部分并将它们顺序传输到接收设备,然后将它们重新组合成视频流来实现的。

RTMP 最大的缺点 是它与 HTML5 播放器不兼容,这样的话必须使用另一种协议,例如 HLS来传输视频文件到达用户的设备,此外,RTMP 容易受到带宽问题的影响
 

RTSP
英文全称:Real Time Streaming Protocol
中文意思:实时流协议
底层协议:TCP 和 UDP
网络控制协议
视频编解码器:H.265
音频编解码器:AAC
延迟:2 秒

RTSP 支持可靠的分段流,这意味着用户可以在仍在下载流的同时继续观看流,Android 和 iOS 设备没有开箱即用的 RTSP 兼容播放器,所以普及度并不高,
但 RTSP 在许多监控 和闭路电视 (CCTV) 应用非常广泛,远程摄像头、在线教育和互联网直播等,都用的比较频繁。

RTMP 与 RTSP 区别

延迟
RTMP:3-30秒
RTSP:2-5秒
优点
RTMP:低延迟 适应性 灵活性 不需要缓冲
RTSP:低延迟 分段流式传输
缺点
RTMP:带宽问题 HTML5 不支持 某些浏览器和设备的兼容性问题 安全性有点低
RTSP:HTTP 不兼容 依赖于其他协议
RTMP 与 RTSP 该如何选择?
IP 摄像机、物联网设备,那么选择 RTSP准不会错
第三方流媒体应用,那么选择RTMP准不会错


m3u8准确来说是一种索引文件。

使用m3u8文件实际上是通过它来解析对应的放在服务器上的视频网络地址,从而实现在线播放。

使用m3u8格式文件主要因为可以实现多码率视频的适配,视频网站可以根据用户的网络带宽情况,自动为客户端匹配一个合适的码率文件进行播放,从而保证视频的流畅度。

现在的视频网站采用的是流媒体传输协议,就是将一段视频切成无数个小段,这几个小段就是ts格式的视频文件,一段一段的网站上播放。

这样做的好处是观看更加流畅,因为他会根据网络状况自动切换视频的清晰度,在网络状况不稳定的情况下,对保障流畅播放非常有帮助。

如果直接加载mp4或者flv文件,当文件很大时,比如一集电影2个小时,1080p的可能有2G的大小,直接加载会很慢,如果进行切片,这样只需要加载m3u8文件,根据m3u8里的索引进行播放,这种加载会很快。
 


flv是流式文件
flv文件可以边传输边解析
flv文件可以一边下载一边观看,
flv格式不用全部下载完毕,就支持解析观看等


mp4:

MP4是一种多媒体格式,它可以存储视频、音频和其他数据,可以跨平台,最常见封装格式,后缀.mp4。

MP4文件是由一系列标准编码和解码器组成的,它的编码和解码器比较复杂,在播放MP4文件之前,得先将文件下载完成,再播放。因为MP4文件的编码和解码器需要时间完成,如果没有先将文件下载完成,播放的时候就会出现卡顿的现象,可能会出现视频播放不流畅的情况。

MP4文件的编码和解码器还可以提高文件的压缩率,这样可以节省存储空间

MP4格式详解_~小生的博客-CSDN博客


m3u8文件格式与mp4之间有什么区别

m3u8 和 mp4 格式都可以用来防止视频盗链。m3u8 是一种基于 HTTP 的流媒体格式,它使用一个 .m3u8 文件来指示浏览器如何下载并播放视频。mp4 是一种通用的视频格式,可以在大多数浏览器和设备上播放。

M3U8视频格格式其实是一种M3U,只是它的编码格式是UTF-8格式。M3U用Latin-1字符集编码。M3U8格式特点是带有一个目录信息或文件。

MP4视频文件 即 mp4 (文件格式) 。 MPEG-4包含了MPEG-1及MPEG-2的绝大部份功能及其他格式的长处,并加入及扩充对虚拟现实模型语言(VRML , VirtualReality Modeling Language)的支持,面向对象的合成档案(包括音效,视讯及VRML对象),以及数字版权管理(DRM)及其他互动功能。而MPEG-4比MPEG-2更先进的其中一个特点,就是不再使用宏区块做影像分析,而是以影像上个体为变化记录,因此尽管影像变化速度很快、码率不足时,也不会出现方块画面。

如果你要在一段长达一小时的视频中跳转,如果使用单个 MP4 格式的视频文件,并且也是用 HTTP 协议,那么需要代理服务器支持 HTTP range request 以获取大文件中的一部分。不是所有的代理服务器都对此有良好的支持。

m3u8则只需要根据列表文件中的时间轴找出对应的 TS 片段下载即可,不需要 range request,对代理服务器的要求小很多。所有代理服务器都支持小文件的高效缓存。

两个 TS 片段可以无缝拼接,播放器能连续播放,而 MP4 文件由于编码方式的原因,两段 MP4 不能无缝拼接,播放器连续播放两个 MP4 文件会出现破音和画面间断,影响用户体验
 


F4V是Adobe公司为了迎接高清时代而推出继FLV格式后的支持H.264的流媒体格式。它和FLV主要的区别在于,FLV格式采用的是H263编码,而F4V则支持H.264编码的高清晰视频,码率最高可达50Mbps


直播过程及可能会涉及到的协议和格式

 


视频播放流程

平时我们播放一个视频(本地或者在线)的时候,有想到过这个视频是如何播放出来的吗? 其实从我们点击播放开始,到最后我们看到视频,这中间经历了一系列的流程。你也许会很惊讶吧,我就点击了一个视频观看,没想到中间还会有这么多的过程呢!这些不可见的过程要感谢工程师们默默的付出。

本文将就在线播放视频播放的流程做一些介绍:

1:流媒体协议解

当你点击在线视频的时候,视频很快就会播放出来。你也许会很诧异一个大的视频文件咋就立即播放了呢,这视频文件是已经下载到本地了吗?其实则不然,播放器只是播放了传输了那一部分,这得益于流媒体协议。

何为流媒体协议呢? Real-time Transport Protocol是用于Internet上针对多媒体数据流的一种传输协议(属于应用层),是指将一连串数据压缩后,经过网络分段发送,即时传输以供观看音视频的一种技术。通过使用 streaming media 技术,用户无需将文件下载到本地即可播放。

那第一步就是流媒体协议解析,目的是去除一些信令数据(播放,暂停,停止等控制命令),提取出音视频数据。

 2:解析封装格式

上步解析协议之后,拿到了音视频数据。这些音视频数据按照一定规则组装成mp4、flv、m3u8等格式的文件。这一步要做的是解封装,即从一个容器里面,提取出音频数据、视频数据以及音视频数据对应关系。

 

3:音视频解码
上一步拿到的音视频数据是没法渲染播放的,原因是为了降低始视频数据占用存储空间,视频文件通过编码压缩形式来使存储空间变小。也就是我们拿到的是压缩后的数据,这一步要做的就是通过压缩算法,还原出音视频的原始数据。对应的视频数据通过H.264/AVC、HEVC/H.265等还原出原始的视频数据(YUV或RGB格式),压缩的音频数据通过AAC还原出原始的音频数据(PCM格式)。

4:音视频同步
这一步要做的就是视频数据与音频数据的同步问题,即视频播放的画面与播放的声音对应的上。 常用的同步方式有如下三种: - 音频为主时钟(视频同步到音频) - 视频为主时钟(音频同步到视频) - 外部时钟(系统时间)为主时钟(视频、音频同步到外部时钟)

主流的是音频为主时钟,即视频播放过快,则重复播放上一帧,以等待音频;如果视频播放过慢,则丢帧追赶音频。
5:渲染与播放

同步后的数据,视频数据送到显卡渲染,音频数据送到声卡播放。

6:总结

一个完整的在线播放流程包括:解析协议 -> 解析封装格式 -> 音视频解码 -> 音视频同步 -> 渲染与播放。

 

在解析出音频数据之后,我们可以再做一些特殊处理,比如对视频数据添加一些滤镜、特效转场等,对音频数据做一些降噪等操作。

视频播放流程_SkyNullCode的博客-CSDN博客

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/531980.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

并行分布式计算 并行计算性能评测

文章目录 并行分布式计算 并行计算性能评测基本性能指标参数CPU 基本性能指标存储器性能并行与存储开销 加速比性能定律Amdahl 定律Gustafson 定律Sun 和 Ni 定律加速比讨论 可括放性评测标准等效率度量标准等速度度量标准平均延迟度量标准 基准评测程序(Benchmark&…

甘特图控件DHTMLX Gantt入门使用教程【引入】:用Node.js实现Gantt(下)

DHTMLX Gantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表。可满足项目管理应用程序的大部分开发需求,具备完善的甘特图图表库,功能强大,价格便宜,提供丰富而灵活的JavaScript API接口,与各种服务器端技术&am…

Linux多路转接之select

文章目录 一、IO的理解二、五种IO模型1.阻塞式IO2.非阻塞式IO3.信号驱动式IO4.IO多路转接5.异步IO6.五种IO模型的总结 三、非阻塞式IO1.fcntl函数 四、IO多路转接之select的介绍五、编写select服务器1.将获取连接时设置为select多路转接2.获取连接成功后的读取数据 六、select多…

商家订单之Java版SpringCloud+SpringBoot+Mybatis+Vue+Uniapp 分布式、微服务、多商家入驻b2b2c电子商务云平台

一个好的SpringCloudSpringBoot b2b2c 电子商务平台涉及哪些技术、运营方案?以下是我结合公司的产品做的总结,希望可以帮助到大家! 搜索体验小程序:海哇 1. 涉及平台 平台管理、商家端(PC端、手机端)、买…

linu0.12-9-blk_drv

[394页] 第9章 块设备驱动程序 395–9-1-总体功能 395–9-1-1-块设备请求项和请求队列 397–9-1-2-块设备访问调度处理 397–9-1-3-块设备操作方式 398–9-2-blk.h文件 398–9-2-1-功能描述 399–9-2-2-代码注释 403–9-3-hd.c程序 403–9-3-1-功能描述 405–9-3-2-代码注释…

离散数学_九章:关系(6)

🪐9.6 偏序 1、⛺偏序关系和偏序集⛲偏序关系⛲偏序(关系)的例子 a. “大于或等于” 关系b. “整除” 关系c. “包含” 关系 🎬偏序集🎬可比性(comparability) " ≼ " 符号a. 可比 &a…

【工具】如何判断两个二进制文件是否相同

🐚作者简介:花神庙码农(专注于Linux、WLAN、TCP/IP、Python等技术方向)🐳博客主页:花神庙码农 ,地址:https://blog.csdn.net/qxhgd🌐系列专栏:善假于物&#…

wx自定义组件

自定义组件的意义: 提供一系列的样式,,通用的样式提供一系列的骨架,,通用标签避免重复写一些业务逻辑 小程序自定义组件中 : slot : 修改组件内容 外部样式类: 修改组件样式 slot…

案例7:Java茶叶销售网站设计与实现开题报告

博主介绍:✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专…

手术麻醉信息管理系统源码(简称手麻系统源码)php + mysql + vue2 B/S网页版

手术麻醉信息管理系统源码(简称手麻系统源码) 手术麻醉信息管理系统(简称手麻系统)是指专用于住院患者手术与麻醉的申请、审批、安排,术前、术中和术后有关信息的记录和跟踪以及手术麻醉室内部管理等功能的计算机应用…

Lucene中的Field域、索引维护、搜索、相关度排序和中文分词器讲解

Field域 Field属性 Field是文档中的域,包括Field名和Field值两部分,一个文档可以包括多个Field,Document只是Field的一个承载体,Field值即为要索引的内容,也是要搜索的内容。 是否分词(tokenized) 是:作…

事实证明,国产BI软件的财务数据分析性价比极高!

国产BI软件做财务数据分析的性价比极高,主要得益于两个因素,一个是国产BI软件按功能模块购买,大幅度降低BI大数据分析平台的使用成本;另一个则是国产BI软件已打磨出标准化、系统化的财务数据分析方案,低成本、低风险、…

Blender基础技巧小结

官网下载 https://www.blender.org/download/lts/2-83/ 我下载的版本:LTS Release 2.83.20 Windows – Portable Ogre导出插件 https://github.com/OGRECave/blender2ogre 安装插件 将blender2ogre\io_ogre复制到:blender-2.83.20-windows-x64\2.8…

论文阅读-17-Deep Long-Tailed Learning: A Survey---3.1Class Re-balancing

文章目录 1. Re-sampling1.1 Class-balanced re-sampling(1) Decoupling① 网络架构② Sampling策略③ Classifier的学习策略 (2) SimCal① 比较 (3) DCL(4) Balanced meta-softmax(5) FASA(6) LOCE(7) VideoLT 1.2 Scheme-oriented sampling(1) LMLE(2) PRS(3) BBN(4) LTML(5)…

技术赋能光伏组件检测“大尺寸” “高精度”,维视智造SNEC亮点抢先看!

2023.5.24-5.26 全球最具影响力的 国际化、专业化、规模化光伏盛会 第十六届(2023) SNEC光伏大会暨(上海)展览会 即将开展 维视智造深耕机器视觉行业20年 解决方案落地众多光伏头部企业 如今作为光伏组件视觉检测系统行业领先者 此次展会维视将…

(文章复现)《高比例清洁能源接入下计及需求响应的配电网重构》(含matlab代码)

1.引言 配电网重构作为配电网优化运行的手段之一,通过改变配电网的拓扑结构,以达到降低网损、改善电压分布、提升系统的可靠性与经济性等目的。近年来,随着全球能源消耗快速增长以及环境的日趋恶化,清洁能源飞速发展,分…

从【创作者】转变为【博客专家】-- 内含详细申请过程

从【创作者】转变为【博客专家】 0、引言1、创作身份认证1.1 起因1.2 违背祖宗的决定1.3 认证创作身份1.3.0 好处1.3.1 条件1.3.2 认证信息1.3.3 后台审核 2、博客专家认证2.1 好处2.2 条件2.3 认证信息2.4 后台审核2.5 实体证书 3、 反思与总结 ⚠申明: 未经许可&a…

哪个年龄段人群喜欢养宠物?18-25岁占比最高,达31%

上一期,我们通过可视化互动平台分析了萌宠经济下宠物食品的发展现状,这一期我们接着来分析一下,在萌宠经济下,我国宠物医疗产业的市场情况。 由于现在很多家庭都喜欢饲养宠物,宠物数量的快速增长从而拉动了宠物经济的…

晶飞FLA5000光谱仪.FlaSpec文件数据解析

引言 首先说明下晶飞上位机软件存在的问题,实验所采用的FLA5000型号光谱仪,光谱波段从280-970nm,FWHM值为2.4nm。 1、上位机软件中的光谱数据复制功能基本是废的,最多只能到599.9nm,后面的数据全部消失。 2、上位机软…

NOSQL和REDIS配置与优化

关系数据库与非关系型数据库 ●关系型数据库: 关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。 SQL 语句(标准数据查询语言)就是一种基于关系型数据库…