import sys
if len(sys.argv) != 3:
print("Expected two arguments.")
print("USAGE: convert_rnnoise.py INPUT OUTPUT")
sys.exit(1)
in_name = sys.argv[1]
out_name = sys.argv[2]
with open(in_name, 'r') as in_file:
if in_file.readline().strip() != 'rnnoise-nu model file version 1':
print("Unexpected input file format")
sys.exit(1)
data = in_file.read()
in_nums = [int(s) for s in data.split()]
def cvt(n):
if n < 0:
return 256 + n
else:
return n
nums = [cvt(n) for n in in_nums]
with open(out_name, 'wb') as out_file:
out_file.write(bytearray(nums))
print(f'Converted {in_name} to {out_name}')