Azure 媒体服务是一个基于云的媒体工作流平台,用于生成需要编码、打包、内容保护和直播活动广播的解决方案。

在视频的直播,点播方案中,媒体服务的架构主要由三部分构成:

  • 推流端,把本地视频或直播内容推送到媒体服务器
  • 媒体服务器,编码,打包,加密,根据不同的客户端请求(PC, 安卓,苹果)发布不同的协议流。
  • 拉流端 ,最终端用户的播放设备,如Azure 默认的播放器, Azure Media Player.

如Azure Media Player 点播的过程和结构图如下:

使用步骤:

  1. 将媒体文件上传到资产中。
  2. 建议向资产应用存储加密选项,以便在内容上传期间以及当内容在存储中处于静态时,为其提供保护。
  3. 编码为一组自适应比特率 MP4 文件。
  4. 建议向输出资产应用存储加密选项,以便保护静态内容。
  5. 配置资产传送策略(由动态打包使用)。
  6. 如果资产已经过存储加密,则 必须 配置资产传送策略。
  7. 通过创建 OnDemand 定位符来发布资产。
  8. 流式传输已发布的内容。

如Azure Media Player 直播的过程和结构图如下:

使用步骤:

  1. 将视频摄像机连接到计算机。 启动并配置输出多比特率 RTMP 或分段 MP4(平滑流式处理)流的本地实时编码器。
  2. 创建并启动频道。
  3. 检索通道引入 URL。
  4. 实时编码器使用引入 URL 将流发送到频道。
  5. 检索频道预览 URL。
  6. 使用此 URL 来验证频道是否正常接收实时流。
  7. 创建节目。
    • 使用 Azure 门户时,创建节目的同时还会创建资产。
    • 使用 .NET SDK 或 REST 时,需要创建一个资产并指定在创建节目时要使用该资产。
  8. 发布与节目关联的资产。

以上内容简单列举了Azure媒体服务的两种方式的步骤,下面的内容则主要介绍 流式处理终结点(Streaming Endpoint ),流式处理终结点处于媒体服务的第三部分 --- 拉流端。 如图:

流式处理终结点代表一个流服务,它可以直接将内容分发给客户端播放器应用程序。 流式处理终结点服务的出站流可以是实时流,也可以是媒体服务帐户中的视频点播资产。 媒体服务客户可以根据自身需要,选择标准流式处理终结点或者一个或多个高级流式处理终结点

标准流式处理终结点适用于最消耗流的工作负荷。 标准流式处理终结点可以动态地将内容打包成 HLS、MPEG-DASH 和平滑流式处理,并针对 Microsoft PlayReady、Apple Fairplay 和 AES128 进行动态加密,从而灵活地将内容传送到几乎所有设备。

如果有高级工作负荷或者流式处理容量要求无法适应标准流式处理终结点吞吐量目标,或者希望控制 StreamingEndpoint 服务的容量,以便处理不断增长的带宽需求,则我们建议分配缩放单元(也称为高级流单元)。

流式处理终结点生成的URL格式如下:

{流式处理终结点名称-媒体服务帐户名称}.streaming.mediaservices.chinacloudapi.cn/{定位符ID}/{文件名}.ism/Manifest[(format=mpd-time-csf)|(format=m3u8-aapl)|(format=m3u8-aapl-v3)]
  • 定位符ID: 为系统自动生成的一串GUID字符串
  • 文件名:为当前点播资产的文件名
  • Format:为指定当前传输的协议方式,如:HLS, MPEG-DASH, Smooth Streaming

三种协议介绍

一:HLS : HTTP Live Streaming

