• ベストアンサー

MIDIのプログラミング

a-kumaの回答

  • ベストアンサー
  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.1

> ある文字列(GGGTTACTAATAACCTATAなど)を、音に変換して鳴らしたい なんか、意味不明な質問だなあ、と思ってみてたんですけど、DNA のパターンを 音楽にしてみたい、ってことなんですね :-) 自分では、実際にやったことはないのですが、いろいろと解説をしているWebページが あります。 ソース付きで、ざっくりとした説明をしてあるのが参考URLのひとつめ。後、実際に コードを書くには、「チャンネルメッセージ」というコード(質問にある音番号など) を知らなくてはいけないのですが、参考URLのふたつめのサイトに規格の内容が 書かれています。 後は、C を知っていれば、何とか書けるんじゃないでしょうか。 > 二つならべて同時進行で音を鳴らしたい MIDI は、16チャンネルありますので、可能です。 でも、実際に音楽として聞くならば、単純にATCGの四つだけを四つの音色にマップ するだけでは、物足りないんじゃないかな? # そのあたりをあれこれ考えるのが、楽しそうですね

参考URL:
http://www.h2.dion.ne.jp/~myhobby/music/midi/midi.html,http://www.b-sharp.com/midi/index.html
yabuchanchan
質問者

お礼

お返事ありがとうございます。 早速、HPみてみましたが非常に役にたちました。  また、音への変換法ですが、確かに塩基は4つですけど、二つの組み合わせで考えると、4の二乗で16通りの組み合わせがあります。 その中から、同じ組み合わせの4つを除くと、12になり音として12こは用意できます・・・・・。ってなことを考えたりもしております。

