如何從命令行激發QSound?PyQt4 QtGui.QSound作爲命令行程序播放?
在PyQt4中,playSound.py可能是如此簡單:
QtGui.QSound('start.wav').play()
只是它不提供沒有一個.exec()式的事件調度玩。
那麼最簡單的調度隊列不會彈出一個窗口並按時退出?
如何從命令行激發QSound?PyQt4 QtGui.QSound作爲命令行程序播放?
在PyQt4中,playSound.py可能是如此簡單:
QtGui.QSound('start.wav').play()
只是它不提供沒有一個.exec()式的事件調度玩。
那麼最簡單的調度隊列不會彈出一個窗口並按時退出?
QSound
沒有可靠和便攜的方式發出聲音完成信號。
您可以改用聲子(code example in C++)並將MediaObject::finished()
信號連接到應用程序的quit()
插槽。
爲什麼在一個CLI應用程序中使用PyQt?看起來有點過分,你應該接受Python的電池,並使用PyQt作爲用戶界面,如果你需要CLI和GUI版本的話,這種方式更加便攜。
在純Python中播放音頻有很多選項。 [1]
[1] http://wiki.python.org/moin/Audio/
而且,這裏檢查這些對SO:
因爲我們正在構建一個PyQt4應用程序,所以基本規則是「比任何其他庫更喜歡PyQt4,如果可能的話」 – Phlip 2013-05-13 16:23:29
下面的獨立代碼正常工作對我來說,沒有任何窗口彈出:
from PyQt4 import QtGui
s = QtGui.QSound('test.wav')
s.play()
while not s.isFinished():
sleep(0.1)
s.isFinished()
檢查是必需的,否則腳本將立即退出而不播放wav,因爲play()
不會阻止。
從PyQt4.QtGui進口QSound的
QSound.play( 「文件名」)
和一個小應用程序僅用於EXEC鍵。 K至少聲子是內置的,不像其他一些聲音驅動程序,我們也可以提到! – Phlip 2013-05-01 15:49:05