流媒体与直播的基础理论(其一)

2024-09-07 19:36

本文主要是介绍流媒体与直播的基础理论(其一),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述

欢迎诸位来阅读在下的博文~
在这里,在下会不定期发表一些浅薄的知识和经验,望诸位能与在下多多交流,共同努力

文章目录

  • 一、流媒体简介
  • 二、流媒体协议
      • 常见的流媒体协议
  • 三、视频直播原理与流程
      • 通用的视频直播模型
      • 视频直播链路

一、流媒体简介

  • 流媒体是指将一连串的媒体数据压缩后,经过网上分段发送数据,在网上及时传输影音以供观赏的一种技术与过程,此技术使数据得以像流水一样发送;如果不使用此技术,就必须在使用前下载整个媒体文件。
  • 完整的流媒体平台包括:前端摄像头、流媒体服务器、磁盘阵列、视频综合管理、电视墙、客户端等。
    在这里插入图片描述
  • 流媒体最主要的技术特征是流式传输,它使数据像流水一样传输。实现流式传输主要有两种方式:顺序流式传输 和 实时流式传输。
    01 顺序流式传输是指顺序下载,用户在观看在线媒体的同时下载文件,在这一过程中,用户只能观看已下载完的部分,而不能直接观看未下载完的部分。由于标准的HTTP服务器就可以完成这种工作,所以也被称为HTTP流式传输。
    优点:由于流式传输能够较好地保证节目播放的质量,因此比较适合在网站上发布的、可供用户点播的、高质量的视频。顺序流式文件存放在标准HTTP或FTP服务器上,易于管理,基本上与防火墙无关。
    缺点:顺序流式传输不支持现场广播,也不适合长片段和有随机访问要求的视频。
    02 实时流式传输必须保证匹配连接带宽,使媒体可以被实时观看到。在观看过程中用户可以任意观看媒体前面或者后面的内容。实时流式传输需要特定服务器,如 Quick Time Streaming Server、Realserver、Windows Media Server、SRS、ZLMediaKit等。这些服务器允许对媒体发送进行更多级别的控制,因而系统设置、管理比标准的HTTP服务器更复杂。实时流式传输还需要特殊网络协议,如实时流协议(RTSP)或 微软媒体服务。
    优点:实时流式传输意味着数据在发送和接收之间几乎没有延迟,用户可以立即体验内容,非常适合现场事件。
    缺点:不稳定的网络连接可能导致缓冲和延迟,需要自适应流技术来调整流的质量。此外,还要考虑防火墙的问题。

二、流媒体协议

在这里插入图片描述

  • 常见的流媒体协议是基于数据应用层的协议(UDP,UDP除外,因为UDP是传输层的协议,也是流媒体中常用的协议)

常见的流媒体协议

流媒体协议是用于传输音频和视频数据的标准化方法,确保数据在网络上实时传输的有效性和可靠性。以下是一些常见的流媒体协议:

  1. RTMP (Real-Time Messaging Protocol)
  • 用途:用于音频、视频和数据在互联网上的实时传输。
  • 特点:支持低延迟流媒体传输,常用于直播应用。最初由Adobe开发,用于Flash播放器。协议延迟非常低,但由于需要flash插件,不建议使用该协议,但流提取是例外。
  • 总结:一个老的协议,正在淘汰中。
  1. HLS (HTTP Live Streaming)
  • 用途:由Apple开发,支持在HTTP上进行流媒体传输。
  • 特点:将媒体内容切分成小片段,客户端可以动态选择合适的质量,适应网络条件。
  • 总结:使用最广泛的协议之一。
  1. MPEG-DASH
  • 用途:一种自适应流媒体传输技术,可以根据网络条件动态调整视频质量。支持绝大多数编解码器,支持加密媒体扩展和媒体扩展源。
  • 特点:支持多种编码格式,灵活性高,也使用类似HLS的分片技术。
  • 总结:属于当代最新的协议之一,但是未被广泛使用,有发展潜力。
  1. RTSP (Real-Time Streaming Protocol)
  • 用途:用于控制流媒体服务器,支持点播和实时流。
  • 特点:类似于HTTP,允许客户端发送播放、暂停、停止等控制命令。常与RTP(Real-Time Transport Protocol)一起使用,以传输音频和视频数据。
  • 总结:在IP摄像头和网络视频监控中广泛使用,但在一般流媒体应用中逐渐被其他协议取代。
  1. SRT (Secure Reliable Transport)
  • 用途:用于低延迟和高安全性的视频传输。
  • 特点:设计用于在不稳定的网络环境中提供可靠的流媒体传输,支持加密和纠错机制。
  • 总结:适合直播和远程制作,越来越受到关注并逐渐被采纳。
  1. WebRTC (Web Real-Time Communication)
  • 用途:支持在浏览器中进行实时音视频通信。
  • 特点:无需插件,支持点对点连接,极低延迟,适用于语音和视频聊天应用。
  • 总结:在实时通信领域具有广泛应用前景,特别是在视频会议和在线互动中。

