ページ 1 / 1
音楽のグラフ?
Posted: 2010年9月20日(月) 20:36
by パコネコ
音や声などが折れ線グラフのように、表わされているのを見たことがあるのですが…
あれの名前は何というのでしょうか?
音楽などを使ったプログラミングはほとんどやったことないのですが、
音楽ファイルを読み込んであのグラフのようなものを作ることはできるのでしょうか?
名前がわからないので伝わらない方が多いと思いますが、
え~と、…なんだか警察ドラマとかで音を切り取ったりしてる画面?とかの…
表現がうまくできません。
もしかしてこれ?とかいう人がいたら教えてください。
それと、もしC言語(もしくはC++)でプログラミングできそうでしたら、
参考になりそうになものを教えてもらえるとうれしいです。
まだ作り始めることもできてないのでソースもありません。
情報が足りてない気しかしませんがなんとかお願いします。
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 20:39
by シエル
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 20:58
by パコネコ
>>シエルさん
ありがとうございます。
なんだか、音楽に関係ありそうな関数がいっぱいですね…
知らないものばかりであまり理解できてませんが…がんばって勉強します。
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:03
by fatens
>音や声などが折れ線グラフのように、表わされているのを見たことがあるのですが…
>あれの名前は何というのでしょうか?
波形……でしょうか。
http://www.cycleof5th.com/products/soundengine/
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:13
by softya
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:13
by パコネコ
>>fatensさん
おお~これです、これです!!
波形だったんですね。
一応プログラムで使いたいんで張っていただいたツールは使いませんけど…
ツールの絵で描かれている画像で間違いないです。
こんなの作りたかったんです。
教えていただきありがとうございます。
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:15
by Dixq (管理人)
私は音楽・効果音編集には
GoldWave
http://www.goldwave.com/
Audacity
http://www.forest.impress.co.jp/lib/pic ... acity.html
を利用しています。
後、音の何をプログラムで操作したいのでしょうか?
再生するとか、周波数解析するとか、編集するとか、音声抽出するとか、やる事によって必要な知識は変わります。
波形を表示するにしても、wavファイルなら強さを表示すればよいだけですが、
圧縮してあるファイルならデコードしなければなりません。
また、音声関連では多くの場合フーリエ変換の知識が必要です。
http://ja.wikipedia.org/wiki/%E3%83%95% ... 9%E6%8F%9B
音声認識がやりたいのであれば、Juliusとか良いですね。
http://julius.sourceforge.jp/
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:19
by やっくん
少し前に簡単に触ったことがあります。
自分の声をサンプリングして、フーリエ変換で波形をわかりやすい形にして一般的なデータと比較したくらいですが。C言語を使って変換は行いました。
似たようなことをしているサイトがあったので紹介を。
http://www.geocities.jp/horie_ryu/page01.html
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:24
by パコネコ
>>softyaさん
これは勉強になりますね。
学校では苦手な分野なので理解するのに時間かかりそう…
/*
後、音の何をプログラムで操作したいのでしょうか?
*/
そのグラフを使って楽譜?(太鼓の○人とかのゲームで使うやつ)っぽいのを作成してゲームで使えるようにしたいです。
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:40
by softya
波形を見て分かる情報は音が出ているかいないかですね。
リズムを刻んでいる特定の楽器の情報を波形データから自動で拾い出すのは簡単じゃないですよ。
高速フーリエ変換した周波数ごとに分解しただけででも楽器を見分けるのは困難です。
でも、すごく挑戦しがいのあるテーマではあります。
Dixq (管理人)さんのAerobeatでも自動作成はしてませんね。
http://dixq.net/Aerobeat/AddMusic.html
下の方に楽譜の作り方が書いてあります。
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:42
by Dixq (管理人)
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:43
by nns
いわゆるスペクトラムアナライザーのことを指しているのであれば
負荷を見ながら読み込んだデータに対して領域を絞ってFFT掛けるだけでOKかと思われます。
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 21:47
by 組木紙織
フーリエ変換だけじゃなくて、物によったらウエーブレット変換が必要になるかも。
やりたいことはいわゆる"耳コピ"ですよね?
自分で身につけたほうが現実的だと思います
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 22:57
by パコネコ
>>やっくんさん
ここでやっているのは解析っぽいですね。
一度解析できたほうがいいのでかなり参考になると思います。
ありがとうございます。
>>softyaさん
やっぱり難しいですよね…
細かいことは気にするつもりありませんが、
取り合えずの目標は、音が出てる時の識別です。
楽器ごととかは考えてなかったです…
できたらいいな…
>>Dixqさん
フーリエ変換…まだよくわかりませんが必要っぽいのはわかりました。
勉強しときます。
(そんな本まで…片一方はおじさんなのに、何か共通点でもあったんですかね(笑))
>>nnsさん
ごめんなさい。
私では意味を理解できませんでした。
「スペクトラムアナライザー」とはなんでしょうか?
>>組木紙織さん
なんだか「~変換」とかが多いですね…
最終的にはプレイヤーさんが持っている音をパスを入力するだけで、
遊べるようにしたいのですが…
(できるかはまだわかりませんが…)
耳コピってあれですよね、自分で楽譜?作成するってことですよね。
(音楽聞きながらとか…)
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 23:20
by 組木紙織
>耳コピってあれですよね、自分で楽譜?作成するってことですよね。
そうですね。音を聞きながらそれを自分の耳で聞きとって再現することです。
>最終的にはプレイヤーさんが持っている音をパスを入力するだけで、
遊べるようにしたいのですが…
音数が少なければまだ、なんとかなると思いますが(一音だったらnnsさんの方法ですぐできるはず)
"音"じゃなくて"曲"だったら、まず無理なんじゃないでしょうか。
波形じゃなくて、音の出し方のデータ形式(MIDIだったとおもう)なら、なんとでなるとおもいます。
#ウエーブレット変換ってフーリエ変換の発展なんでかなりちかいものなんです。
Re:音楽のグラフ?
Posted: 2010年9月20日(月) 23:34
by パコネコ
自分の中だと、
音は短いもので曲は長いものってイメージしかないんですよね…
(曲は歌うもの?歌うのは歌?音の集合体?、定義がわからないです…)
データ形式によってもかなり変わってくるものなんですね。
その辺も調べておく必要がありそうです…
まだつくってないので、問題点がわかりませんが…
皆さんに教えていただいたもので、なんとか作れそうです。
(まだわかりませんが…)
一応解決としておきます。
解決ですが、まだアドバイスなどがありましたら、書いていただけると嬉しいです。
======
ありがとうございました。

Re:音楽のグラフ?
Posted: 2010年9月21日(火) 00:07
by softya
とりあえず音楽をwavやmp3にして、Audacityなどで波形の部分部分を再生してみるとみなさんが指摘していることが分かるんじゃないでしょうか。
イメージできるまで判りづらいでしょうが実に人間の耳と脳は凄くて復数の波形が混じった音の中から特定の楽器を聞き分けれるんですから。
実際の楽器や音はとても複雑な成分から出来ています。単一周波数の音ではなく幾つの音が入り交じりますし、音が微妙に揺らぎ波形も綺麗な正弦波ではありません。
http://ja.wikipedia.org/wiki/%E9%9F%B3%E8%89%B2
>「スペクトラムアナライザー」とはなんでしょうか?
フーリエ変換とほぼ同義です。
周波数ごとの音の強さをグラフ化したものです。
Re:音楽のグラフ?
Posted: 2010年9月21日(火) 01:34
by ISLe
> 取り合えずの目標は、音が出てる時の識別です。
音源にもよりますが、最初はノイズとの戦いになると思います。