问题标签 [aws-elastictranscoder]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1907 浏览

h.264 - 为什么 H.264、MPEG-4 HE AAC 在 iphoneXS/Max 上停止工作?

关于新硬件的问题

我一直在疯狂地调查,并没有找到任何线索说明我的 H.264 编码视频为何停止在这些新设备上运行。

上下文:直接从 ios 设备,原件被发送到 s3,aws 弹性转码器然后将原件编码成更压缩的 H.264 预设。截至昨天,一位同事报告所有视频都是“黑色”的,现在由于这些设备上的交付正在完成,我已经得到确认。无法在模拟器上重现此问题。未播放的编码视频,我在下面列出了 exif 数据。

是否有任何人在编解码器领域具有专业知识,您能否权衡为什么当 iphoneX 及以下设备没有问题时新设备无法解码此 H.264 视频?

0 投票
0 回答
89 浏览

aws-elastictranscoder - 是否可以拍摄 2 个单独的视频并将它们并排放在 AWS 弹性转码器中

我想创建一个应用程序,乐队成员可以在其中协作和录制个人表演,然后我想自动将它们全部放在一个视频中。如果解决了,我将不得不弄清楚如何将它们同步一点,AWS弹性转码器是否可以将视频组合在一起并排播放,或者将多个视频组合到一个屏幕中(如井字游戏板)?

0 投票
0 回答
86 浏览

java - Amazon Elastic Transcoder 无法使用 MD5=wJForaVS6T5wok/80E4RYg== 解密加密密钥

我在使用 HlsContentProtection 时收到此错误

1.这就是我创建加密密钥的方式##

2.这就是我生成 KeyMD5 的方式

3.现在我正在创建 HLSContentProtection 如下

我收到此错误

4018 533bc5aa-ed4d-4014-8a0a-083da9890cef:Amazon Elastic Transcoder 无法使用 MD5=wJForaVS6T5wok/80E4RYg== 解密加密密钥。

0 投票
1 回答
155 浏览

javascript - 在网站上使用 AWS Elastic Transcoder 时访问被拒绝例外

尝试在我的测试站点上使用 AWS Elastic Transcoder 时出现 403 错误,我似乎无法弄清楚问题出在哪里。我检查了我的 IAM 策略和身份池等,但无济于事。

错误:

GET https://elastictranscoder.us-east-1.amazonaws.com/2012-09-25/pipelines/xxxxxxxxxxxxx-xxxxxx 403(禁止) index.html:xxx AccessDeniedException:用户:arn:aws:sts::xxxxxxxxxxxx:假定角色/Cognito_Unauth_Role/CognitoIdentityCredentials 无权执行:elastictranscoder:CreateJob on resource:arn:aws:elastictranscoder:us-east-1:xxxxxxxxxxxx:pipeline/xxxxxxxxxxxxx-xxxxxx

0 投票
0 回答
381 浏览

amazon-web-services - AWS弹性编码器HLS流云端跨域问题

我正在使用云端处理 AWS HLS 媒体流。在弹性转码器的帮助下,内容根据要求进行了转码。我已经设置了云端以访问 s3 存储桶中存在的内容。每当我尝试从 JWPlayer/online 等 HLS 播放器访问视频时,都会出现以下错误。

无法加载 m3u8 跨域访问被拒绝。

在 JW 播放器上,我遇到了错误。

无法播放此视频文件。(错误代码:232011)

我的 S3 存储桶 cors 配置文件是

自最近几天以来一直在努力解决此问题。请帮助

0 投票
1 回答
313 浏览

amazon-elastic-transcoder - 在产生多个输出时提高 AWS Elastic Transcoder 中转码过程的速度?

我已经用 Elastic Transcoder 测试了一段时间。我目前一直在使用 Zencoder,并计划用 Elastic Transcoder 替换它。我有一个关于具有多个输出的转码时间的问题,我试图找到一种解决方案来减少转码时间,如果无论如何要实现这一点。

我上传了一个输入视频文件,它可以是任何格式和任何分辨率。我希望 Elastic Transcoder 对它们进行编码以产生两种输出格式,mp4 和 webm,一个请求的分辨率为 640x360。我为此定义了两个预设。

第一个用于 mp4 文件,如下所示:

webm的第二个,像这样:

在 Zencoder 中,mp4 和 webm 的编码过程同时开始。因此,例如:如果输入视频持续时间为 13 秒,那么对于两个输出 mp4 和 webm,编码过程大约需要 13 秒。

在 Aws Elastic Transcoder 中,此编码过程大约需要 26 秒的时间。我认为这是因为它不会同时编码两个输出。所以,这是一个问题。我需要减少这个时间。

我可以在 Elastic Transcoder 中配置它以同时处理两个输出吗?或者我是否需要同时发送两个请求以获得两种输出格式以减少转码时间?

0 投票
1 回答
241 浏览

amazon-s3 - 使用 AWS Javascript 开发工具包更新 AWS S3 视频/对象元数据

我在 S3 中的视频文件没有任何缓存控制标头,因此我的用户必须在每次刷新时重新加载/下载视频。我可以在 AWS 网站上手动更新缓存控制元数据,但我需要在我的节点服务器上以编程方式进行。

