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. Openstack 一直在调度中解决

    查看日志/var/log/nova/nova-scheduler.log,/var/log/nova/nova-compute.log ,均无报错 查看/var/log/nova/nova-condu ...

  2. 第23课 - #error 和 #line 使用分析

    第23课 - #error 和 #line 使用分析 1. #error 的用法 (1)#error 是一个预处理器指示字,用于生成一个编译错误消息,这个消息最终会传递到编译器(gcc) 在思考这一点 ...

  3. turtle空间坐标系

    利用空间坐标改变行进 以海龟的角度来看,无论往那个方向运行,都叫正方向 turtle.fd向海龟的正前方运行,turtle.bk向反方向运行

  4. nginx upstream一致性哈希的实现

    地址:http://wiki.nginx.org/HttpUpstreamConsistentHash 首先声明一个命令: static ngx_command_t  ngx_http_upstrea ...

  5. Apache Hudi和Presto的前世今生

    一篇由Apache Hudi PMC Bhavani Sudha Saktheeswaran和AWS Presto团队工程师Brandon Scheller分享Apache Hudi和Presto集成 ...

  6. 关于KeePass实现ssh协议的自动登录

    本文主要介绍一下,在keepass中如何实现linux主机的ssh方式的自动登录 keepass版本:KeePass 2.45 在keepass的URL中,其实默认也是内置了ssh的,其原理是调用pu ...

  7. 《Java并发编程的艺术》笔记

    第1章 并发编程的挑战 1.1 上下文切换 CPU通过时间片分配算法来循环执行任务,任务从保存到再加载的过程就是一次上下文切换. 减少上下文切换的方法有4种:无锁并发编程.CAS算法.使用最少线程.使 ...

  8. 有关图的连通性的Tarjan算法

    割点与桥 在一个无向连通图中,若将某个点及其相连的边删除后,图就不连通了,则这样的点被称为割点. 在一个无向连通图中,若将某条边删除后,图就不连通了,则这样的边被称为割边,即桥. 在一张图中求出割点或 ...

  9. pytest封神之路第六步 断言技巧

    pytest的断言把Python语言简洁的优点发挥的淋漓尽致,因为它用的就是Python的标准断言assert. assert基础 assert用法 assert_stmt ::= "ass ...

  10. 实践案例丨利用小熊派开发板获取土壤湿度传感器的ADC值

    摘要:一文带你用小熊派开发板动手做土壤湿度传感器. 一.实验准备 1.实验环境 一块stm32开发板(推荐使用小熊派),以及数据线 已经安装STM32CubeMX 已经安装KeilMDK,并导入stm ...