Python 3.x 如何将AWS Kinesis视频流GetMedia API输出解码为mp3/wav?

Python 3.x 如何将AWS Kinesis视频流GetMedia API输出解码为mp3/wav?,python-3.x,amazon-web-services,amazon-kinesis,amazon-kinesis-agent,apache-camel-aws-kinesis,Python 3.x,Amazon Web Services,Amazon Kinesis,Amazon Kinesis Agent,Apache Camel Aws Kinesis,我现在使用GetMedia API通过AWS Connect服务将数据摄取到(Kinesis视频流)KVS,我能够提取有效负载,但如何将此输出转换为mp3/wav?我想将此输出接收到AWS转录服务,以获取AWS Connect服务接收到KVS的音频调用的文本格式 以下代码的有效载荷输出如下所示: 00#AWS#动画片(视频)(视频)续集(视频)(标记)d\x87..\x1faudio/L16 ;;费率=8000;通道=1\x12T\xc……00“AWS\U动画片\U MILLIS\U BEHIN

我现在使用GetMedia API通过AWS Connect服务将数据摄取到(Kinesis视频流)KVS,我能够提取有效负载,但如何将此输出转换为mp3/wav?我想将此输出接收到AWS转录服务,以获取AWS Connect服务接收到KVS的音频调用的文本格式

以下代码的有效载荷输出如下所示:

00#AWS#动画片(视频)(视频)续集(视频)(标记)d\x87..\x1faudio/L16 ;;费率=8000;通道=1\x12T\xc……00“AWS\U动画片\U MILLIS\U BEHIND\u NOWD\x87\x10\x00\x00\x074564302g\xc8\x10\x00\x00^E\xa3\x10\x00\x00#AWS\U动画片继续\x87\x10\x00\x00/9134385233318143250657254623305937456791063”

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

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等。

我面临着同样的问题,我可以将有效负载作为原始文件导出到S3,但当我听到它时,它不会像加密的对话一样正常地发出声音

我只是将有效负载保存到一个文件中

f = open("myAudio.wav", 'w+b')
f.write(stream['Payload'].read())
f.close() 

您可以将音频转换为文本吗?使用下面的代码,查看音频是否正确转换为文本?将语音识别作为sr r=sr.Recognizer()audio='myAudio.wav'导入,sr.AudioFile(audio)作为源:print('Started!')audio=r.record(source)print('Done!')try:text=r.recognize_谷歌(音频)打印(文本),例外情况为e:print(e)顺便说一句,这是一种浪费,我们与AWS技术团队进行了交谈,他们清楚地告诉我们,到目前为止,我们只能使用java解析kinesis mkv格式的媒体,而不使用python。因此,请按照下面的链接一步一步地部署AWS connect transcribe——无需了解java,只需遵循步骤,因为我们的团队在不了解java的情况下成功地完成了同样的工作,希望如此你可以。嘿,谢谢你的回答。我甚至还没有尝试转录音频。目前,我只想把它保存在S3存储桶中,然后像语音邮件一样收听。但不知怎么的,音频文件的声音不正常。你是否设法将有效负载转换为可收听的wav文件?是的,我的同事使用了该代码在我上面提供的github链接中。你的音频制作人是什么?你从哪里摄取音频到kinesis的Imean?来自AWS connect。但是你提供的链接只是解释了如何转录音频。我以为你关心的是以wav或mp3格式输出有效负载。你在python中成功解决了这个问题了吗?我不想转录我t现在,我只想将getMedia函数中的有效负载保存到一个文件中,例如,我可以使用Audacity或quicktime player收听。您是如何解决这个问题的?我有一个非常类似的问题-我需要从有效负载中提取第一帧视频。@py_ml我的团队遵循并部署了这个文件:github.com/aws-samples/amazon-connect-realtime-转录