这是视频登陆页面示例的链接。这是没有缓存控制的视频截图。

视频网络请求截图

挑战是我不能在创建 signedUrl 或上传视频时简单地设置标题,因为我的最终视频来自 AWS Elastic Transcoder。用户将我前端的 .mov 文件上传到 AWS,AWS 会在后端启动 Elastic Transcoder 作业,将其转换为 .mp4。我找不到在 Elastic Transcoder 输出上设置缓存控制的方法,所以我假设我需要在转码器作业完成后使用单独的函数来更新对象元数据。

另外,我不是 100% 确定我什至需要采取这一步,我需要手动设置缓存控制吗?

0 投票
0 回答
433 浏览

amazon-web-services - AWS Elastic Transcoder / S3:在 HLSv4 中转换的视频仅在低互联网带宽上播放音频

TLDR:

  • 通过 aws-sdk (js) -> AWS Elastic Transcoder 以 HLSv4 格式将视频上传到 S3
  • 使用 4 个预设上传我的视频:video_only_low、video_only_mid、video_only_high、audio_only(Elastic Transcoder 中的 HLSv4 不支持包含视频和音频的预设)
  • 自动生成的 .m3u8 文件在我的 3 个视频流旁边有一个纯音频流,因此互联网速度较慢的用户只能在视频播放器中听到没有视频(黑屏)的音频
  • 我可以手动从 .m3u8 文件中删除仅音频流线,但我希望在没有此仅音频流的情况下自动生成 .m3u8 文件

-> 见最后的问题。

全文:

我使用 HLSv4 流式传输视频 + 音频,并使用 AWS Elastic Transcoder 和 S3 的 aws-sdk (js) (2.604.0) 将原始文件(例如 .mp4)转换为 HLSv4。我指定了 4 个 Elastic Transcoder 预设:video_low、video_mid、video_high 和一个用于每个视频使用的音频。对于 HLSv4,我无法为视频和音频生成一个预设,必须有一个或多个视频预设和一个音频预设。转码后,以下生成的 .m3u8 文件在 S3 输出存储中(在不同质量的视频/音频文件旁边):

(用随机引导替换引导)

我们的代码 + Elastic Transcoder 在过去几年中运行良好。自 2020 年初以来,我们的用户已经打开了很多票,他们有时只听到音频流而没有视频。因此,我们使用不同的互联网带宽测试了视频,当带宽不足以容纳低质量的视频时,我们可以重现该错误。

.m3u8 文件在上面文件的第二行中定义,这是每个视频都使用的 ID 为“audio-0”的音频。没关系,因此对于所有不同的视频质量,音频只存储一次。

.m3u8 文件在最后一行定义,仅音频是低带宽设备的流。所以我明白,互联网速度较慢的设备只能获得纯音频流。但我不希望我们的用户只流式传输没有视频的音频,他们应该看到一个加载图标,直到视频播放器缓冲到足够低的视频质量。所以为了测试,我删除了最后一行,所以视频播放器只有 video_low、-_mid 和 -_high 流可用,所以当我在慢速互联网上时,视频播放器会缓冲,直到它下载了第一段( 7 秒)的视频。

所以我可以从我们视频的所有 .m3u8 文件中删除纯音频流线来解决这个错误。但我不想每天更新所有新的 .m3u8 文件并删除生成文件的最后一行。

弹性转码作业的创建是通过 aws-sdk for javascript 实现的,并使用 CreateJobOutputs 对象以及有关新视频必须转码的预设的所有信息。

2个问题:

  • 我该怎么办,生成的 .m3u8 文件不包含纯音频流的最后一行?

  • 为什么我们的代码和视频流在过去几年运行良好,而自 2020 年初以来,我们的用户遇到了这个问题?我们每月更新 aws-sdk,但很长一段时间我都找不到任何更改和 Elastic Transcoder 的 aws-sdk 发行说明

0 投票
1 回答
79 浏览

amazon-web-services - AWS弹性转码器不添加水印文字

我试图加入 AWS 弹性转码器中的多个视频。一切都按预期工作。但我无法在每个视频中添加水文字。但是,我可以为所有视频添加水印标志。

我也在尝试使用 SCC 文件。那也行不通。

我的要求是,我需要为所有视频添加字幕。

Aws 弹性转码器是否为此提供了一个选项?

在此处输入图像描述

我需要像上图一样添加字幕。

提前致谢

0 投票
1 回答
145 浏览

amazon-web-services - 如何在 AWS Elastic transcoder CLI 中添加多个输入?

我正在尝试使用 AWS Elastic Transcoder CLI 拼接两个剪辑,但出现错误。

我的命令:aws elastictranscoder create-job --pipeline-id 158182938949-p2e73l --inputs Key=movie1.mp4,movie2.mp4 --outputs Key=complete-mov.mp4,PresetId=159474848914704-fupili,Watermarks=[{PresetWatermarkId=TopLeft,InputKey=Untitled-4png.png}]

我收到此错误:

参数验证失败:参数 Inputs[0].Key 的类型无效,值:['MEYD-001.mp4','intro.mp4'],类型:<class 'list'>,有效类型:<class 'str' >

如何在 AWS Elastic transcoder CLI 中添加多个输入[视频]?AWS 文档缺少这一点。

此致。