Praat のインスタンスを開始してsendpraat.exe
から、GUI コマンドをそれに送信するために使用できます。そのため、Praat をバックグラウンドで実行している場合、次のコマンドを実行すると、Praat はローカルmysound.wav
ファイルを Sound オブジェクトとして読み込みます。
sendpraat praat "Read from file... mysound.wav"
そして、Python 経由でこのコマンドを送信する方法はたくさんあります。
import subprocess
subprocess.call('sendpraat praat "Read from file... mysound.wav"')
しかし、mysound.wav
存在しない場合、Praat インスタンスはメッセージ ボックスにエラーを表示します。このエラー メッセージの内容を Python でキャプチャして、ポップアップを回避するにはどうすればよいですか?
これらの解決策は、問題に対しては機能しません:
この特定の例では、ファイルが存在するかどうかを Python で確認できます。しかし、エンコーディングに問題がある場合やサンプルがクリップされた場合など、Praat がスローする他のすべてのエラーにも対処する必要があります。
nocheck
コマンドの前に (を使用sendpraat praat nocheck "Read from file... mysound.wav"
してポップアップを回避できますが、Python はコマンドが失敗したことを知る方法がありません。