百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

流媒体是啥,掌握六个步骤,软件工程师就理解了数据流全栈技术

off999 2025-02-13 13:53 29 浏览 0 评论

以前上网,网速很慢,看一部高清的movie需要下载下来,存储到本地,然后才能观看。随着网络带宽越来越高,在线电影、网络短视频刷起来越来越方便,无需下载,视听效果非常流畅。这种不用下载到本地,流畅欣赏的音视频流传输技术,就应用了流媒体技术。流媒体是一种技术方案,是一种采集、传送、接收多媒体的互联网技术。

流媒体数据技术是咋产生的

流媒体是一个技术体系,它是网络技术与音视频多媒体技术有机结合的产物。它是发送方和接收方之间传送多媒体流数据的技术。

1994年,美国一家叫做progressive networks的公司最先开始推出这种流数据技术。他们首先推出了C/S架构的音频接收系统real audio,并随后发布了流数据播放器realplayer系列。机会出现之后,微软很快推出了自己的流数据技术方案。流媒体数据技术就这样开始了快速演进。然而,受限于网络带宽,这项技术并没有迅速普及,随着网络带宽迅速提升,这种流数据技术悄悄地在教育、广电、政府、安防、电信、电商、娱乐等行业生根发芽。现在,流媒体数据技术已经成为互联网应用的主流,这已经得到了业内人士的普遍认同。

流媒体数据技术框架


流媒体数据技术是一种专门用于网络多媒体信息传播和处理的新技术,在发送方和接收方之间传送多媒体信息,一般要经历以下六个步骤和环节,采集数据,编码压缩,格式化容器化,传输,流媒体服务器分发,播放器收流。

下面以直播过程为例,说明一下流媒体的传输过程,主播端采集音视频数据,采集编码并格式化,通过网络传输协议传输,经过服务器分发,观众端接收数据,解码收看收听。

流媒体数据的采集

流媒体数据的采集分为音频的采集和视频的采集。数据采集是流媒体技术生命周期的第一个环节,它从系统声卡和摄像头等采集设备中获取原始数据,并将其输送到下一个环节。

音频数据采集。音频的采集主要通过设备将环境中的模拟信号采集成 PCM(Pulse Code Modulation,PCM,脉冲编码调制) 编码的原始数据。音频采集设备好坏主要取决于其处理数据信号的能力,音频采集和编码主要解决延时敏感性、卡顿敏感性、噪声消除(Denoise)、回声消除(AEC)、静音检测(VAD)和各种混音算法等问题。

图像数据采集技术。图像的采集是摄像头等设备抓取YUV编码格式的原始图像数据然后处理的过程。图像采集和编码需要解决的主要问题是,全面设备兼容性、延时敏感性、卡顿敏感以及各种对图像的处理操作算法等。

采集原始数据之后,还要添加一些效果数据和增强数据,比如声音效果的增强、鼓掌、魔音等,以及视频图像的增强比如美颜、图像logo等。

压缩编码和格式封装

原始获取的数据是非常庞大的,例如一个 1080P 的 7 秒视频需要 817 MB,10 Mbps 带宽传输上述 7 秒视频需要 11 分钟,这样的视频效果是不可接受的,所以要进行音频视频原始数据的压缩。

编码压缩的核心思想是通过算法去除冗余的信息。冗余包括空间冗余、时间冗余、编码冗余、视觉冗余、知识冗余等方面,通过冗余去除,我们可以得到数据较少而质量较高的数据包。上面的1080P像素7秒的图像经过 H.264 编码压缩之后,视频大小只有 708 k ,10 Mbps 带宽传输仅仅需要 500 ms,可以满足实时传输的需求。

经过对比,我们就理解了从视频采集传感器采集来的原始数据是不可以直接传输的,必须要经过视频的压缩编码。

视频压缩技术也在不断进化,视频压缩编码技术经过发展,已经从只支持帧内压缩编码算法演进到新的压缩编码算法。现在新的编码算法标准包括H.26X 和 VPX系列。常用的视频编码算法技术有H.264、H.265、VP8、VP9、FFmpeg等,音频编码算法有Mp3, AAC等。

