流媒体接入服务的一般模型

news2024/11/26 5:36:13

0x00 背景说明

媒体接入服务用来实现媒体资源(resource)的接收和发送,在有限范围内实现不同接入协议的转换。

0x01 一般模型

媒体传输通道的建立步骤通常分为两个阶段:

  • 握手/协商
  • 媒体传输

其中,握手/协商操作通常包含:

  • 媒体通道描述
  • 鉴权描述
  • URI
  • 动作,等

对应两个阶段,媒体接入服务通常需要提供两个接入点(Access Point):Stream AP 和 Session AP。简化后的系统模型如下:
在这里插入图片描述
上图所示为一般模型,根据不同的接入协议和系统结构可以衍化出一些变种:

变种 ①:协议层面,只有一个接入点。

Stream AP 融入到 Session AP 中,使用会话通道直接传输媒体数据,RTMP/SRT/HDL/HLS/DASH 都属于这种模式。简化后的系统结构如下所示:

在这里插入图片描述
虽然媒体通道复用了会话通道,但是握手/协商的过程仍然存在。

变种 ②:系统结构层面,一个 Session AP 对应多个 Stream AP

Session AP 与 Stream AP 为一对多关系,一个 Session AP 管理和维护一个或多个 Stream AP Group。简化后的系统结构如下所示:
在这里插入图片描述

0x02 媒体接入服务的操作对象

类比与 HTTP 中的 URI,媒体接入服务中的 Stream (为了讨论方便,这里暂不考虑 Stream 和 Track 的区别) 是一种资源对象 (resource)。

媒体服务对于资源的操作可以包括:

  • Publish: 由 endpoint 创建 resource 并推送媒体;
  • Ingest:由 server 创建 resource 并接收媒体;
  • Subscribe:由 endpoint 创建 resource 并接收媒体;
  • Forward:由 server 创建资源并发送媒体;

其中:

  • Publish 操作比较典型的实例: RTMP publish;
  • Subscribe 操作比较典型的实例: RTMP play,HLS;
  • Ingest 操作比较典型的实例:摄像头接入场景的 ONVIF/RTSP;
  • Forward 操作比较典型的实例:媒体垮节点分发;推送到第三方平台;
  • 基于以上 4 种操作的叠加可以衍生出新的操作:
    • Publish + Forward;
    • Ingest + Forward;

参考文档

  1. What is RTMP Ingest and Why is it Important for Live Streaming

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

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

相关文章

【GD32F303CCT6BlueBill开箱点灯教程】

【GD32F303CCT6BlueBill开箱点灯教程】 1. 搭建环境1.1 官方资料1.2 安装Keil 51.3 安装芯片选型插件pack包 2. 编译2.1 Keil4转换为Keil5工程2.2 选择芯片型号2.3 存储器类型2.4 选择下载器2.5 内存下载设置 3. 烧录3.1 Keil内烧录3.1.1 J-Link烧录3.1.2 ST-Link烧录3.1.3 CMS…

读书笔记:《远见:如何规划职业生涯3大阶段》

《远见:如何规划职业生涯3大阶段》,作者布赖恩. 费瑟斯通豪,豆瓣链接:https://book.douban.com/subject/27609489/ 主旨:描述职业生涯中3个截然不同但相互关联的阶段,教会我们如何不断储备职场燃…

【linux指南--命令大全】

系统的学习linux常用的命令,命令很全所以篇幅很长,可以作为你查阅命令的手册。也欢迎大佬们评论区补充。 文章目录 常见目录介绍配置文件系统操作帮助命令man 帮助help 帮助info 帮助 显示当前的目录名称文件查看建立目录删除空目录复制文件移动文件删除…

Qt下面窗口嵌套,嵌套窗口中包含:QGraphicsView、QGraphicsScene、QGraphicsIte

Qt系列文章目录 文章目录 Qt系列文章目录前言一、嵌套窗口二、注意事项 前言 我们有一个主窗口mainwindow,需要向其中放入新的界面,你可以自己定义里面内容。 Qt的嵌套布局由QDockWidget完成,用Qt Creator拖界面得到的dock布置形式比较固定,…

vmware设置centos客户机和windows宿主机共享文件夹

一、安装内核 kernel-devel 包 yum install gcc yum install kernel-devel-$(uname -r) 注意,如果自己修改过内核版本,需要确保 uname -r 显示的版本和实际使用的内核版本一致。 二、安装 vmware-tools 在vmware上点击菜单:虚拟机->安…

Android kotlin 实现仿京东多个item向左自动排队(横向、动手滑动、没有首尾滑动)功能

文章目录 一、实现效果二、引入依赖三、源码实现1、适配器2、视图实现一、实现效果 二、引入依赖 在app的build.gradle在添加以下代码 1、implementation com.github.CymChad:BaseRecyclerViewAdapterHelper:3.0.6,这个里面带的适配器,直接调用就即可 BaseRecyclerViewAdapt…

【图神经网络】图神经网络(GNN)学习笔记:Graph Embedding

