问题标签 [aws-mediastore]

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 投票
32 回答
418200 浏览

android - 从 mediastore 的 URI 获取文件名和路径

onActivityResult从 mediastore 图像选择返回,我可以使用以下命令获取图像的 URI:

将其转换为字符串会给出:

或者到一个路径给出:

但是我似乎找不到将其转换为绝对路径的方法,因为我想将图像加载到位图中而不必将其复制到某处。我知道这可以使用 URI 和内容解析器来完成,但这似乎在重新启动手机时中断,我想MediaStore在重新启动之间不会保持其编号相同。

0 投票
3 回答
2272 浏览

amazon-web-services - AWS S3 与 Elemental MediaStore

这更像是一个哲学问题:

对于简单的视频应用程序,最好选择哪种 AWS 服务,S3 还是 Elemental MediaStore?

在这一点上,一个会比另一个更好。

问题主要与性能有关,因为我知道 sdk 中存在不同的可能性。

背景 我正在为我的公司制作一个视频网站,该网站将用于简单的教学视频(如何在不同应用程序中做事的屏幕录像)。使用 iMovie 制作的视频 er mp4 视频大约需要 30 秒到 1 分钟。

在我的网站上,我看不到视频的性能差异。如果视频是 4k 1 小时长,我会看到不同吗?

我喜欢使用 MediaStore 仅仅是因为它似乎更适合视频,但有什么区别吗?

0 投票
1 回答
356 浏览

python - 将对象从 AWS S3 移动到 MediaStore

作为我们系统之前版本的遗留物,我在 AWS S3 存储桶上有大约 1 TB 的旧视频文件。现在我们决定迁移到 AWS 媒体服务,所有这些文件都应该移动到 MediaStore 以实现访问统一。

问:有没有办法以编程方式将数据直接从 S3 移动到 MediaStore?

在阅读了这些服务的 AWS API 文档后,我发现最好的解决方案是在中间 EC2 实例上运行自定义 Python 脚本并通过它传递数据。

此外,基于定价、数据组织和文档中的一些部分,我有一个假设,即 MediaStore 构建在 S3 之上。这就是为什么我希望找到一种更原生的方式来在它们之间移动数据。

0 投票
2 回答
370 浏览

python - 使用 Python 3 将文件 POST 到 AWS Mediastore,无需开发工具包,无需 CLI

我想使用 Python 和 Signature v4 将 mp4 文件发布到 AWS MediaStore。我正在尝试使用PutObjectMediaStore 中的操作。对于这项工作,我不能使用 SDK 或 CLI。

我可以在没有 SDK 或 CLI 的情况下使用 Python 向 MediaStore 发出 GET 请求,但是关于 POST 请求,我不明白应该如何处理有效负载。我收到以下错误:

不工作的邮政编码

从文档:

工作 GET 代码

任何帮助将不胜感激。

编辑

x-amz-content-sha256从 GET 请求中删除了标头,该请求仍在工作。我尝试对 POST 请求做同样的事情,但没有成功。

0 投票
0 回答
39 浏览

amazon-web-services - 没有在 MediaPackage 中创建清单,从 AWS 控制台工作

刚刚开始使用 AWS,首先使用 AWS Web 界面开始学习。执行使用 MediaLive 和 MediaPackage 创建实时提要的培训模块。在 MediaPackage 中,我创建了一个通道,然后创建了一个端点(清单名称仍然是默认的“索引”)。在培训模块中,清单是自动创建的。当我这样做时,没有创建清单,似乎也没有任何方法可以创建清单。正如我所说,刚刚开始,但当文档与用户体验不一致时感到沮丧。我在做什么或不做什么愚蠢的事情?

0 投票
1 回答
431 浏览

amazon-web-services - 如何在 MediaLive 和 MediaStore 上实现低延迟

我正在使用 MediaLive 和 MediaStore 流式传输面临 18 秒延迟的实时内容,需要帮助。

使用以下配置

MediaLive - 输入详情

输入类型 -> RTMP(推送)

输入目标通道类别-> 标准

网络模式 -> PUBLIC

媒体直播频道

一般输入设置

源端行为:继续

输入过滤器:自动

过滤强度:1

去块过滤器:禁用

降噪过滤器:禁用

SMPTE-2038 数据首选项:忽略

通道和输入详细信息

频道模板:HTTP 直播

频道等级:标准

输入规格:输入编解码器(VAC)、输入分辨率(HD)、最大输入比特率(MAX_20_MBPC)

输出组

HLS 组目标 A:mediastoressl://----------------.data.mediastore.us-east-1.amazonaws.com/path/main

HLS 组目标 A:mediastoressl://----------------.data.mediastore.us-east-1.amazonaws.com/path/main

HLS 设置

CDN设置:hls基本推送

连接重试间隔:30

重试次数:5

文件缓存持续时间:300

重启延迟:5

输入丢失操作:EMIT_OUTPUT

地点

目录结构:SINGLE_DIRECTORY

每个子目录的段数:10000

清单和段

