sud*_*aju 5 amazon-web-services python-3.x amazon-kinesis amazon-kinesis-agent apache-camel-aws-kinesis
我现在使用 GetMedia API 通过 AWS Connect 服务将数据提取到(Kinesis Video Stream)KVS,我能够提取有效负载,但如何将此输出转换为 mp3/wav?我想将此输出提取到 AWS Transcribe 服务,以获取由 AWS Connect 服务提取到 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'
注:上面的回复太长,所以粘贴了一些。
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())
Run Code Online (Sandbox Code Playgroud)
请建议我如何将有效负载输出转换为 mp3/wav 等。
小智 1
我面临着同样的问题,我可以将有效负载作为原始文件导出到 S3,但当我收听它时,它不能正确听到,就像它是一个加密的对话一样。
我只是将有效负载保存到文件中。
f = open("myAudio.wav", 'w+b')
f.write(stream['Payload'].read())
f.close()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2750 次 |
| 最近记录: |