本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
在作业设置中使用变量
您可以在作业设置中使用变量(也称为格式标识符) 。格式标识符是可以放在作业设置中的值,这些值在输出中的解析方式不同,具体取决于输入文件或作业的特征。它们在您打算复制和重复使用的输出预设、作业模板和作业中特别有用。
例如,您可以在目标设置中使用日期格式标识符 $d$
。如果您希望按作业的开始日期和时间组织输出,则可为 Destination (目标) 输入 s3://amzn-s3-demo-bucket1/$d$/
。对于在 2020 年 6 月 4 日开始的作业,该服务将在 s3://amzn-s3-demo-bucket1/20200604/
中创建您的输出。
有关可用格式标识符的列表以及如何使用这些标识符的示例,请参阅 设置变量与示例列表。
有关在流输出中功能不同的格式标识符的信息,请参阅 将设置变量与流式处理输出结合使用。
设置变量与示例列表
下表提供了有关您可以在 AWS Elemental MediaConvert 作业中使用的每种格式标识符的信息。有关在流输出中功能不同的格式标识符的信息,请参阅 将设置变量与流式处理输出结合使用。
格式标识符 | 要放在作业设置中的值 | 兼容的作业设置 | 说明和示例 |
---|---|---|---|
日期和时间 |
|
目标位置 名称修饰符 段修饰符 |
UTC作业开始时间的日期和时间。 格式:YYYYMMDDTHHMMSS 示例:对于在 2020 年 6 月 4 日下午 3:05:28 开始的作业, |
Date |
|
目标位置 名称修饰符 段修饰符 |
UTC作业开始时间的日期。 格式:YYYYMMDD 示例:对于在 2020 年 6 月 4 日开始的作业, |
时间 |
|
目标位置 名称修饰符 段修饰符 |
UTC作业的开始时间。 格式:HHMMSS 示例:对于在下午 3:05:28 开始的作业, |
视频比特率 |
|
名称修饰符 段修饰符 |
输出的视频比特率(以千位为单位)。对于QVBR输出,该服务使用视频最大比特率,单位为千比特。 示例:如果您将 Encoding settings (编码设置)、Video (视频)、Bitrate (bits/s) (比特率(位/秒)) 设置为 |
音频比特率 |
|
名称修饰符 段修饰符 |
输出中所有音频比特率的总计(以千位为单位)。 示例:如果您有一个带单个音频选项卡的输出,并且您将 Encoding settings (编码设置) 、Audio 1 (音频 1) 、Bitrate (kbit/s) (比特率(千位/秒)) 设置为 |
容器比特率 |
|
名称修饰符 段修饰符 |
输出的组合音频和视频比特率(以千位为单位)。 示例:您有一个带 Video (视频) 设置选项卡和 Audio 1 (音频 1) 设置选项卡的输出。如果您将 Encoding settings (编码设置)、Video (视频)、Bitrate (bits/s) (比特率(位/秒)) 设置为 |
视频帧宽度 |
|
名称修饰符 段修饰符 |
帧宽度或水平分辨率(以像素为单位)。 示例:如果您将 Encoding settings (编码设置)、Video (视频)、Resolution (w x h) (分辨率(宽 x 高)) 设置为 |
视频帧高度 |
|
名称修饰符 段修饰符 |
帧高度或垂直分辨率(以像素为单位)。 示例:如果您将 Encoding settings (编码设置)、Video (视频)、Resolution (w x h) (分辨率(宽 x 高)) 设置为 |
Framerate |
|
名称修饰符 段修饰符 |
帧速率(以每秒帧数为单位),截断到最接近的整数。 示例:如果您的帧速率为 |
输入文件名 |
|
目标位置 名称修饰符 段修饰符 |
输入文件的名称(不带文件扩展名)。对于具有多个输入的作业,这是作业中指定的第一个文件。 示例:如果作业的 Input 1 (输入 1) 为 |
输出容器文件扩展名 |
|
名称修饰符 段修饰符 |
因输出组而异。对于 File group (文件组) 输出,这是输出容器文件的扩展名。对于其他输出组,这是清单的扩展名。 文件组示例:如果您为输出设置选择 MPEG2-TS,则容器将 HLS群组示例:如果您的输出组是HLS,则 |
$ |
|
名称修饰符 段修饰符 |
转义的 例如: 假设您提供以下值:
您的输出文件名和路径将解析为 |
将设置变量与流式处理输出结合使用
作业设置中的变量(也称为格式标识符)对于 Apple HLS 和DASHISO输出组中的输出具有不同的功能。差异如下:
适用于 Apple HLS 输出
当您在分段修饰符设置中使用日期和时间格式标识符($dt$
、$t$
、$d$
)时,这些格式标识符会解析为每个分段的完成时间,而不是作业的开始时间。
注意
对于使用加速转码的作业,各个段可能将同时完成。这意味着日期和时间格式标识符并不总是解析为唯一值。
对于DASHISO输出
您可以在 Name modifier (名称标识符) 设置中使用两个额外的格式标识符。除了输出文件名之外,它们还会影响DASH清单。以下是标识符:
- $Number$
-
在您的输出文件名中,
$Number$
将解析为一系列数字(从 1 开始递增)。这将替换段文件名中默认的九位段编号。例如:-
如果为名称修饰符指定
video_$Number$
,则该服务会创建名为video_1.mp4
、video_2.mp4
等的分段文件。 -
如果只为名称修饰符指定
video_
,则该服务会创建名为video_000000001.mp4
、video_000000002.mp4
等的分段文件。
在你的DASH清单中,AWSElemental MediaConvert 包含
duration
SegmentTemplate
元素startNumber
内部,如下所示:<SegmentTemplate timescale="90000" media="main_video_$Number$.mp4" initialization="main_video_$Number$init.mp4" duration="3375000"/>
注意
如果您在一个输出中使用
$Number$
格式标识符,则也必须在输出组的所有其他输出中使用该标识符。 -
- $Bandwidth$
-
在您的输出文件名中,
$Bandwidth$
将解析为输出中 Video Bitrate (视频比特率) 的值以及 Audio Bitrate (音频比特率) 的值。无论您是否包含此格式标识符,该服务都会在段文件名中使用九位段编号。例如,假设您指定以下值:
-
Video (视频) Bitrate (bits/s) (比特率(位/秒)):
50000000
-
Audio (音频) Bitrate (kbits/s) ( 比特率(千位/秒)):
96.0
(96000 位/秒) -
Name modifier (名称修饰符):
video_$Bandwidth$
$Bandwidth$ 的值解析为 50096000。该服务将创建段文件,这些文件名为
video_50096000_000000001.mp4
、
,以此类推。video_50096000_000000002.mp4
在清单中,AWSElemental MediaConvert 包含元素
duration
并在SegmentTemplate
元素startNumber
内部,如下所示:<SegmentTemplate timescale="90000" media="main_video_$Bandwidth$.mp4" initialization="main_video_$Bandwidth$init.mp4" duration="3375000"/>
。 -
- $Time$
-
在您的输出文件名中,
$Time$
将解析为段的持续时间(以毫秒为单位)。在包含此格式标识符时,该服务不会在段文件名中使用默认的九位段编号。例如,如果您为名称修饰符指定
video180__$Time$
,则该服务会创建名为video180__345600.mp4
、video180__331680.mp4
等的分段文件。在这些示例中,段持续时间为 345600 毫秒和 331680 毫秒。在清单中,AWSElemental MediaConvert 包含
SegmentTemplate
元素SegmentTimeline
内部,如下所示:<Representation id="5" width="320" height="180" bandwidth="200000" codecs="avc1.4d400c"> <SegmentTemplate media="video180_$Time$.mp4" initialization="videovideo180_init.mp4"> <SegmentTimeline> <S t="0" d="345600" r="2"/> <S t="1036800" d="316800"/> </SegmentTimeline> </SegmentTemplate> </Representation>
注意
如果您在一个输出中使用
$Time$
格式标识符,则也必须在输出组的所有其他输出中使用该标识符。
指定最小位数
对于返回数字的格式标识符,您可以指定格式标识符将解析为的最小位数。执行此操作时,该服务会在任何返回较少位数的值之前添加填充零。
使用以下语法来指定位数:%0[number of
digits]
。将此值放在格式标识符的最后的 $
的前面。
例如,假设您的视频帧高度为 720,并且您希望指定至少四位数,以便它在您的文件名中显示为 0720
。要执行此操作,请使用以下格式标识符:$h%04$
。
注意
值太大,无法用指定的位数表示,请使用更多的位数进行解析。