如何从打印中停止播放功能?

时间:2014-03-20 05:06:36

标签: python python-2.7 audio printing sox

我找不到适合我的基于文本的python程序的音乐播放器,因为它们都基于pygame。因此,我使用python中的sox程序和os.system。但是,每当我使用play mymusic.wav播放文件时,它都会打印出来:

flap.wav:
 File Size: 11.3k     Bit Rate: 257k
  Encoding: Signed PCM    
  Channels: 1 @ 16-bit   
Samplerate: 16000Hz      
Replaygain: off         
  Duration: 00:00:00.35  
In:100%  00:00:00.35 [00:00:00.00] Out:15.6k [      |      ]        Clip:0    
Done.

如何阻止它打印?

1 个答案:

答案 0 :(得分:2)

因此可以将输出重定向到/ dev / null,如:

import subprocess
import os

devnull = open(os.devnull,"w")
subprocess.call(['play', 'flap.wav'], stdout=devnull)
devnull.close()

这只会将您的调用发送到stdout的任何内容传输到/dev/null