首页 > 解决方案 > 建议:设置允许用户从设备创建 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-servicesamazon-s3amazon-ec2amazon-kinesisaws-mediastore

解决方案


当您说从设备创建 RTMP 终端节点不应该要求用户登录到任何AWS服务来满足您的需求时,您是指最终用户的需求还是您作为平台创建者的需求?

当然,如果没有AWS 账户,就无法配置任何AWS Elemental Media Services ,这需要身份验证。大多数对AEMS端点的 API 调用都需要AWS v4 身份验证,因此作为管理员无法避免这种情况,但您可以创建平台来为最终用户处理这些步骤,而无需任何额外的身份验证机制。

MediaLive还要求您在将 RTMP 输入附加到通道之前预定义其应用程序和实例名称,因此这也可能是您的用例的一个缺点。目前,这是AWS提供的唯一接受 RTMP 输入的基于媒体的服务,但通过一些努力,您可以构建一个应用程序,自动创建最终用户指定的应用程序和实例名称,使其“出现”就好像目标将接受动态输入。

MediaStore是一个原始端点,主要用于存储编码内容,供下游 CDN 使用以进行播放。它只接受 RESTful API 调用,所以不幸的是你不能直接推送 RTMP。

如果您对以上提供的信息有更具体的问题,请告诉我!


推荐阅读