重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

色々調べたところ、まだ詳しく理解はしていないのですがdirexctsoundではセカンダリバッファを使い周波数を変更して音程を変えることができるとわかりました。
directmusicでも周波数を変更することができるのでしょうか?
また、directsoundでバッファを用いなくても周波数を変更できるのでしょうか?

文章のおかしな点が多々あると思いますがよろしくお願いいたします。

A 回答 (2件)

>音源はwaveを再生しようと考えています。


waveの場合はDirectShowのマルチメディア系の方を使うか、
普通はDirectSoundを使います。
#DirectMusicはどちらかというとMidi向けです。

>なぜか音が鳴らなく、バッファの中を調べてみても
>全て0(NULL?)でした。
バッファの中身というのが何を指していて、
どのようにして見たのかはわかりませんが。。。
それはつまりデータが無いということですよね。。。?
何らかの処理を行っていないか、読み込みの処理に失敗してる
可能性がありますが、これだけの情報ではなんともいえません;


>そこでバッファを用いなくてもできないのかなと思いまして…。
音が鳴らないのに、出来そうとは思いませんよね・・・
周波数の調整は後でいくらでも可能なので、先に音を鳴らす事から
はじめた方がよさそう。

この回答への補足

ご返事ありがとうございます。
もう少しDirectSoundで頑張ってみようと思います。

言うのが遅れましたが、音を鳴らそうとしているのはmain関数です。
ウィンドウズアプリケーションのWinmainだとバッファを用いても音が鳴るのですが、
それをウィンドウズコンソールアプリケーションのmainに書き直したところ(必要な部分だけ残し、winmainでmainには必要ないと思われる最低限を削ったつもりですが)鳴らなくなったのです…。

joystickではwinmainのソースをmainに書きかえれたので、DirectSoundでも出来ると思ったのですがmainでは使えないのでしょうか?

補足日時:2007/10/14 22:12
    • good
    • 0

>directmusicでも周波数を変更することができるのでしょうか?


再生する音源によると思います。

>また、directsoundでバッファを用いなくても
>周波数を変更できるのでしょうか?
そもそも変更をかける対象を用いずに
出来るわけがないと思うのですが。。。

SetFrequencyとかで調べてみるとよいかと。
    • good
    • 0
この回答へのお礼

お早い回答ありがとうございます。

>>directmusicでも周波数を変更することができるのでしょうか?
>再生する音源によると思います。

音源はwaveを再生しようと考えています。

>>また、directsoundでバッファを用いなくても
>>周波数を変更できるのでしょうか?
>そもそも変更をかける対象を用いずに
>出来るわけがないと思うのですが。。。

購入した本のサンプルコード(セカンダリバッファを用いてwave再生)をそのままコンパイルしたところ、なぜか音が鳴らなく、バッファの中を調べてみても全て0(NULL?)でした。
そこでバッファを用いなくてもできないのかなと思いまして…。

お礼日時:2007/10/12 12:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!