图神经网络(GNN)学习笔记:Graph Embedding 为什么要进行图嵌入Graph embedding?Graph Embedding使用图嵌入的优势有哪些?图嵌入的方法有哪些?节点嵌入方法(Node Embeddings)1. DeepWalk2. LINE…

CTFShow-WEB入门篇命令执行详细Wp(29-40)

WEB入门篇--命令执行详细Wp 命令执行:Web29:Web30:Web31:web32:web33:web34:web35:web36:web37:web38:web39:web40: CTFSh…

【哈希表part02】| 454.四数相加、383.赎金信、15.三数之和、18.四数之和

目录 ✿LeetCode454.四数相加❀ ✿LeetCode383.赎金信❀ ✿LeetCode15.三数之和❀ ✿LeetCode18.四数之和❀ ✿LeetCode454.四数相加❀ 链接:454.四数相加 给你四个整数数组 nums1、nums2、nums3 和 nums4 ,数组长度都是 n ,请你计算有多…

Hive3安装

Mysql安装 卸载Centos7自带的mariadb rpm -qa|grep mariadb rpm -e mariadb-libs-5.5.64-1.el7.x86_64 --nodeps rpm -qa|grep mariadb 安装mysql mkdir /export/software/mysql 上传mysql-5.7.29-1.el7.x86_64.rpm-bundle.tar 到上述文件夹下后解压 tar xvf mysql-5.7.29-1…

微服务技术简介

微服务技术简介 服务架构的演变微服务架构的常见概念微服务常见的解决方案Spring CloudSpring Cloud Alibaba微服务技术对比常用的微服务组件 微服务架构图 服务架构的演变 单体架构:当一个系统业务量很小的时候,将业务的所有功能集中在一个项目中开发&…

红帽认证常见答疑(一):有效期、考试题型、考试对年龄和身份要求、英语水平等

红帽认证有效期 红帽的每个证书都有有效期,期限3年。RHCE过期前可以考下午的RHCE(EX294)或者考一门RHCA来延期3年。证书过期后在红帽官网上无法下载证书,但仍然可以查询到考试记录,不会影响到就业求职,如果…

2.6 TCP与UDP的可靠性传输

目录 一、TCP可靠性传输1、重传机制1.1、超时重传1.2、快速重传1.3、SACK1.4、Duplicate SACK 2、滑动窗口3、流量控制3.1 滑动窗口与流量控制3.2窗口关闭 4、拥塞控制4.1拥塞窗口4.2 慢启动4.3 拥塞避免4.4 拥塞发生4.5 快速恢复 二、UDP可靠性传输1、主要策略2、重传机制2.1 …

基础知识学习---牛客网C++面试宝典(六)操作系统--第二节

1、本栏用来记录社招找工作过程中的内容,包括基础知识学习以及面试问题的记录等,以便于后续个人回顾学习; 暂时只有2023年3月份,第一次社招找工作的过程; 2、个人经历: 研究生期间课题是SLAM在无人机上的应…

湖南大学CS-2017期末考试解析

【特别注意】 答案来源于@wolf 是我在备考时自己做的,仅供参考,若有不同的地方欢迎讨论。 【试卷评析】 这张卷子有点老了,部分题目可能有用。如果仔细研究应该会有所收获。 【试卷与答案】 一.(6 分,每空 0.5 分) 下表中%r1,%r2 为两个四位的寄存器,请仿照第一行…

考虑3D海底环境的风电场集电系统

摘要 风能是目前国内外应用较为广泛的一种绿色可再生能源,近几年我国风电产业的发展十分迅速。然后,越来越多的风力发电系统建并网,风力发电产生的电能受外界因素影响较大,具有一定的随机性和波动性,给并网后的电力系统…

代码随想录算法训练营第三十五天| 860.柠檬水找零、406.根据身高重建队列、452. 用最少数量的箭引爆气球

柠檬水找零 题目链接:力扣 这道题 我一开始用纯模拟的方法也能写出来,后来发现和卡哥给的答案差不多,其贪心的点在: 当账单是20的情况,优先消耗一个10和一个5因为美元10只能给账单20找零,而美元5可以给账…

为什么要进行基坑监测,基坑监测包括哪些内容?

首先我们来了解一下为什么要进行基坑监测?基坑作为基础建设的底层组成成分,关系着上层建筑的稳固安全,进行基坑监测主要是为了确保工程的安全、有效地管理工程施工,以下是具体的原因介绍: 1. 减少工程风险:…

服务限流算法

服务限流算法有哪些 计数器法(固定窗口):原理就是限制每秒处理请求数不超过阈值。比如一个接口一分钟可以处理1000次请求,那么可以设置一个计数器,当有一次请求过来,计数器就加1,如果一分钟以内…

【分布式存储】聊一下分布式存储之复制机制

上一篇文章中,主要聊了下数据分片的主要内容,我们知道,**通过数据分片其实可以解决数据存储的高性能以及可拓展,但是也导致了用join和使用分布式事务进行查询和存储数据的问题,**属于按下葫芦浮起瓢。但是在分布式领域…