簡體   English   中英

如何將AWS Kinesis Video Stream GetMedia API輸出解碼為mp3 / wav?

[英]How to decode AWS Kinesis Video Stream GetMedia API output to mp3/wav?

我現在使用GetMedia API通過AWS Connect服務將數據攝取到(Kinesis Video Stream)KVS,能夠提取有效載荷,但是如何將輸出轉換為mp3 / wav? 我想將此輸出提取到AWS Transcribe服務,以獲取AWS Connect服務提取到KVS的音頻呼叫的文本格式。

以下代碼的有效負載輸出如下:

00#AWS_KINESISVIDEO_CONTINUATION_TOKEND \\的x87 .... \\ x1faudio / L16;速率= 8000;通道= 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())

請建議如何將有效負載輸出轉換為mp3 / wav等。

我面臨着同樣的問題,我可以將有效負載作為原始文件導出到S3,但是當我收聽它時,它像被加密的對話一樣無法正常聽見。

我只是將有效負載保存到文件中。

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM