我試過谷歌的解決方案,但還沒有拿出任何。如果有人想到的東西,將不勝感激。如何停止使用python運行揚聲器測試?
import subprocess
subprocess.call("speaker-test -t sine -f" + frequency, shell = True)
如果我在Python中只使用這兩行簡單的代碼,那麼在變量頻率中給出的數字將永遠以該頻率運行。我希望能夠在一定的時間後停止揚聲器測試頻率的運行。那麼停止揚聲器測試的命令是什麼?
我試過谷歌的解決方案,但還沒有拿出任何。如果有人想到的東西,將不勝感激。如何停止使用python運行揚聲器測試?
import subprocess
subprocess.call("speaker-test -t sine -f" + frequency, shell = True)
如果我在Python中只使用這兩行簡單的代碼,那麼在變量頻率中給出的數字將永遠以該頻率運行。我希望能夠在一定的時間後停止揚聲器測試頻率的運行。那麼停止揚聲器測試的命令是什麼?
找到解決我自己的問題。揚聲器測試具有一個參數-l,它決定了您想要測試的特定頻率的循環數。玩弄一些數學運算,我發現將輸入的時間除以2.85意味着一個週期是〜1秒。
import subprocess
subprocess.call("(speaker-test -t sine -f 200 -c 2 -Dhw:ALSA)& pid=$!; sleep 0.15; kill -9 $pid", shell = True)
這一行停止揚聲器測試0.15秒
工作,我會坦率地認爲,沒有人真正瞭解你的問題。此外,這個社區可以幫助你找到問題並找到給定代碼的解決方案 - 你不應該指望人們從頭開始爲你編寫代碼。所以,請詳細說明...... – nostradamus
@nostradamus對不起,我現在添加了更多信息,可以幫助回答問題。 – user2489995
不知道你的「subprocess」模塊是什麼,你從哪裏得到的?您可能需要深入研究以確定您擁有哪些選項.call() – Yohst