是由苹果公司提出的基于HTT的流媒体网络传输协议, 是把整个流分成一个个小的基于HTTP的文件来下载,当媒体流正在播放时,客户端可以选择从愈多不同的备用源中以不同的速率下载同样的资源,允许流媒体适应不同的数据速率。拓扑图如下:

  • 视频转码 video transcoding:是指将一个视频码流转换另一个视频码流,以适应不同的网络带宽,不同的终端处理能力和不同的客户需求。点播系统中的转码一般是离线转码,直播系统中的转码为即时转码。
  • 终端适配:将特定格式的视频转换成终端适配能力较高的视频,以便在最广泛的终端上实现分发。例如,将AVI格式(对网络播放支持不友好)的视频转码成MP4(几乎所有网络播放器都支持),以便在互联网上进行分发;
  • 带宽适配:将视频转码为超清、高清、标清等多路不同码率的视频,以便不同网络带宽的用户选择不同码率的视频;
  • 播放友好:优化视频封装格式,以实现更好地播放效果;例如,某些MP4文件的MOOV头可能位于尾部,导致部分播放器需要下载整个MP4文件之后才能开始播放;可以通过转码将MOOV头调整到文件头部,以便播放器无需下载整个文件便可以开始播放;
  • 增加水印:在视频中增加版权相关图片(例如电视台的台标),宣示视频本身的版权归属;
  • 降低分发带宽:使用更先进的编码方式对视频进行编码,确保在不降低画质的前提下降低视频码率,从而达到节省带宽的目的;例如对原本使用H.264编码的视频进行H.265编码;
  • 降低存储成本:对于以归档、备案为目的的视频,直接存储原始视频可能会带来较高的存储成本,此时可以将视频转为低码率进行存储,从而大幅降低视频存储成本。

二:Smooth Streaming

Microsoft 于2008年推出,以 Microsoft 为主的平台和在 Xbox 生态系统,Smooth Streaming 支持码率自适应,自适应流技术是使用标准HTTP的基于Web的媒体内容交付的一种形式。内容是以一系列MPEG-4(MP4)片段的形式传递给客户端。当客户端播放这些片段时,网络状况可能会发生变化(例如,带宽可能会减少),或者视频处理可能会受到正在运行的其他应用程序的影响。客户可以立即请求下一个片段来自以不同比特率编码的流,以适应不断变化的条件。这使客户端可以播放媒体而不会出现卡顿,缓冲或冻结的情况。因此,用户可以体验到最高质量的播放,而不会中断视频流。

三:MPEG-DASH:Moving Picture Experts Group (MPEG) - Dynamic Adaptive Streaming over HTTP (DASH)  

MPEG-DASH是一种码流自适应的技术,和HLS类似,MPEG-DASH将内容分割成一系列很小的文件segment,这些segment可以通过http直接访问。每个segment包含一小段时间长度的内容。MPEG-DASH传输系统架构由HTTP服务器和DASH客户端两部分组成。HTTP服务器存储着DASH文件,主要包含两部分:媒体描述文件MPD和DASH媒体文件。DASH媒体文件主要由分段媒体文件和头信息文件两部分组成。

参考资料

Azure 媒体服务:https://docs.azure.cn/zh-cn/media-services/

HLS简介: https://www.jianshu.com/p/6de22b88dc73

Smooth Streaming Architecture:https://alexzambelli.com/blog/2009/02/10/smooth-streaming-architecture/

MPEG-DASH简介:https://blog.csdn.net/ranghanqiao5058/article/details/87932267