三、视频直播原理与流程

在这里插入图片描述
这里着重讲解一下推流和服务器分发。
推流:直播的基础保障,如果推流的网络不稳定,则无论如何优化,观众的体验都很差,所以也是排查问题的第一步。常见的推流协议有如下两种:

  • 实时流传送协议(RTSP),是用来控制声音或者影像的多媒体串流协议。
  • 实时消息传送协议(RTMP),是Adobe公司为Flash播放器和服务器之间声频、视频和数据传输而开发的开放协议。
    RTMP基于TCP,是一种设计用于进行实时数据通信的网络协议,主要用于在flash/AIR平台和支持RTMP协议的流媒体/交互服务器之间进行音视频和数据通信。它是目前主流的流媒体传输协议,广泛用于直播领域。支持该协议的软件包括Adobe Media Server/Ultrant Media Server/Red5等。它有三种变种:RTMP工作在TCP之上的明文协议,使用端口1935;RTMPT封装在HTTP请求之中,可穿越防火墙;RTMPS类似于RTMPT,但使用的是HTTPS链接。RTMP就像一个用来装数据包的容器,这些数据可以是AMF格式的数据,也可以是FLV中的视/声频数据。

服务器流分发:流媒体服务器的作用是负责直播流的发布和转播分发功能。流媒体服务器有诸多选择,如商业版本的Wowza,以及开源的Nginx。Nginx是一款优秀的免费Web服务器,后面章节会详细介绍如何搭建Nginx服务器。

通用的视频直播模型

在这里插入图片描述
推流是指将直播内容推送到服务器的过程。
拉流是指服务器已有直播内容,用指定地址进行拉取的过程。

视频直播链路

直播链路涉及到的技术点很多,这是总体的框架图。
在这里插入图片描述
至此,结束~
在这里插入图片描述
望诸位不忘三连支持一下~

这篇关于流媒体与直播的基础理论(其一)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1145959

相关文章

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

速盾:直播 cdn 服务器带宽?

在当今数字化时代,直播已经成为了一种非常流行的娱乐和商业活动形式。为了确保直播的流畅性和高质量,直播平台通常会使用 CDN(Content Delivery Network,内容分发网络)服务器来分发直播流。而 CDN 服务器的带宽则是影响直播质量的一个重要因素。下面我们就来探讨一下速盾视角下的直播 CDN 服务器带宽问题。 一、直播对带宽的需求 高清视频流 直播通常需要传输高清视频

rtmp流媒体编程相关整理2013(crtmpserver,rtmpdump,x264,faac)

转自:http://blog.163.com/zhujiatc@126/blog/static/1834638201392335213119/ 相关资料在线版(不定时更新,其实也不会很多,也许一两个月也不会改) http://www.zhujiatc.esy.es/crtmpserver/index.htm 去年在这进行rtmp相关整理,其实内容早有了,只是整理一下看着方

RTMP流媒体服务器 crtmpserver

