問題タブ [praat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
function - Praat で値による引数が渡されない
次のような手順を Praat スクリプトで作成しました。
.segment$
基本的に、グローバル配列に存在するかどうかを調べようとしていますallowed_segments$
。
このように呼び出されたときの関数:
常に出力:
関数/プロシージャが実際の値を取得せず、変数を文字列のように扱うのはなぜですか?
python - Python で sendpraat コマンドから発生した Praat エラー メッセージをキャプチャする
Praat のインスタンスを開始してsendpraat.exe
から、GUI コマンドをそれに送信するために使用できます。そのため、Praat をバックグラウンドで実行している場合、次のコマンドを実行すると、Praat はローカルmysound.wav
ファイルを Sound オブジェクトとして読み込みます。
そして、Python 経由でこのコマンドを送信する方法はたくさんあります。
しかし、mysound.wav
存在しない場合、Praat インスタンスはメッセージ ボックスにエラーを表示します。このエラー メッセージの内容を Python でキャプチャして、ポップアップを回避するにはどうすればよいですか?
これらの解決策は、問題に対しては機能しません:
この特定の例では、ファイルが存在するかどうかを Python で確認できます。しかし、エンコーディングに問題がある場合やサンプルがクリップされた場合など、Praat がスローする他のすべてのエラーにも対処する必要があります。
nocheck
コマンドの前に (を使用sendpraat praat nocheck "Read from file... mysound.wav"
してポップアップを回避できますが、Python はコマンドが失敗したことを知る方法がありません。
object - 無音を削除する Praat スクリプト、オブジェクトを選択して削除できない
私はpraatが初めてなので、これは簡単な質問かもしれません。オブジェクト リスト内のいくつかのオブジェクトを for ループで処理し、サイレント インターバルを削除するスクリプトを praat で作成しようとしています。for ループに入れるこのスクリプトを作成しました。
私は欲しいものを手に入れましたが、私の問題はラインにあります
この行では、音が含まれている部分が抽出され、選択されます。次に、すぐに concatenate を使用して目的のファイルを作成し、選択します。ただし、この行は複数の変数を生成するため、保存できません。したがって、後でオブジェクトディレクトリから削除するための参照がありません。ディレクトリがいっぱいになるように実行することはできますが、これはエレガントではないと思います。助言がありますか?