温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

亚马逊AWS之Transcoder

发布时间:2020-07-23 04:06:37 来源:网络 阅读:1482 作者:yuanhuan_2005 栏目:软件技术

1 Transcoder简介

1.1 什么是亚马逊Transcoder

Amazon Elastic Transcoder 在云环境中运行视频转码。它是一种经济实惠且具有高可扩展性和易用性的视频转换方法,开发人员和企业可以用它来将视频文件从源格式转换(或称为“转码”)到其他版本,以便在智能电话、平板电脑和 PC 等设备上播放。

1.2 Transcoder有哪些功能

按照传统做法,客户进行转码时会面临三大复杂性。首先,客户需要购买并管理转码软件,而这可能非常昂贵,且其维护和配置也是难题。其次,针对各种不同设备生产转码输出,通常会涉及到试验和纠错以找到合适的转码设置,以便为最终用户提供能够正常播放且效果良好的输出视频。这种试验和纠错过程会浪费计算资源。最后,传统的编码解决方案无法根据客户的业务需要进行伸缩。另外,利用传统解决方案,客户还需要提前预测需要调配多少容量,而这无可避免地意味着资金浪费(如果他们调配的容量过多并且存在容量闲置的情况)或者业务延误(如果他们调配的容量太小,需要等待编码作业运行完成)。

利用 Amazon Elastic Transcoder,开发人员只需使用基于 Web 的控制台或 API 来创建转码作业以指定输入文件、转码设置和输出文件即可。这样可以免除三种复杂的工作:首先,不需要购买、配置和管理基础转码软件。其次,Amazon Elastic Transcoder 拥有适用于各种设备的预定义预置模版,从而让客户免于通过试验和纠错来为不同设备寻找正确设置。系统还支持自定义预置模版,允许客户根据具体转码要求(如特殊的大小或比特率需要)调整输出。最后,Amazon Elastic Transcoder 还可以根据客户的工作负载自动进行扩展和收缩,从而消除了容量浪费和长时间等待作业完成的问题。它还使客户能够并行处理多个作业并使用名为转码管道的功能组织转码工作流。利用 Amazon Elastic Transcoder 的管道功能,客户可以针对各种场景设置管道,确保在需要的时间、以所需的方式完成文件转码,从而让他们能够针对尖刻的工作负载高效进行无缝扩展。例如,新闻组织可能希望拥有专用于即时新闻的“高优先级”转码管道,或者用户生成内容网站可能希望拥有单独的管道,以便将低、中、高分辨率内容输出到不同的目标设备。

Amazon Elastic Transcoder 是利用其他 Amazon Web Services 的可扩展性和灵活性构建的。它使用 Amazon Elastic Compute Cloud (Amazon EC2) 运行转码作业。Amazon EC2 的规模让您能够快速可靠地完成大型转码作业。Amazon Elastic Transcoder 是转为处理存储在 Amazon Simple Storage Service (Amazon S3) 中的内容而构建的,因此您可以经济持久地存储大型或小型媒体库。您甚至可以通过 Amazon Simple Notification Service (Amazon SNS) 获得有关转码作业状态的信息。

Amazon Elastic Transcoder 支持 AWS 管理控制台和服务 API,因此您可以将转码功能集成到您自己的应用程序和服务中。

要使用 Amazon Elastic Transcoder,您需要执行以下操作:

亚马逊AWS之Transcoder 创建转码管道以指定输入 Amazon S3 存储段、输出 Amazon S3 存储段和该项服务访问您的文件要用的 AWS Identity and Access Management (IAM) 角色。

亚马逊AWS之Transcoder 创建转码作业,方法是指定输入文件、输出文件以及要用的转码预置模版(您可以从一组预定义的转码预置模版中选择,例如 720p,或创建您自己的自定义转码预置模版)。您可以随意指定缩略图和作业的具体转码参数,如帧速和分辨率。

当您在 Amazon Elastic Transcoder 运行转码作业时,您可以:

亚马逊AWS之Transcoder 通过通知功能自动接收转码作业状态的信息。

亚马逊AWS之Transcoder 查询转码作业的状态。

亚马逊AWS之Transcoder 通过停止、启动或取消操作管理转码作业。

1.3 Transcoder的新功能

Amazon Elastic Transcoder 新增了七个增强功能,这些功能可让您更轻松地进行编码并将您的内容传输到更广泛的视频设备和播放器中。这些新功能包含在我们的标准定价中,并能通过 Amazon Elastic Transcoder API 和管理控制台访问。

1.3.1 HTTP Live Streaming (HLS) 支持

可使您创建能在兼容的 Apple iOS、Android 设备、机顶盒和 Web 浏览器播放器中播放的视频。借助 HLS 支持,您现在可以在没有流媒体服务器的情况下轻松交付您的内容,只需将您的用户指向 Amazon S3 或 Amazon CloudFront 中的视频。

1.3.2 WebM 支持

可让您将内容转码成 VP8 视频和 Vorbis 音频,以在本来不支持 H.264 和 AAC 的 Firefox 等浏览器中播放。

1.3.3 MPEG2 TS 输出容器支持

可使您输出常用于广播系统的输出传输流。

1.3.4 每个作业的多个输出

可以轻松为相同内容创建不同的呈现。您现在可以创建一个作业来生成多个呈现,而不是为每个呈现创建一个转码作业。例如,您可以利用一个作业为同一个视频创建 H.264、HLS 和 WebM 版本以传输到多个平台。

1.3.5 自动的视频比特率优化

可以免除为您的视频内容选择适当比特率的猜想工作。利用此功能,Amazon Elastic Transcoder 将会自动调整比特率,从而优化转码输出的视觉质量。

1.3.6 增强的高宽比大小和策略