http://www.oschina.net/p/crtmpserver crtmpserver又称rtmpd是Evostream Media Server(www.evostream.com)的社区版本采用GPLV3授权 其主要作用为一个高性能的RTMP流媒体服务器,可以实现直播与点播功能多终端支持功能,在特定情况下是FMS的良好替代品。 支持RTMP的一堆协议(RT

【IPV6从入门到起飞】4-RTMP推流,ffmpeg拉流,纯HTML网页HLS实时直播

【IPV6从入门到起飞】4-RTMP推流,ffmpeg拉流,纯HTML网页HLS实时直播 1 背景2 搭建rtmp服务器2.1 nginx方案搭建2.1.1 windows 配置2.1.2 linux 配置 2.2 Docker方案搭建2.2.1 docker 下载2.2.2 宝塔软件商店下载 3 rtmp推流3.1 EV录屏推流3.2 OBS Studio推流 4 ffmpeg拉流转格式

防封!数字人直播防封!铭顺科技AI数智人抖音直播防封落地方案!!

数字人直播防不防封? 数字人直播有没有流量? 数字人直播能不能落地? 这是目前所有想入局AI数字人赛道、想用数字人直播、想做数字人项目的老板们最担心、最关心的问题!但是,同行友商对此都噤若寒蝉,不敢跟客户说,怕客户知道!今天,铭顺科技帮您一次说清楚! 其实,对于抖音防封开播,我们铭顺科技早已有完整的直播防封解决方案!有图有真相,以下是我们铭顺科技数智人在抖音上稳定直播的

LiveQing视频点播流媒体RTMP推流服务功能-支持大疆等无人机RTMP推流支持OBS推流一步一步搭建RTMP视频流媒体服务示例

LiveQing支持大疆等无人机RTMP推流支持OBS推流一步一步搭建RTMP视频流媒体服务示例 1、流媒体服务搭建2、推流工具准备3、创建鉴权直播间4、获取推流地址5、配置OBS推流6、推流及播放7、获取播放地址7.1 页面查看视频源地址7.2 接口查询 8、相关问题8.1、大疆无人机推流花屏 9、RTMP推流视频直播和点播流媒体服务 1、流媒体服务搭建 Windows/Lin

P7072 [CSP-J2020] 直播获奖

题目描述     NOI2130即将举行。为了增加观赏性,CCF决定逐一评出每个选手的成绩,并直播即时的获奖分数线。本次竞赛的获奖率为w% 的选手的最低成绩就是即时的分数线。     更具体地,若当前已评出了 p 个选手的成绩,则当前计划获奖人数为max(1,⌊p∗w%⌋),其中w是获奖百分比,⌊x⌋ 表示对x向下取整,max(x,y) 表示x和y中较大的数。如有选手成绩相同,则所有成绩并列的

没想到吧!免费的大数据直播上线了!!!

大数据人才作为中国互联网行业需求最旺盛的六类人才之一,初级大数据工程师的薪水就达15k,有三年以上工作经验的资深工程师更是高达年薪50-60万。 据麦肯锡报告,目前大数据人才缺口更是在百万人以上。 如何实现大数据开发入门呢?如果把学习路线做成思维导图的话,大概是这样子: 当前网上并不缺少大数据的学习资料,相反,就是因为网络上有太多太杂的大数据教学视频,让初学者摸不着头脑,不知道从哪里学起。

直播美颜SDK与主播美颜工具:实时美颜技术的深度解析

本篇文章,笔者将深入解析直播美颜SDK的核心技术与主播美颜工具的开发原理。 一、什么是直播美颜SDK? 通过集成美颜SDK,开发者可以在直播应用中快速实现脸部优化、滤镜添加、皮肤调整等功能,帮助主播在直播过程中实时呈现最佳状态。不同于传统的后期处理,直播美颜SDK依靠强大的实时处理能力,能够在视频采集的同时对图像进行优化处理,达到实时美颜的效果。 二、直播美颜SDK的核心技术 1.人脸