89

私はしばらくの間、コンテンツの手続き型生成について多くのことを考えてきましたが、手続き型音楽の実験はあまり見たことがありません。モデル、アニメーション、テクスチャを生成する素晴らしい技術がありますが、音楽はまだ完全に静的であるか、単純にレイヤー化されたループ (Spore など) です。

そのため、最適な音楽生成手法を考えていて、他の人が何を考えているのか興味があります。以前にそれを検討したことがなくても、何がうまくいくと思いますか? 回答ごとに 1 つのテクニックをお願いします。可能な場合は例を含めてください。この手法では、既存のデータを使用することも、おそらく何らかの入力 (気分、速度など) に基づいて、完全にゼロから音楽を生成することもできます。

4

19 に答える 19

42

最も成功するシステムは、おそらくいくつかの技術を組み合わせるでしょう。あらゆるジャンルの音楽でメロディー、ハーモニー、リズム、ベースシーケンスを生成するのに適したテクニックが1つ見つかるとは思えません。

たとえば、マルコフ連鎖は、旋律および調和数列の生成に適しています。この方法では、チェーン遷移確率を構築するために既存の曲を分析する必要があります。マルコフ連鎖の本当の美しさは、状態があなたが望むものになり得るということです。

  • メロディーの生成には、キー相対音符番号を試してください(たとえば、キーがハ短調の場合、Cは0、Dは1、D#は2など)
  • ハーモニーを生成するには、コードのルートのキー相対ノート番号、コードのタイプ(メジャー、マイナー、ディミニッシュ、オーグメントなど)、およびコードの反転(ルート、1番目または2番目)の組み合わせを試してください。

ニューラルネットワーク時系列予測(予測)に非常に適しています。つまり、既存の人気のあるメロディー/ハーモニーに対してトレーニングされた場合、音楽シーケンスを「予測」するのにも同様に適しています。最終結果は、マルコフ連鎖アプローチの結果と同様になります。メモリーフットプリントを削減する以外に、マルコフ連鎖アプローチに勝る利点は考えられません。

ピッチに加えて、生成された音符または和音のリズムを決定するための持続時間が必要になります。この情報をマルコフ連鎖状態またはニューラルネットワーク出力に組み込むか、個別に生成して独立したピッチと持続時間のシーケンスを組み合わせるかを選択できます。

遺伝的アルゴリズムを使用して、リズムセクションを進化させることができます。単純なモデルでは、最初の32ビットがキックドラムのパターンを表し、2番目の32ビットがスネア、3番目の32ビットが閉じたハイハットなどのバイナリ染色体を使用できます。この場合の欠点は、新しく進化したパターンの適合性を評価するために、継続的な人間のフィードバックが必要になることです。

エキスパートシステムを使用して、他の手法で生成されたシーケンスを検証できます。このような検証システムの知識ベースは、優れた音楽理論の本やWebサイトから入手できる可能性があります。RicciAdamsのmusictheory.netを試してみてください。

于 2008-10-08T01:47:04.257 に答える
28

セルオートマトン -読む

こちら で試すこともできます。

編集:

rakkarage は別のリソースを提供しています: http://www.ibm.com/developerworks/java/library/j-camusic/

于 2008-10-07T23:45:15.563 に答える
10

これらの手法については 50 年以上の研究が行われてきましたが、コンピューター ミュージックやアルゴリズム合成の歴史に精通していない開発者によって見過ごされがちです。これらの問題に対処するシステムと研究の多数の例は、次の場所にあります。

http://www.algorithmic.net

于 2010-07-08T12:12:02.623 に答える
7

簡単である程度効果的なアルゴリズムは、1/f ノイズ (別名「ピンク ノイズ」) を使用して音階からデュレーションとノートを選択することです。これは一種の音楽のように聞こえ、良い出発点になる可能性があります。

より良いアルゴリズムは、「マルコフ連鎖」を使用することです..いくつかのサンプル音楽をスキャンして、確率の表を作成します。最も単純なケースでは、C が A に続く可能性が 20% であるようなものになります。これをより良くするために、過去のいくつかの音符のシーケンスを見てください。たとえば、「CA B」は B に続く可能性が 15% です。 Bb などが続く可能性が 4% です。次に、以前に選択した音符の確率を使用して音符を選択します。この非常に単純なアルゴリズムは、かなり良い結果を生成します。

音楽生成のためのマルコフ連鎖

于 2008-10-08T00:14:07.407 に答える
6

Dmitri Tymoczkoには、興味深いアイデアと例がいくつかあります。

http://music.princeton.edu/~dmitri/whatmakesmusicsoundgood.html

于 2008-11-06T11:24:34.037 に答える
4

私のソフトウェアは応用進化論を使って音楽を「成長」させています。このプロセスは、Richard Dawkins のThe Blind Watchmakerプログラムに似ています。MusiGenesis は音楽要素をランダムに追加し、追加された各要素を保持するかどうかをユーザーが決定します。アイデアは、好きなものを維持し、正しく聞こえないものは捨てることであり、それを使用するために音楽の訓練を受ける必要はありません.

インターフェースが壊れていますが、古いです - 訴えてください。

于 2008-10-08T01:08:41.040 に答える
4

私はいつも iMuse システムを使用した古い Lucasarts ゲームが好きでした。これは、ゲームの終わらない反応的なサウンドトラックを生成し、非常に音楽的でした (そのほとんどがまだ作曲家によって作成されていたため)。ここで仕様 (特許を含む) を見つけることができます: http://en.wikipedia.org/wiki/IMUSE

任天堂は、iMuse と同様のアプローチを使用してその場で音楽を作成または影響を与えている唯一の企業のようです。

あなたのプロジェクトが非常に実験的なものでない限り、私は作曲家の使用を放棄しません。実際の人間の作曲家は、アルゴリズムよりもはるかに音楽的で聴きやすい結果を生み出します。

詩を書くことと比較してください。非常に前衛的に聞こえる無意味な詩を簡単に作成できますが、アルゴリズムを使用してシェイクスピアを複製することは、控えめに言っても困難です。

于 2009-02-18T09:56:26.300 に答える
3

退屈ではない手続き型音楽生成に関する研究は、はるか昔にさかのぼります。Computer Music Journal の新旧号を閲覧 http://www.mitpressjournals.org/cmj (実際のドメイン名はありませんか?) これには、音楽合成のいじくり回し、はんだごてジョッキー、ビット ヘルダー、および学術研究者が実際に使用する深刻な技術記事があります。これは、主要な書店で見つけることができるいくつかの雑誌のようなふわふわしたレビューやインタビューのぼろきれではありません。

于 2008-10-08T01:25:14.767 に答える
3

SoundHelix (http://www.soundhelix.com) をご覧になりましたか? それはかなりきちんとした音楽を生成するアルゴリズムのランダムな音楽作成のためのオープン ソースの Java フレームワークです。SoundHelix をスタンドアロン アプリケーションとして、Web ページに埋め込まれたアプレットとして、JNLP ベースのアプレットとして、または独自の Java プログラムに含めることができます。

SoundHelix で生成されたサンプルは、http: //www.soundhelix.com/audio-examplesにあります。

于 2011-11-04T06:23:30.093 に答える
2

そんな大きな話題。morganpackard.com で私の iPad アプリ、Thicket、または私の Ripple ソフトウェアをご覧ください。私の経験では、ダイナミックな音楽生成へのアカデミックなアプローチのほとんどは、アカデミックに聞こえるものを思いつきます。より成功したものは、クラブ/エレクトロニカの世界の周辺にあると思います。この点でモノレイクは私のヒーローです。非常に聞き取りやすいもので、非常にコンピューターで生成されたものです。自分の音楽も悪くない。Paul Lansky の "Alphabet Book" は、特に彼が学者であることを考えると、非常に聴きやすいアルゴリズム音楽の良い例です。

于 2010-11-11T15:20:45.037 に答える
1

Algorithmic Compositionは、使用されるいくつかの方法の良いツアーです。

「対象となるトピックは、マルコフ モデル、生成文法、遷移ネットワーク、カオスと自己相似性、遺伝的アルゴリズム、セル オートマトン、ニューラル ネットワーク、人工知能です。」

この幅広いトピックの良い出発点ですが、各方法がどのように機能するかについて詳しく説明していません. それぞれの概要を説明していますが、それらについての知識がなければ十分ではありません。

于 2010-12-12T04:56:45.743 に答える
1

あなたが説明している特定のテクニックは、Thomas Dolby が 10 年か 15 年前に取り組んでいたものですが、彼がそれを何と呼んだか思い出せないので、適切な検索用語を提供することはできません.

ただし、このウィキペディアの記事とこのメタフィルターのページを参照してください。

于 2008-10-07T23:58:47.453 に答える
1

私が検討しているテクニックは、小節程度までの小さな音楽パターンを作成することです。これらのパターンに「興奮」、「激しい」などの感情識別子をタグ付けします。ある状況に合わせて音楽を生成したい場合は、これらのタグに基づいていくつかのパターンを選び、それで演奏したい楽器を選びます。楽器に基づいて、パターンを組み合わせる方法を見つけ出し (たとえば、ピアノでは、手の幅に応じて、すべてを同時に演奏できる場合があります。ギターでは、ノートを立て続けに演奏する場合があります)、それを PCM にレンダリングします。 . さらに、キーの変更、速度の変更、エフェクトの追加などを行うことができます。

于 2008-10-07T23:50:50.527 に答える
0

あなたが求めているものとはまったく異なりますが、Content Based Music Similarityと呼ばれる DJ セットを自動的に生成することを検討している人を知っていました。

于 2008-12-31T18:31:39.087 に答える
0

音楽がどのように結びついているかについてのより深い理論に興味がある場合は、Bill Sethares のサイトに興味深いひねりがあります。

于 2008-12-31T18:32:48.787 に答える
0

私は手続き型音楽用の Python モジュールに取り組んできました。音符、音階、和音構成について知っていることをプログラムして、それらの制約からコンテンツをランダムに生成できるようにしました。そのようなシステムを教えることができるより多くの理論とパターンがあると確信しています。特に、主題をよりよく理解している人によって。次に、これらのシステムを遺伝的アルゴリズムまたはランダム化されたコンテンツ生成の制約として使用できます。

ここで私の実装を確認できます。特に、ランダムに生成されたリードの例が役立つ場合があります。コード進行をしっかり理解している人は、そのようなテクニックから曲の構造を作成し、その上にこのような拘束されたランダムなメロディーを実装することができます. 私の音楽理論の知識はそこまで及んでいません。

しかし、基本的には、生成したい種類の音楽の理論をエンコードし、それを何らかのアルゴリズムの制約として使用して、その理論の範囲を手続き的に探索する必要があります。

于 2011-05-06T22:13:15.757 に答える
0

コペンハーゲン大学の CS 部門の「プログラミング言語の理論と実践」研究グループの「8.1」というプロジェクト提案を行うことを検討しています。

8.1 音楽コーパスの自動収集と統計分析

伝統的な楽譜の分析は、同じ作曲家または同時期の他の作曲家による他の曲とのあいまいな比較という文脈の中で設定された、単一の曲のリズム、コード シーケンス、およびその他の特徴を分析する 1 人または複数の人で構成されます。

従来の音楽の自動分析では、楽譜はほとんど扱われていませんでしたが、信号分析と機械学習技術を使用して、ムードやジャンルなどを抽出して分類することに重点が置かれていました。対照的に、DIKU での初期の研究は、楽譜の分析の一部を自動化することを目的としています。付加価値は、手作業では簡単に行うことができず、機械学習技術では意味のある分析ができない大量の楽譜から情報を抽出できる可能性です。

これは、私が見ているように、あなたの質問とは逆の方向であり、生成されたデータは、手続き型の音楽生成のいくつかのインスタンスで使用できると思います。

于 2009-01-27T20:45:40.887 に答える
0

90 年代後半に、Microsoft は「インタラクティブ ミュージック コントロール」と呼ばれる ActiveX コントロールを作成しました。残念ながら、彼らはプロジェクトを放棄したようです。

于 2008-10-07T23:53:12.707 に答える