可使其更轻松地将您的内容大小调整到适合您的输出帧。您可以在转码预置模版中使用这些新设置,以精确控制扩展、裁切、修边和伸展选项,从而获取您期待的输出,无论输入的格式化方式是什么。

1.3.7 集成 Amazon S3 权限和存储选项

可使您在 Amazon Elastic Transcoder 内设置您的输出文件的权限。然后,系统会通过已具有的适当权限创建文件,使其做好交付给终端用户的准备。

1.4 为什么选择亚马逊Transcoder

Amazon Elastic Transcoder 可透明、自动地为您管理转码过程中的各个方面。无需管理软件、扩展硬件、调整性能或管理转码基础设施。您只需创建转码“作业”,即指定源视频位置以及以何种方式转换即可。Amazon Elastic Transcoder 还提供了常见格式的转码预置模版,这意味着,对于常见设备,您不必猜测哪种设置的效果更好。所有这些功能都能通过服务 API 和 AWS 管理控制台进行使用。

与其他 Amazon Web Services 一样,使用 Amazon Elastic Transcoder 无需签合同或承诺月用量 – 您只需按转码耗时(以分钟计)和转码内容的分辨率付费。

1.5 Transcoder的一些基本概念
1.5.1 Jobs

Jobs负责做转码工作。每个Job可以将一个文件转换成最多30个不同格式的文件。例如:如果你想将一个媒体文件转换为6种不同格式的文件,那么可以只用定义一个job来完成这些转换工作。

1.5.2 Pipeline

Pipelines是指管理Jobs的队列。定义job的时候,需要指定将该job添加到哪个pipeline。亚马逊Transcoder将会按照jobs在pipeline中的添加顺序来执行。如果配置job的时候定义了不止一个格式转换,那么Transcoder也将会按照顺序创建不同格式的输出文件。

一种常见的配置是这样的,一般创建2个pipelines,一个用于常规优先级的jobs,另一个用于高优先级的jobs。大部分的jobs都添加到常规优先级的pipeline中,只有当需要马上对一个文件进行转码的时候才将jobs添加到高优先级的pipeline中去。

当初建新job的时候,如果pipeline里面已经由jobs存在的话,Transcoder将会将最新的job进行排序,并且当pipeline所需的资源全部可用的时候就会启动执行这个job。如果pipeline正在使用所有的资源,Transcoder将会在一个正在运行的job结束之后启动下一个job。

一个pipeline可以同时执行多个jobs,并且每一个job的完成时间也是不同的,这取决于要转换的文件大小以及job的规格。

1.5.3 Preset

Presets是一些模板,包含了将一个媒体文件从一个格式转换到另一个格式的大部分配置。亚马逊Transcoder提供了两类presets:一类是Transcoder预定义的一些presets,另外一类就是用户可以自定义的presets。

1.5.4 Notifications

Notifications可以让您有选择的配置亚马逊Transcoder。并且亚马逊Simple Notification Service可以让您查看jobs的状态:job是什么事时候启动的、job是什么时候完成的、Transcoder在执行过程中是否引起了警告或者错误。

在创建pipeline的时候就会对Notification进行配置。

1.6 Transcoder的使用限制

亚马逊Transcoder对Jobs、Pipelines、presets和subject有如下的限制:

1. 最大Pipelines个数:每个亚马逊账户最多创建4个pipelines;

2. 最大Jobs个数:每个Pipeline 100000个;

3. 最大输出个数:每个job 30个;

4. Presets:每个亚马逊账户最多创建50个用户自定义的presets。说明:亚马逊Transcoder提供了一些预定义的presets,这些presets不在此限制之内。

2 Transcoder使用

2.1 Pipeline操作
2.1.1 创建pipeline

进入亚马逊Transcoder Console中的Pipelines页面,点击“Create New Pipeline”按钮:

亚马逊AWS之Transcoder

之后进入pipeline定义页面在该页面需要填写pipeline的一些基本配置信息:pipeline的名字、输入Bucket名、IAM角色、转码后的文件及播放列表存放的bucket、缩略图存放的bucket,以及可选的Notifications配置,配置完成之后,点击“Create Pipeline”按钮即可创建一个新的Pipeline。

亚马逊AWS之Transcoder

亚马逊AWS之Transcoder

亚马逊AWS之Transcoder

2.1.2 操作pipeline

在Pipelines页面还可以对pipelines进行一些操作:查看列表、刷新、编辑、暂停、激活、删除等。

亚马逊AWS之Transcoder

2.2 Jobs操作
2.2.1 创建Job

进入Transcoder的Jobs页面,点击“Create New Job”按钮:

亚马逊AWS之Transcoder

接下来,就可以按照提示创建一个新的Job了。

亚马逊AWS之Transcoder

亚马逊AWS之Transcoder

亚马逊AWS之Transcoder

2.2.2 查找Jobs

进入Transcoder的Jobs页面,在Search页面中可以选择不同的条件来查询Jobs。

亚马逊AWS之Transcoder

2.3 Presets操作
2.3.1 创建Preset

进入Transcoder的Presets页面,点击“Create New Preset”按钮:

亚马逊AWS之Transcoder

接下来,按照提示填写基本信息就可以创建一个自定义的preset了。

亚马逊AWS之Transcoder

亚马逊AWS之Transcoder

亚马逊AWS之Transcoder

亚马逊AWS之Transcoder

2.3.2 操作Preset

在Transcoder的Presets页面,还可以对presets进行一下基本操作:查看列表、刷新、拷贝、删除等。

亚马逊AWS之Transcoder

3 参考资料

亚马逊AWS之Transcoder 亚马逊Transcoder开发者指南《elastictranscoder-dg.pdf》;

亚马逊AWS之Transcoder http:// aws.amazon.com/elastictranscoder;

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI