• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MATLABでの純音提示の時間制御)

MATLABでの純音提示の時間制御についての質問

このQ&Aのポイント
  • MATLABで一定間隔をおいて純音を提示する方法について質問があります。
  • 現在のプログラムでは250msごとに純音と無音を反復していますが、1サイクルが0.50sec付近に落ち着くようにしたいです。
  • PCのスペックは変更できないため、プログラミングで対応したいです。ご教示ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • Kules
  • ベストアンサー率47% (292/619)
回答No.3

>0.57-0.68sec 長めに出ているということはどちらでも処理に要する時間がそれなりにかかってしまってるって感じですかね? 1サイクルは500msに近づけたくて純音状態の250msはそんなにシビアじゃないよ、ということであれば、 ちょこっと考えて考え付くのは 「純音状態の時間を測定し(tic,toc使用)、残り時間はpauseをかける」でしょうか。 例えば純音状態が270msなら230mspauseをかけ、純音状態が240msなら260mspauseをかける、みたいな。 それ以外の部分にかかる時間が大体でもわかっているなら、その時間をさらに除くとよさそうですね。 参考になれば幸いです。

kyaramatsurika
質問者

お礼

ありがとうございます。 純音・無音提示ともに時間がかかってしまっている状況でした。 500msに一度純音が提示されれば良いという程度の精度しか求めていないため,提示時間幅はほとんど問題がありません。 今回は教えてくださったpauseを使って無音状態の精度をコントロールしたいと思います。 また図書もご紹介くださりありがとうございます。今後の対策として勉強します。

その他の回答 (2)

  • UROIUSH
  • ベストアンサー率17% (41/238)
回答No.2

補足です。 clock関数で時刻を取得できます。 詳しくはmathworksのページで検索してみてください。

kyaramatsurika
質問者

お礼

たびたびありがとうございます。 mathworksのページおよびhelpを参照します。

  • UROIUSH
  • ベストアンサー率17% (41/238)
回答No.1

こんにちは matlabは高負荷なソフトなので どうしても遅れが生じます。 できればc言語などのコンパイル言語でやった方がよろしいかと思います。 これだったら、遅れはほぼありません。 音の波形も正弦波なので、発音も可能です。

kyaramatsurika
質問者

お礼

ありがとうございます。 お返事が遅れ申し訳ありません。 matlabが高負荷であることを忘れていました。 画像を提示するプログラムはmatlabで作成している関係上,できればmatlabで,と考えていました。 正確さを期するにはC言語などのほうがよいのですね。 C言語などのコンパイル言語はいじったことが無いため,一からになってしまいますが挑戦したいと思います。

kyaramatsurika
質問者

補足

matlabでの解決法も探っているため,引き続きご回答をお待ちしております。

関連するQ&A

専門家に質問してみよう