小编Max*_*win的帖子

后台进程subprocess.Popen with Pipe

我正在尝试使用arecord记录和转换使用python的流.

在shell中,这是一个或多或少的命令:

arecord -B 5000 -f dat | lame -m j -q 5 -V 2 - test.mp3 &
Run Code Online (Sandbox Code Playgroud)

在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()
Run Code Online (Sandbox Code Playgroud)

但我不知道如何在代码中包含"&"或类似内容,以便能够使用a来停止录制

killall arecord 命令

python subprocess background audio-recording

7
推荐指数
1
解决办法
6448
查看次数

标签 统计

audio-recording ×1

background ×1

python ×1

subprocess ×1