2025-05-27 15:46:31 +08:00

45 lines
961 B
Python
Executable File

# Copyright (c) Alibaba, Inc. and its affiliates.
from struct import *
__all__=['wav2pcm', 'GetDefaultContext']
def GetDefaultContext():
"""
Return Default Context Object
"""
return {
'sdk': {
'name': 'nls-python-sdk',
'version': '0.0.1',
'language': 'python'
}
}
def wav2pcm(wavfile, pcmfile):
"""
Turn wav into pcm
Parameters
----------
wavfile: str
wav file path
pcmfile: str
output pcm file path
"""
with open(wavfile, 'rb') as i, open(pcmfile, 'wb') as o:
i.seek(0)
_id = i.read(4)
_id = unpack('>I', _id)
_size = i.read(4)
_size = unpack('<I', _size)
_type = i.read(4)
_type = unpack('>I', _type)
if _id[0] != 0x52494646 or _type[0] != 0x57415645:
raise ValueError('not a wav!')
i.read(32)
result = i.read()
o.write(result)