【问题标题】:How to get URL from kinesis video streams with GetHLSStreamingSessionURL如何使用 GetHLSStreamingSessionURL 从 kinesis 视频流中获取 URL
【发布时间】:2022-09-29 04:52:35
【问题描述】:

我正在尝试获取一个 URL,以使用 getHLSStreamingSessionURL 在 kinesis 视频流上查看我的视频。

在邮递员上,我创建了一个对 \'https://endpoint/getHLSStreamingSessionURL 的 POST 调用

在邮递员上,我收到 200 回复,但回复正文是:

{
    \"Output\": {
        \"__type\": \"com.amazon.coral.service#UnknownOperationException\"
    },
    \"Version\": \"1.0\"
}

我希望响应返回 HLS url。

这是我的请求正文:

{
   \"ContainerFormat\": \"FRAGMENTED_MP4\",
   \"DiscontinuityMode\": \"ON_DISCONTINUITY\",
   \"DisplayFragmentTimestamp\": \"ALWAYS\",
   \"Expires\": 300,
   \"HLSFragmentSelector\": { 
      \"FragmentSelectorType\": \"PRODUCER_TIMESTAMP\",
       \"TimestampRange\": { 
        \"EndTimestamp\": 1646055362163,
        \"StartTimestamp\": 1646055362143
      }
   },
   \"PlaybackMode\": \"ON-DEMAND\",
   \"StreamName\": \"DEV_videoStreamTest\"
}

谁能建议我的 http 请求有什么问题并解释这个响应的确切含义?

    标签: aws-kinesis


    【解决方案1】:

    我发现这有点令人费解,但是您需要致电 GetDataEndpoint 首先是为了获得正确的 API 端点 url 来调用 GetHLSStreamingSessionURL

    AWS Github 上有一个很好的完整示例,您可以使用它来尝试所有参数:
    amazon-kinesis-video-streams-media-viewer

    但简而言之,调用

    https://kinesisvideo.<region>.amazonaws.com/getDataEndpoint
    

    返回如下内容:

    { "DataEndpoint": "https://b-1234xyz.kinesisvideo.us-west-2.amazonaws.com" }
    

    然后你打电话给获取 HLSStreamingSessionURL替换您的基本网址:

    https://b-1234xyz.kinesisvideo.us-west-2.amazonaws.com/getHLSStreamingSessionURL
    

    我正在使用 boto3,所以这是我在 python 中的简化示例:

    import boto3
    
    # Get the API URL
    kinesis_client = boto3.client("kinesisvideo")
    response = kinesis_client.get_data_endpoint(
        StreamName=stream_name,
        APIName="GET_HLS_STREAMING_SESSION_URL"
    )
    endpoint_url = response.get("DataEndpoint")
    
    # Get the Stream URL
    kinesis_client = boto3.client(
        "kinesis-video-archived-media",
        endpoint_url=endpoint_url
    )
    response = kinesis_client.get_hls_streaming_session_url(
        StreamName=stream_name,
        ...
    )
    

    【讨论】:

      猜你喜欢
      • 2018-01-23
      • 1970-01-01
      • 1970-01-01
      • 2020-07-04
      • 1970-01-01
      • 2014-03-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多