输出选择:MANIFESTS_AND_SEGMENTS

模式:直播

TS 文件模式:SEGMENTED_FILES

流 Inf 分辨率:包括

清单持续时间格式:FLOATING_POINT

段长:1

段数:3

保留段:3

最小段长度:---

分割模式:USE_SEGMENT_DURATION

仅 I-Frame 播放列表:已禁用

节目日期时间:包括

节目日期时间段:600

客户端缓存:已启用

时间戳增量毫秒:---

编解码器规范:RFC_4281

清单压缩:无

冗余清单:已禁用

DRM 在清单中包含 IV - 已包含

IV 来源:FOLLOWS_SEGMENT_NUMBER

我正在使用https://obsproject.com/download OBS Player 输入流和 VLC 输出流 m3u8

0 投票
1 回答
172 浏览

amazon-web-services - 建议:设置允许用户从设备创建 rtmp 推送端点的流服务

目前,我正在将视频、音频或两者都流式传输到 EC2 实例。我想以最具成本效益和可扩展的方式做到这一点。该服务的工作方式是任何设备都能够发布到 nginx ec2 实例。因此,从电话上说,我可以发布到 xxxx:6000/live/stream1。从同一设备,我可以发布到 xxxx:6000/live/stream2。这些 rtmp 推送端点都不是预定义的服务器端。它们是从设备动态创建的。是否有 AWS 服务可以动态提供此类功能?这不应该要求用户登录任何 AWS 服务来满足我的需要。我已经检查了 AWS Live Streaming with Elemental Media Store 以及 Kinises。媒体商店似乎需要先通过 AWS 设置 RTMP 推送端点,然后设备才能发布流。

我不需要 Kinesis 的用户帐户创建,因为我使用不同的服务来管理用户。我只是在寻找从设备创建 rtmp 推送端点并在创建时发布该端点的能力。

任何帮助表示赞赏。

谢谢。

谢谢。

0 投票
1 回答
442 浏览

amazon-web-services - 从 VLC 看不到来自 AWS MediaLive 服务的实时流

我正在尝试构建一个自定义的实时流媒体服务,如此处所述:

https://aws.amazon.com/solutions/implementations/live-streaming-on-aws/

我为“使用 MediaStore 在 AWS 上直播”使用了预先提供的 cloudformation 模板,该模板为我预置了所有相关资源。接下来,我想测试我的自定义流媒体。

我使用 OBS Studio 将我的网络摄像头输出流式传输到在 AWS cloudformation 配置期间创建的 MediaLivePushEndpoint。OBS 建议它已经将网络摄像头流传输到 rtmp 端点到 AWS MediaLive RTMP 端点。

现在,为了确认我是否可以观看流,当我尝试将 VLC 播放器中的 Input Nerwork Stream 设置为为我创建的云端端点时(如下所示:https ://aksj2arbacadabra.cloudfront.net/stream/ index.m3u8 ),VLC 无法获取流并且失败,并在日志中显示以下错误消息。我错过了什么?谢谢!


  • 根据 Zach 的回复更新:

以下是我在使用 MediaLive 为实时流媒体部署 cloudformation 模板时使用的参数(请注意,我使用的是 RTMP_PUSH):

在此处输入图像描述

当我进入我的频道时,我正在使用MediaLive而不是这样,我看到了这个:MediaPackageMediaLive

在此处输入图像描述

请注意,它说它找不到“流 [流]”,但我确认我添加到 OBS 的 rtmp 端点正是我从我的 cloudformation 堆栈中作为输出创建的端点:

在此处输入图像描述

最后,当我尝试去媒体商店查看是否有任何对象时,它完全是空的:

在此处输入图像描述

0 投票
1 回答
213 浏览

amazon-web-services - AWS Elemental Media Store 凭证不可用

因此,我正在创建一个 nodejs 应用程序,它使用 AWS Media Live 和 AWS Media Store 来直播音频和视频。

我正确创建了媒体直播频道、输入和媒体存储容器。我用于通道的角色具有 MediaStoreFullAcces 权限,因此它可以读取和写入容器。到目前为止,一切都很好。

如果我使用 obs studio 启动流,使用 RTMP 推送 url 和流键,一切似乎都工作正常。但是,如果我查看频道的日志,它会显示这个错误,说它无法写入媒体存储:

它也不会在容器中创建 .m3u8 文件。

我的疑问是,如果不是角色的权限,EMS 凭据是什么?

我在 AWS 控制台中找不到任何地方来添加凭据或更改安全性。有谁能帮助我吗?

0 投票
1 回答
210 浏览

amazon-web-services - 直播结束后获取 AWS MediaLive 视频时长

我正在使用 AWS MediaLive 和 MediaStore 进行直播,我正在寻找一种在直播结束后获取最终视频持续时间的方法。

我正在使用 HLS 输出组类型并将其归档到 S3。我能够做到这一点的一种方法是获取包含所有段的 m3u8 文件,并对所有段的持续时间求和。

有没有更好的办法?也许通过使用 MediaPackage ?

谢谢!