如何使用 sox 重新采样和正确连接 wav 文件?

How to resample and concatenate properly the wav files using sox?

代码是 运行 但它提供了多行输出,而我需要在一条水平线上

当前输出格式-

袜子 home/randy/mechanical/wav/ttsmf_007/ttsmf_007_103 .wav -r 12000 -t raw/home/randy/mechanical/raw/ttsmf_007/ttsmf_007_103 .raw

短袜home/randy/mechanical/wav/ttsmf_007/ttsmf_007_104 .wav -r 12000 -t raw/home/randy/mechanical/raw/ttsmf_007/ttsmf_007_104 .raw

.....

短袜home/randy/mechanical/wav/ttsmf_007/ttomf_007_189 .wav -r 12000 -t raw/home/randy/mechanical/raw/ttsmf_007/ttomf_007_189 .raw

所需的输出格式-

sox home/randy/mechanical/wav/ttsmf_007/ttsmf_007_103.wav.......ttsmf_007_103.raw

sox home/randy/mechanical/wav/ttsmf_007/ttsmf_007_104.wav.......ttsmf_007_104.raw

................................................ ...................................

sox home/randy/mechanical/wav/ttomf_007/ttomf_007_189.wav.......ttomf_007_189.raw

----------------------------代码---------------- ------------------------------

#!/usr/bin/env python

fo= open("ml.ctl","r")
for line in fo.readlines():
    a1 = line[0:]
    y = "sox"+ " " + "/home/randy/mechanical/wav/"+ str(a1)+".wav"+ " " + "-r"+ " " + "12000"+ " " + "-t" + " " + "raw" +"/home/randy/mechanical/raw + str(a1) + ".raw"
    print(y)
fo.close()
fo= open("newmlt.ctl","w")
fo.close()

用正则表达式删除马车return:

#!/usr/bin/env python

import re

fo= open("ml.ctl","r")
for line in fo.readlines():
    a1 = line[0:]
    y = "sox"+ " " + "/home/randy/mechanical/wav/"+ str(a1)+".wav"+ " " + "-r"+ " " + "12000"+ " " + "-t" + " " + "raw" +"/home/randy/mechanical/raw + str(a1) + ".raw"
    y = re.sub("\n", '', y)
    print(y)
fo.close()
fo= open("newmlt.ctl","w")
fo.close()

反正我觉得问题出在原文件ml.ctl或者读取方式