后台进程子进程.Popen和Pip

2024-04-16 14:20:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用a record用python记录和转换流。

在shell中,这是一个或多或少类似于:

arecord -B 5000 -f dat | lame -m j -q 5 -V 2 - test.mp3 &

在Python中,我用subprocess.Popen尝试了这一点:

reccmd = ["arecord", "-B", "5000", "-f", "dat"]
mp3cmd = ["lame", "-m", "j", "-q", "5", "-V", "2", "-", "test.mp3"]
p = subprocess.Popen(reccmd, stdout=subprocess.PIPE)
p2 = subprocess.Popen(mp3cmd, stdin=p.stdout)
p2.communicate()

但我不知道如何在代码中包含“&;”或类似的内容,以便能够使用

killall arecord命令


Tags: teststdout记录shellrecordmp3datsubprocess