【Azure媒体服务 Azure Media Service】Azure Media Service中Stream Endpoint 说明 (流式处理终结点)的更多相关文章

  1. Azure 媒体服务可将优质内容传输至 Apple TV

    作为内容提供商,如果想要将优质内容传输到Apple TV,需要使用Apple FairPlay Streaming (FPS)技术. 但是这个技术的构建比较繁琐,基于此,Azure提供了FairPla ...

  2. Azure媒体服务的Apple FairPlay流功能正式上线

    在此我们高兴地宣布,Azure FairPlay Streaming服务已正式商用. FairPlay允许用户轻松构建解决方案,并可扩展到最新版本的Apple TV.Azure媒体服务可以结合现有的P ...

  3. Azure 媒体服务发布可靠的视频直播平台

    Sudheer Sirivara Azure 媒体服务总监 两个月前,Azure 媒体服务发布了视频直播和内容保护产品的公共预览版.这一 Internet规模的直播解决方案已被十余家业界领先的国际广播 ...

  4. Azure 媒体服务支持 DASH 实时传送流

    Kilroy Hughes Azure媒体服务数字媒体架构师 本文重点介绍 Azure 媒体服务支持的 DASH 实时传送流功能,同时阐述如何利用这些功能将实时和点播自适应流传送至 Web 浏览器 ...

  5. Azure 媒体服务的 RTMP 支持和实时编码器

    Cenk Dingiloglu Azure 媒体服务高级项目经理 直播流媒体目前已在公共预览版中提供,其中一项受支持的输入协议便是 RTMP.RTMP 是用于输入和分发包括直播流媒体在内的丰富媒体的一 ...

  6. 通过新的 Azure 媒体服务资源管理器工具管理媒体工作流

    Xavier Pouyat    Azure 媒体服务高级项目经理 几个月前,一家广播公司找到了我,希望我向他们提供一种图形界面工具,好让他们使用 Azure媒体服务来上传.管理资产并对资产进行编 ...

  7. 中国Azure媒体服务RESTAPI的Endpoint

    Amber Zhao  Thu, Feb 26 2015 4:09 AM 由于海外Azure和中国Azure有不同的domain,很多用户在使用媒体服务RESTAPI时,需要指定中国Azure媒体服务 ...

  8. 宣布正式发布 Azure 媒体服务内容保护服务

    Mingfei Yan Azure媒体服务项目经理 我们非常高兴地宣布正式发布 Azure 媒体服务内容保护服务.这包括 Microsoft PlayReady许可服务和 AES明文密钥交付服务!此外 ...

  9. 通过 Azure 媒体服务进行高速编码

    Milan Gada Azure 媒体服务首席项目经理  关于 Azure 媒体服务,客户问的最多的一个问题是能否进行高速编码.这个问题现在已经有了肯定的答案,目前有三种不同类型的 Encodin ...

随机推荐

  1. axios post提交数据的三种请求方式

    1.Content-Type: application/json import axios from 'axios' let data = {"code":"1234&q ...

  2. [LeetCode] 221. 最大正方形(DP)

    题目 在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积. 示例: 输入: 1 0 1 0 0 1 0 1 1 1 1 1 1 1 1 1 0 0 1 0 输出: 4 ...

  3. 小BUG大原理 | 第一篇:重写WebMvcConfigurationSupport后SpringBoot自动配置失效

    一.背景 公司的项目前段时间发版上线后,测试反馈用户的批量删除功能报错.正常情况下看起来应该是个小BUG,可怪就怪在上个版本正常,且此次发版未涉及用户功能的改动.因为这个看似小BUG我了解到不少未知的 ...

  4. 血的教训!千万别在生产使用这些 redis 指令

    哎,最近小黑哥又双叒叕犯事了. 事情是这样的,前一段时间小黑哥公司生产交易偶发报错,一番排查下来最终原因是因为 Redis 命令执行超时. 可是令人不解的是,生产交易仅仅使用 Redis set 这个 ...

  5. Centos6.5 离线 Openssh 升级

    目录 OpenSSH 升级 一.基于 Dropbear 设置备用 ssh 服务器 二. Openssh 更新 2.1 ssh配置 备份 2.2 openssh 升级 Openssl 升级(由于Open ...

  6. Linux实战(15):Centos 防火墙常见端口命令

    开启命令 firewall-cmd --zone=public --add-port=80/tcp --permanent 关闭命令 firewall-cmd --zone=public --remo ...

  7. Anaconda简介及特点

    摘要 Python是一种面向对象的解释型计算机程序设计语言,其使用,具有跨平台的特点,可以在Linux.macOS以及Windows系统中搭建环境并使用,其编写的代码在不同平台上运行时,几乎不需要做较 ...

  8. python-生成器(generation)

    阐述思路是:迭代(iteration).迭代器(iterator).生成器(generator). 迭代 迭代是重复反馈过程的活动,其目的通常是为了接近并到达所需的目标或结果.每一次对过程的重复被称为 ...

  9. Spring Cloud系列(二):Eureka应用详解

    一.注册中心 1.注册中心演变过程 2.注册中心必备功能 ① 服务的上线 ② 服务的下线 ③ 服务的剔除 ④ 服务的查询 ⑤ 注册中心HA ⑥ 注册中心节点数据同步 ⑦ 服务信息的存储,比如mysql ...

  10. c语言的变量,常量及作用域等

    1.const定义常量 在C语言中,const可以用来定义的一个常量,在变量名前加上const即可. int const a: 定义了一个a的整数常量,且a的值不能被修改.如果要修改a的值,有以下两种 ...