问题标签 [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.
android - 从 mediastore 的 URI 获取文件名和路径
我onActivityResult
从 mediastore 图像选择返回,我可以使用以下命令获取图像的 URI:
将其转换为字符串会给出:
或者到一个路径给出:
但是我似乎找不到将其转换为绝对路径的方法,因为我想将图像加载到位图中而不必将其复制到某处。我知道这可以使用 URI 和内容解析器来完成,但这似乎在重新启动手机时中断,我想MediaStore
在重新启动之间不会保持其编号相同。
amazon-web-services - AWS S3 与 Elemental MediaStore
这更像是一个哲学问题:
对于简单的视频应用程序,最好选择哪种 AWS 服务,S3 还是 Elemental MediaStore?
和
在这一点上,一个会比另一个更好。
问题主要与性能有关,因为我知道 sdk 中存在不同的可能性。
背景 我正在为我的公司制作一个视频网站,该网站将用于简单的教学视频(如何在不同应用程序中做事的屏幕录像)。使用 iMovie 制作的视频 er mp4 视频大约需要 30 秒到 1 分钟。
在我的网站上,我看不到视频的性能差异。如果视频是 4k 1 小时长,我会看到不同吗?
我喜欢使用 MediaStore 仅仅是因为它似乎更适合视频,但有什么区别吗?
python - 将对象从 AWS S3 移动到 MediaStore
作为我们系统之前版本的遗留物,我在 AWS S3 存储桶上有大约 1 TB 的旧视频文件。现在我们决定迁移到 AWS 媒体服务,所有这些文件都应该移动到 MediaStore 以实现访问统一。
问:有没有办法以编程方式将数据直接从 S3 移动到 MediaStore?
在阅读了这些服务的 AWS API 文档后,我发现最好的解决方案是在中间 EC2 实例上运行自定义 Python 脚本并通过它传递数据。
此外,基于定价、数据组织和文档中的一些部分,我有一个假设,即 MediaStore 构建在 S3 之上。这就是为什么我希望找到一种更原生的方式来在它们之间移动数据。
python - 使用 Python 3 将文件 POST 到 AWS Mediastore,无需开发工具包,无需 CLI
我想使用 Python 和 Signature v4 将 mp4 文件发布到 AWS MediaStore。我正在尝试使用PutObject
MediaStore 中的操作。对于这项工作,我不能使用 SDK 或 CLI。
我可以在没有 SDK 或 CLI 的情况下使用 Python 向 MediaStore 发出 GET 请求,但是关于 POST 请求,我不明白应该如何处理有效负载。我收到以下错误:
不工作的邮政编码
从文档:
工作 GET 代码
任何帮助将不胜感激。
编辑
我x-amz-content-sha256
从 GET 请求中删除了标头,该请求仍在工作。我尝试对 POST 请求做同样的事情,但没有成功。
amazon-web-services - 没有在 MediaPackage 中创建清单,从 AWS 控制台工作
刚刚开始使用 AWS,首先使用 AWS Web 界面开始学习。执行使用 MediaLive 和 MediaPackage 创建实时提要的培训模块。在 MediaPackage 中,我创建了一个通道,然后创建了一个端点(清单名称仍然是默认的“索引”)。在培训模块中,清单是自动创建的。当我这样做时,没有创建清单,似乎也没有任何方法可以创建清单。正如我所说,刚刚开始,但当文档与用户体验不一致时感到沮丧。我在做什么或不做什么愚蠢的事情?
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
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 推送端点并在创建时发布该端点的能力。
任何帮助表示赞赏。
谢谢。
谢谢。
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
而不是这样,我看到了这个:MediaPackage
MediaLive
请注意,它说它找不到“流 [流]”,但我确认我添加到 OBS 的 rtmp 端点正是我从我的 cloudformation 堆栈中作为输出创建的端点:
最后,当我尝试去媒体商店查看是否有任何对象时,它完全是空的:
amazon-web-services - AWS Elemental Media Store 凭证不可用
因此,我正在创建一个 nodejs 应用程序,它使用 AWS Media Live 和 AWS Media Store 来直播音频和视频。
我正确创建了媒体直播频道、输入和媒体存储容器。我用于通道的角色具有 MediaStoreFullAcces 权限,因此它可以读取和写入容器。到目前为止,一切都很好。
如果我使用 obs studio 启动流,使用 RTMP 推送 url 和流键,一切似乎都工作正常。但是,如果我查看频道的日志,它会显示这个错误,说它无法写入媒体存储:
它也不会在容器中创建 .m3u8 文件。
我的疑问是,如果不是角色的权限,EMS 凭据是什么?
我在 AWS 控制台中找不到任何地方来添加凭据或更改安全性。有谁能帮助我吗?
amazon-web-services - 直播结束后获取 AWS MediaLive 视频时长
我正在使用 AWS MediaLive 和 MediaStore 进行直播,我正在寻找一种在直播结束后获取最终视频持续时间的方法。
我正在使用 HLS 输出组类型并将其归档到 S3。我能够做到这一点的一种方法是获取包含所有段的 m3u8 文件,并对所有段的持续时间求和。
有没有更好的办法?也许通过使用 MediaPackage ?
谢谢!