学校の課題で、作品を作ることとなり、
リアルタイムで再生される音楽の、
ボリューム、テンポ、周波数による局所的な音の大小(イコライザ的な)を実現するプログラムを作ることになりました。
ボリューム、テンポ調整、イコライザのついた音声プレイヤーみたいなものです。再生する音声のフォーマットは問いません。
下調べはしましたが、実現方法は不明でした。
実現する方法、もしくは参考となる資料を教えていただけると嬉しいです。
開発環境はWindows、
使用言語は、C。Cが不可能ならばC++もがんばります。
コンパイラ等はできるだけフリーで手に入る物だと助かります。
しかし、実現することが第一なので有料でも大丈夫です。
当方の知識は、ぎりぎり基本情報を持っている程度です。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
C++ を使うことになりますが, 少なくとも「(ほぼ) リアルタイムのボリューム」については DirectX SDK のサンプルにある fullduplexfilter を流用するだけで可能です. イコライザは FFT をするのが簡単でしょう. Q の大きいフィルタを並列に並べても実現できますが, FFT の方が速いかもしれません.
テンポ調整は.... 実は一番難しいんじゃないかなぁ.
「ほぼ」というのは, 当然「入力から出力までにタイムラグが出てしまう」から. FFT でもラグが出るので, それだけは注意です.
fullduplexfilter はウィンドウを開いたりするので, Visual Studio Express Edition でコンパイルできるかどうかは知りません. Professional Edition なら確実にコンパイルできます.
回答ありがとうございます。
今日学校で、DirectX9関連の書籍を借りてきたので早速やってみます。
険しい道のりになると思いますが、あきらめずがんばります。
No.1
- 回答日時:
Direct Xを使えば可能だと思います
http://yokohama.cool.ne.jp/chokuto/urawaza/com/d …
グラフィックイコライザーとなると
FFTの知識が必要となるかも知れません。
http://laputa.cs.shinshu-u.ac.jp/~yizawa/InfSys1 …
(FFTで検索するとファイナル・ファンタジーがたくさんヒットしてしまうので、
"高速フーリエ変換"で検索しなさいと、友人に教えていただきました。
感謝です)
解答ありがとうございます。
Direct Xの使用を検討し、本や資料をあさって見ます。
やはり、リアルタイムで反映するというのは難しいみたいですが、
がんばります。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ニコニコ生放送 WindowsPC用有料動画キャプチャーソフトで高音質録画できる商品と同DVDライティング商品は? 3 2023/03/09 17:56
- その他(プログラミング・Web制作) プログラムの勉強のおすすめは 7 2022/12/09 20:09
- その他(自然科学) 風車音の測定 3 2023/04/28 07:12
- その他(AV機器・カメラ) 動画音声の「一部」がモノラルオーディオだと再生できない 2 2022/11/26 20:18
- 画像編集・動画編集・音楽編集 YouTubeを録音できるソフトを教えてください。 5 2023/02/12 10:19
- Windows 10 windows付属のボイスレコーダー。雑音が入らないように録音するには? 1 2022/05/16 22:39
- ノートパソコン iTunesで取り込んだ音楽が音飛びします。 2 2022/05/05 21:37
- クラシック 楽譜の読み方についての質問 10 2022/09/07 15:00
- 作詞・作曲 或る曲の楽譜のコード進行の中に"F onA"なるものがありました。これはどんな和音ですか? 7 2023/05/22 00:34
- 哲学 哲学が デ・ファクト・スタンダードに追随していてよいのか 1 2022/04/25 09:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<unistd.h>をVisualStudioでつ...
-
アプリケーションのDLLファイル...
-
<math.h>ヘッダを入力している...
-
共有ライブラリの内容確認について
-
math.hに含まれる関数が使えない
-
MVSマシンで0C7でABENDしたので...
-
実行後にコンパイルに失敗しま...
-
プレコンパイルの意味を教えて...
-
C言語で作ったらWindowsでもMac...
-
Verilog_HDLでのdefineとifdef
-
EXEファイルの逆コンパイル
-
CLRアプリと通常のアプリとの違い
-
「逆コンパイル」ってできるん...
-
C言語で作ったプログラムを他の...
-
[COBOL] ソースの復帰
-
WindowsでのC と LinuxでのC...
-
gcc コンパイル killed
-
latex cite, ref
-
VS2010環境で2点ほど質問
-
C言語のグローバル変数の初期...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<unistd.h>をVisualStudioでつ...
-
アプリケーションのDLLファイル...
-
math.hに含まれる関数が使えない
-
実行後にコンパイルに失敗しま...
-
c言語です コンパイルした時に...
-
ビープ音が鳴りません・・・
-
共有ライブラリの内容確認について
-
C言語をコンパイルするとコンピ...
-
すべてのリビルド: 0 正常、 0 ...
-
Verilog_HDLでのdefineとifdef
-
C#で char型とstring型の比較で...
-
64ビットのlinuxで32ビットメモ...
-
gcc コンパイル killed
-
#If True Then の # って何??
-
プレコンパイルの意味を教えて...
-
[COBOL] ソースの復帰
-
<math.h>ヘッダを入力している...
-
C言語で作ったらWindowsでもMac...
-
ヘッダーファイル『windows.h』...
-
define文のパラメータを実行時...
おすすめ情報