関連するQ&A

  • プログラミングC

    以下に示すプログラムは、キーボードから39文字以下の文字列を入力した後で、その文字列を表示するプログラムである。ただし、文字列の表示においては、printf命令における変換指定で、%sを使用するのが一般的であるが、以下のプログラムあえて%sを使用せずに、%cを使っている。このプログラムについてキーボードから入力される文字列の文字数が391文字以下である限り、その文字列を正しく表示できるよう、下線部を埋めてプログラムを完成させなさい。 char x[40],i printf("39文字以下の文字列を入力:"); scanf("%s",x); for(i=0;x[i]_____;i++) printf("%c",x[i]); printf("です。\n"); [実行例] 39文字以下の文字列を入力:programming 入力された文字列はprogrammingです。

  • C言語でMIDIを鳴らしたいです。

    C言語でMIDIを鳴らしたいです。 現在Microsoft Visual C++ Express Edition 2010(または2008)を使ってC言語(C++ではなく)の勉強をしているのですが、 Express EditionではMIDIを鳴らすことはできないのでしょうか? midiファイルを読み込んで再生するのではなく、Win32APIなどで特定の音を鳴らすようにしたいです。 例えば、ボタンを押したらドの音が鳴るという程度のプログラムです。 サンプルプログラムをいくつか検索してコンパイルしてみたのですが、バージョンが古いからなのか、Express Editionでは無理なのかエラーが出てしまいます。 どのようなプログラムを作れば音を鳴らすことができるのでしょうか? できればソースを示していただけるとありがたいです。

  • プログラミング

    C++でキーボードから文字を小文字で入力し、それを大文字へ変換する関数へ変換してmainで表示するプログラムを教えてください

  • midiからどうすれば

    midiシーケンスからwaveサウンドにするにはどうすればいいですか? フリーのMusicStudioProducerで作ったMIDIデータをSMFに変換してmusicstdにドラッグしても変な音しかでません。midiデータをmusicstdで編集したいのですが、やり方を教えてください。

  • MIDI→WAV変換は成功。だが、音がでない><

    とあるMIDIファイルを、Timidi95というソフトを使ってWAVに変換しました。その際に「tone bank.Program5に設定する音色がありません」といったコメントが出てきました。他にも、「drum set 0.programに設定する音色がありません」なるものまで出てきました。 変換はできたものの音が聞けません。 どうやったら音が聞けるようになるか教えて頂けないでしょうか?

  • プログラミングを応用するために学ぶべきこと

    プログラミングを覚えるにあたりVisualC#からの導入がよいと勧められてC#を覚え始めました。 C#を覚え始めて、1年くらい経ちましたがいまだにどうやって勉強していけばいいのかわかりません。 四則演算や、文字列を表示する方法等、解説書でもとりあげられてる方法についてはわかりますが、変換等の内部で何がどうなってるのかわかりにくいプログラムに手を出すと全くお手上げ状態です。 例えばWAVファイルをMP3ファイルに変換するプログラムを作りたいとします。 そのためのプログラムを打とうとすると、解説書に書いてある方法を使う部分まではわかるのですが、 その後プログラムをどのように動かせばよいかがわからなくなってしまい断念する結果となります。 C#の解説書を読んでも、何をすればいいのかさっぱりわかりません。 どのような感じかというと、 とりあえず変換元のファイルを指定します。 そのあとこのファイルを読み込んで変換したいわけですが、どうやって変換するためのプログラムを動かすのかとか、変換する過程でレートの値の調整とかをどのように指定して、どういった手順でファイルを出力するのか。とか解説にはないようなことをやりたい場合どうやって組んで動かせばいいのか見当がつけれないでいます。 ほかの人の作ったソースコードなどを読めばわかりそうなのですが、そういったソースを探してみてもあまり参考になるようなものが見つかりませんでした。 目的のプログラム別に、こういった処理にはこういった感じのプログラムの組み方をすればいい。といった感じのことを勉強するにはどうしたらいいのでしょうか。 こういったことを質問すると「慣れるまで練習しろ」とか言われますが、慣れるために必要なものが何か分からない状態で、慣れることは無理なんです。 説明の内容が不十分で申し訳ないですが、よろしくお願いします。

  • MIDIをまったく劣化させずに録音

    私は、MIDIをCDに焼きたいと思って、WAVなどに変換(録音)するソフトをいくつか試してみたのですが、変換後生成されたファイルの音の厚み(?)が何か薄っぺらになってしまい、変な音になってしまいます。 なので、MIDIを再生したときに出るその音のまんまを録音できるような方法、またはソフトはありませんでしょうか? お願いします。。

  • MIDIからmp3に

    cherryというフリーの作曲ソフトを使って曲を作っているのですが、 ウォークマンに入れる為にMP3にする時に MIDI→wave→MP3 ってな感じに変換しています。MIDIから直接MP3に持ってっちゃってくれるようなフリーソフトが見当たらなかったので(ぁ MIDIからwaveへ変換する過程で、何故か音が物凄く小さくなってしまうんです。 仕方ないので、waveにしたやつをいじれるソフトをつかって音を大きくするのですが、大きくする時に物凄い雑音が入ってしまって、、、と色々上手く行かないんです; 何か良い方法があれば御教授願います。

  • MIDIとMP3

    趣味で作曲をしています。 今までいろんな作曲サイトをみてきて、 単純にMIDIをMP3に変換すればリアルな音になると 思い込んできたのですが、 MP3にしてもMIDIの時と何ら差がありませんでした。 リアルな音にするのには何か特別なものが必要なのでしょうか?? できれば初心者にもわかるように詳しく教えてくださると ありがたいです。 お願いします。 (ちなみにフリーソフト「サクラ」でMIDIを作っています)

  • SPCからMIDIに変換するときの質問

    SPCをMP3に変換するためにSPCをまずMIDIに変換したのですが音がピアノのようになって、もとのスーパーファミコンのゲームと全く同じような音になりません。もとのスーパーファミコンのゲームと全く同じ音でMIDIに変換するにはどうしたらよいか教えてください。お願いします。