如何改变我的反应到.WAV文件or.mp3?(how to change my response i

2019-10-30 11:50发布

我有一个EchoServer的WebSocket的代码连接的现场呼叫这就给像7 \ x00E \ x00Y \ x00u \ X00 \ X97 \ X00 \ XB2 \ X00 \ xb9 \ X00 \西飞\ X00 \ X98 \ X00 \的x87格式的响应 \ x00x \ X00 [\ X00
我的代码:Echoserver.py

类WSHandler(tornado.websocket.WebSocketHandler):

def open(self):
    print("Websocket Call Connected")
@gen.coroutine
def on_message(self, message):
    print ("message====>",message)
    watson = yield self.watson_future
    if type(message) == str:
        watson.write_message(message, binary=True)
    else:
        data = json.loads(message)
        data['action'] = "start"
        data['continuous'] = True
        data['interim_results'] = True
        print (json.dumps(data)) 
        watson.write_message(json.dumps(data), binary=False)
@gen.coroutine
def on_close(self):
    print("Websocket Call Disconnected")


def on_watson_message(self, message):

如何写从我的回应是我所提到的MP3文件? 任何建议将不胜感激。

响应

7\x00E\x00Y\x00u\x00\x97\x00\xb2\x00\xb9\x00\xac\x00\x98\x00\x87\x00x\x00[\x00(\x00\xf0\xff\xd8\xff\xfd\xffX\x00\xbb\x00\xf8\x00\x04\x01\xf8\x00\xf2\x00\xf8\x00\xf9\x00\xe7\x00\xc4\x00\x99\x00i\x007\x00\t\x00\xea\xff\xdb\xff\xd6\xff\xd0\xff\xca\xff\xca\xff\xd6\xff\xe9\xff\xfa\xff\x04\x00\x05\x00\x06\x00\x0b\x00\x12\x00\x15\x00\x12\x00\x0b\x00\x06\x00\x06\x00\x07\x00\n\x00\x10\x00\x16\x00\x1a\x00\x1a\x00\x18\x00\x16\x00\x12\x00\t\x0

Answer 1:

音频上的nexmo WebSocket连接格式为LPCM,16位16kHz的单声道。

这是大致相同WAV,LPCM音频是的原始流和WAV是具有RIFF头,随后由原始流的文件。 有用于将原始数据转换为WAV例如各种库https://docs.python.org/2/library/wave.html

如果你需要它作为MP3然后找东西RAW音频转换为MP3,但是我建议你尝试发送RAW / WAV到VoiceBase因为你想要最好的转录可能并转换成MP3只会松散的数据,并添加而延迟你做的转换,也可能是建立一个MP3文件的许可限制。



文章来源: how to change my response into .wav or.mp3 file?