经过音频视频编码之后,需要进行封装,封装就是数据容器化和格式化。容器是音视频流数据格式化的形象比喻,就像选用盒子和格子装东西一样。我们需要将比特数据用盒子装起来。

音频数据经过容器化计算后变为MP3,AAC,HE-AAC,Opus,FLAC,Vorbis (Ogg),Speex,AMR等格式的数据分发出去。

视频数据经过容器化后变为 MP4、3GP、AVI、MKV、WMV、MPG、VOB、FLV、MOV等格式的数据,然后分发出去。

数据传输模式和数据传输协议

流媒体数据传输方式多种多样。从传输形式上可以分为顺序流式传输和实时流式传输。顺序流式传输方式是介于本地下载完再播放方式和实时流式播放方式的中间方式,也就是用户边下载边播放,这种方式也被称之为“伪流媒体数据传输”。这种数据传输方式常应用于视频网站的点播。

实时流式传输方式是真正意义上的流媒体数据传输方式,用户可以一边接收数据包一边播放,数据实时传送。实时流媒体数据传输必须保证数据包的传输速度大于文件的播放速度,如果传输的速度小于文件的播放速度,视频就会出现卡顿。

通常情况下流媒体数据需要借助网络服务器来实现中转分发。数据从服务器分发到接收数据方的过程称为播放,流媒体数据的播放方式有三种主要情形。

  • 第一种情形是数据单播,也就是在客户端与数据服务器之间建立单独的数据通道,从一台服务器分发的每个数据包只能传送给一个客户机。这种形式的弊端是极其消耗资源。
  • 第二种情形是数据组播,这种方式允许路由器一次将数据包复制到多个通道上。采用组播方式,数据服务器只需要发送一个信息包,即可连接多个用户,所有发出请求的客户端共享同一信息包。这样可以减少网络上传输的信息包总量。
  • 第三种方式是数据点播与广播。数据点播连接是客户端与服务器之间的主动的连接。在数据点播中,用户通常通过选择内容来初始化客户端连接。每个用户可以开始、停止、后退、快进或暂停播放数据流。点播能够提供对流的最大控制,但这种方式由于为每个客户建立了单独的连接,带宽很容易被消耗完。广播是一种用户不能控制流数据只能被动接收流数据的方式,用户不能快进、后退、暂停。

相比较数据单播、数据点播和数据广播,数据组播是最有市场竞争力的数据播放方式。数据组播不会复制多个数据包传输到网络上,也不会将数据包传送给给没有请求服务器的客户,保证了网络上流数据应用占用最小带宽的网络。


流媒体数据传输的实现需要合适的网络传输协议。由于使用TCP需要较多的开销,因此不适合传输实时流数据。在流媒体传输的方案中,一般采用HTTP/TCP来传输控制信息,采用RTP/UDP/RTMP等协议来传输实时数据。现在大部分流数据网站都采用RTMP(Real Time Messaging Protocol)实时消息传送协议,该协议是Adobe公司为Flash播放器和服务器之间音视频流数据传输开发的开放协议。

服务器数据流的分发和数据流的放送

流媒体数据服务器的作用是负责流的发布和数据转播。流媒体服务器有多种选择,Nginx服务器是常用的选择,它是一款优秀的免费Web数据服务器。

播放端的推流,采集器采集流数据,经过编码压缩和格式转化,然后通过传输协议传输到服务器,服务器经过计算将收到的流进行分发,接收者只要有支持流传输协议的播放器即可播放,这是流媒体数据的整个生命周期。

相关推荐

修改自家wifi密码管理员密码

