- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MATLABでの純音提示の時間制御)
MATLABでの純音提示の時間制御についての質問
このQ&Aのポイント
- MATLABで一定間隔をおいて純音を提示する方法について質問があります。
- 現在のプログラムでは250msごとに純音と無音を反復していますが、1サイクルが0.50sec付近に落ち着くようにしたいです。
- PCのスペックは変更できないため、プログラミングで対応したいです。ご教示ください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>0.57-0.68sec 長めに出ているということはどちらでも処理に要する時間がそれなりにかかってしまってるって感じですかね? 1サイクルは500msに近づけたくて純音状態の250msはそんなにシビアじゃないよ、ということであれば、 ちょこっと考えて考え付くのは 「純音状態の時間を測定し(tic,toc使用)、残り時間はpauseをかける」でしょうか。 例えば純音状態が270msなら230mspauseをかけ、純音状態が240msなら260mspauseをかける、みたいな。 それ以外の部分にかかる時間が大体でもわかっているなら、その時間をさらに除くとよさそうですね。 参考になれば幸いです。
その他の回答 (2)
- UROIUSH
- ベストアンサー率17% (41/238)
回答No.2
補足です。 clock関数で時刻を取得できます。 詳しくはmathworksのページで検索してみてください。
質問者
お礼
たびたびありがとうございます。 mathworksのページおよびhelpを参照します。
- UROIUSH
- ベストアンサー率17% (41/238)
回答No.1
こんにちは matlabは高負荷なソフトなので どうしても遅れが生じます。 できればc言語などのコンパイル言語でやった方がよろしいかと思います。 これだったら、遅れはほぼありません。 音の波形も正弦波なので、発音も可能です。
質問者
お礼
ありがとうございます。 お返事が遅れ申し訳ありません。 matlabが高負荷であることを忘れていました。 画像を提示するプログラムはmatlabで作成している関係上,できればmatlabで,と考えていました。 正確さを期するにはC言語などのほうがよいのですね。 C言語などのコンパイル言語はいじったことが無いため,一からになってしまいますが挑戦したいと思います。
質問者
補足
matlabでの解決法も探っているため,引き続きご回答をお待ちしております。
お礼
ありがとうございます。 純音・無音提示ともに時間がかかってしまっている状況でした。 500msに一度純音が提示されれば良いという程度の精度しか求めていないため,提示時間幅はほとんど問題がありません。 今回は教えてくださったpauseを使って無音状態の精度をコントロールしたいと思います。 また図書もご紹介くださりありがとうございます。今後の対策として勉強します。