首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解码AWS动态视频流GetMedia API输出到mp3/wav?

如何解码AWS动态视频流GetMedia API输出到mp3/wav?
EN

Stack Overflow用户
提问于 2019-03-18 19:09:55
回答 1查看 2.2K关注 0票数 5

我通过AWS服务将数据摄取到(动态视频流) KVS,现在使用GetMedia API可以提取有效负载,但如何将此输出转换为mp3/wav?我想摄取这个输出到AWS转录服务,以获得音频调用的文本格式,由AWS连接到KVS服务。

下面代码的有效负载的输出如下:

00#AWS_KINESISVIDEO_CONTINUATION_TOKEND\x87....\x1faudio/L16;rate=8000;channels=1;\x12T\xc......00"AWS_KINESISVIDEO_MILLIS_BEHIND_NOWD\x87\x10\x00\x00\x074564302g\xc8\x10\x00\x00^E\xa3\x10\x00\x00#AWS_KINESISVIDEO_CONTINUATION_TOKEND\x87\x10\x00\x00/91343852333181432506572546233025969374566791063‘

注意:上面的响应太长了,所以粘贴了一些。

代码语言:javascript
复制
import json
import boto3

kinesis_client = boto3.client('kinesisvideo', region_name='us-east-1')

response = kinesis_client.get_data_endpoint(
    StreamARN='arn:aws:kinesisvideo:us-east-1:47...,
    APIName='GET_MEDIA')

t = response['DataEndpoint']
video_client = boto3.client('kinesis-video-media', endpoint_url=t, region_name='us-east-1')
stream = video_client.get_media(
    StreamARN='arn:aws:kinesisvideo:us-east-1:47...',
    StartSelector={'StartSelectorType': 'EARLIEST'})

streamingBody = stream['Payload']
print(streamingBody.read())

请建议如何将有效载荷输出转换为mp3/wav等

EN

回答 1

Stack Overflow用户

发布于 2019-04-01 11:00:22

我也面临着同样的问题,我可以将有效负载作为原始文件导出到S3,但是当我聆听它时,它并不像一个加密的对话那样被正确地听到。

我只是把有效载荷保存到一个文件中。

代码语言:javascript
复制
f = open("myAudio.wav", 'w+b')
f.write(stream['Payload'].read())
f.close() 
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55228502

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档