修改WiFi密码和管理员密码有两种方式:通过路由器管理页面和通过手机APP。1.通过路由器管理页面修改密码:步骤1:连接路由器,打开浏览器输入路由器的IP地址(一般为192.168.1....

超级硬盘数据恢复软件破解(超级硬盘数据恢复软件7.0)

这个慢很正常。因为硬盘恢复数据之前要对整个分区扫描一次,找到文件后,恢复的时候又要扫描一次。如果分区的容易很大,扫描会很耗时的。修复工具软件版本:嗨格式数据恢复大师2.8.1433.405,佳...

win11如何从edge恢复到ie(edge怎么变回ie)

如果您使用的是Windows10操作系统,在Windows的默认浏览器中使用Edge时,系统将默认将许多链接打开到Edge浏览器。如果您想要改回IE浏览器打开链接,按照以下步骤操作:1.打开IE浏...

uefi引导修复怎么用(uefi引导修复没反应)

biosuefi引导修复工具使用方法1、首先,在电脑关机状态下将pe启动盘插在电脑上,并在开机的时候进入pe系统,然后选择第一项回车进入:2、然后,进入到pe系统桌面之后,双击桌面上的分区工具:3、进...

360怎么升级win7系统(360如何升级win10)

像这种情况用以下介绍的方法和步骤就可以解决:1、打开电脑桌面找到“360安全卫士”软件,并打开;2、找到“360安全卫士”右下角工具拓展工具箭头;3、点击进入,选择“全部工具”;4、在全部工具页...

电脑分辨率怎么设置(电脑分辨率怎么调)

操作步骤/方法【Windows系统】END【Mac系统】第1步,选择系统偏好设置在电脑桌面,点击苹果图标并选择系统偏好设置。在电脑桌面,点击苹果图标并选择系统偏好设置。第2步,点击显示器在系统偏好设置...

win7输入法切换不了(win7输入法切换没反应)

输入法无法切换解决方法:   1、点击屏幕左下角的“开始图标”并在弹出对话框中选择“控制面板”选项并打开;  2、进入控制面板页面后将查看方式...

笔记本win10怎么改win7系统(笔记本win10改win7bios设置)

请注意,将Win10系统改为Win7系统并不是一个可行的或推荐的操作。在执行此操作之前,请确保已经获得必要的权限和授权,以及了解所涉及的风险和可能的问题。如果仍然想要执行此操作,以下是一些步骤...

qq群发器官网(qq群发器安卓免费版下载)

但是没有群呢?那怎么发?1、注意只有在以上新版本的手机QQ消息中,才会有群发祝福的功能推送。此功能笔者目前没有找到其他地方可以进入的入口。2、进入之外选择需要接收新年祝福的好友。既然是群发,则可以尽量...

开机关机在哪里设置方法(开机关机怎么弄)
  • 开机关机在哪里设置方法(开机关机怎么弄)
  • 开机关机在哪里设置方法(开机关机怎么弄)
  • 开机关机在哪里设置方法(开机关机怎么弄)
  • 开机关机在哪里设置方法(开机关机怎么弄)
tp路由器密码忘记了怎么找回

如果您忘记了TP-LINK路由器的密码,可以通过以下步骤来重置它:1.找到路由器的重置按钮,通常位于路由器背面或底部。2.使用针或其他细长的物品,按住重置按钮约10秒钟,直到路由器指示灯开始闪烁,...

大白菜系统官网win7镜像(大白菜系统镜像怎么做)

1、制作好大白菜U盘pe启动盘之后,将windows7系统原版iso镜像直接复制到大白菜U盘根目录中;2、在需要装windows7原版系统的电脑上插入U盘,重启后不停按F12或F11或Esc等按键,在...

五笔字根表打字练习(五笔字根表口诀速记与理解)

五笔字根表口诀如下:1区横起笔11G 王旁青头五一提12F 土士二干十寸雨13D 大三肆头古石厂14S 木丁西边要无女15A 工戈草头右框七2区竖起笔21H 目止具头卜虎皮22J 日曰两...

xps13plus(xps13plus拆机)

没有苹果13plus,只有苹果13promax。iPhone13这款手机采用的是一块6.7英寸的OLED的屏幕。该手机可是有着120Hz的刷新率,绝对是为你带来沉浸式体验。它的机身宽厚为1...

无线路由器连接电脑(怎样通过无线路由器连接电脑)
  • 无线路由器连接电脑(怎样通过无线路由器连接电脑)
  • 无线路由器连接电脑(怎样通过无线路由器连接电脑)
  • 无线路由器连接电脑(怎样通过无线路由器连接电脑)
  • 无线路由器连接电脑(怎样通过无线路由器连接电脑)

取消回复欢迎 发表评论: