SSブログ

完成!「メロディ弾いてさがしチャオ!」 [パソコン]

前回のブログで発表した「MIDI楽器でメロディ検索できるツール」が完成しました!
名前は、「メロディ弾いてさがしチャオ!」です。

スプラッシュ画面のイメージは、今回もアンの小箱のフリー素材を使用させていただきました。

「年内にベータ版を作って。。。」と書いてましたが、思ったものが結構さくさくとできあがったので、本日、ベータ版を公開しました。
今回の開発で苦労したところは、やはり登録メロディと入力メロディのマッチング処理の部分です。
1番はじめに作ったものは、絶対音階にしか対応できていませんでした。
これを相対音階対応しようとすると、入力されたデータの音階を少しずつずらしてマッチングするしかありません。
しかし、これだと、登録メロディの音階と入力メロディの音階が離れていると、マッチングにかなり時間がかかってしまいます。
登録されているデータが少なければ、あまり問題はないのですが、データが多くなるとかなり遅くなってしまいます。

そこで、今回開発したアルゴリズムが「隣接音階差分マッチング方式」です。
これは、登録メロディと入力メロディそれぞれについて、隣り合う音階の差をデータ化して、比較処理を行うという方法です。
音階の差分を比較するため、絶対音階、相対音階に関わらず1回でマッチングができます。
比較処理で「どの程度一致しているか」を見る処理については、かぞえチャオ!の「知的テキスト比較システム(ITECS)」を応用したものを使っています。
ラインごとに比較していたのを、1データごとに比較できるよう改良したものを使っています。
これが意外と使えたため、結構早く思ったものができあがりました。

Cres「年内にできたら。。。って言ってたけど、もうできたんか?」
Forti「なんか、今まで作った処理を一部改良するだけでできたって感じかなぁ~」
Cres「実際、使ってみてどんな感じ?」
Forti「メロディの登録を前もってやらないといけないのが、ちょっとめんどうかもしれんね。」
Cres「データは少しずつ作っていかなダメってことか。」
Forti「そうやね。一応、MMLファイルのインポートにも対応してるから、MIDI楽器がなくてもデータは作れるよ!」
Cres「MMLって何?」
Forti「PC-98やPC-88にあったミュージックマクロ言語のこと。」
Cres「『@1O5E4&E8D8C4D4E4E4E2D4D4D2E4G4G2』ってやつか。」
Forti「今回のソフトでは、メロディの音階だけで長さは見ないから、音長データは無視されるけどね。」

「メロディ弾いてさがしチャオ!」は、チャオの部屋からダウンロードできます。

機能の詳細については、上記にアクセスして見てください。


nice!(0)  コメント(2)  トラックバック(0) 

nice! 0

コメント 2

タジイ

こんにちわ。
「メロディ弾いてさがしチャオ!」ですが、、、これは
ラジオで気に入った曲で曲名を聞きそこねた場合など、使えるんですかね。
その場合でも、今はネットでも曲が分かる時代になりましたね。
例えばこのような曲をつくりましたが、、、検索でますか。。
ある作曲家の耳コピー&アレンジですが、、、でてきたら嬉しいです。
出てこなかったら、、自分の曲として配信しようかな(←やっぱそれはできないか(笑))
 ↓
http://hazamahazama.cocolog-nifty.com/hidamari.mp3
by タジイ (2007-11-08 11:27) 

Crescendo

こんばんは。タジイさん。

「メロディ弾いてさがしチャオ!」ですが、曲を検索するためには、あらかじめメロディを登録したデータファイルを用意しないといけません。
データファイルがないと、曲は検索できません。

このメロディ登録やデータファイル作成は、「メロディ弾いてさがしチャオ!」でできるようになっています。

メロディの登録は、

・MIDI楽器を弾いて入力
・MIDIファイルを自動演奏してメロディパートだけ入力
・MML(ミュージックマクロ言語)で入力

の中から選べます。

このメロディデータとMP3やWMAファイルなどをリンクすると、メロディを弾くだけで、曲の検索ができるようになります。

このソフトは、データファイルをたくさんの人に作ってもらって、お互いに提供しあえる環境ができれば、ヒットすると思います。
この環境を如何にして作り出すかが、今の課題ですね!
データファイルの公開については、JASRACに問合せして、条件付でOKをもらっています。
「メロディ弾いてさがしチャオ!」、よかったら使ってみてください!
by Crescendo (2007-11-08 23:50) 

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。