ディープノートを生成するスクリプトを作成する


11

THX深いノートは、オーディオ/ビデオ・生産技術で最も有名な音の一つです。作成者によると、最終結果を生成するには約20,000行のCコードが必要でした。それ以上のことができる。

あなたの仕事は、米国特許商標庁が提供するように、THXサウンドの商標の説明に適合するサウンド(ファイルまたはハードウェアに直接)を生成する任意の言語でスクリプトを記述することです。

THXロゴのテーマは、7メジャーにわたる30ボイスで構成されており、200から400 Hzの狭い範囲で始まり、3オクターブを含むあらかじめ選択されたピッチにゆっくりと変化します。30ボイスは、200 Hz〜400 Hzのピッチで始まり、4小節目までに3オクターブにわたる事前に選択されたピッチに到達します。最高音はわずかに離調しますが、最低音2倍の声の数は2倍になります。

「事前に選択されたピッチ」は、実際のTHXディープノートのピッチとほぼ同じである必要があり、Eフラットのキーにあることに注意してください。

どの言語でもそうするための最短のコードが勝ちます。


Import[youtube]回答を避けてください
— ベリサリウス博士13

サウンドを「生成」するには、一般に、事前に生成されたサウンドを他の場所からインポートすることはできません。
— ジョーZ.

3
仕様が緩すぎる。250 Hzで始まる30波形(任意)のプログラムを作成し、それを1秒間再生し、250、500、および1000 Hz(3オクターブ)の3つのグループに分け、1秒間再生して終了することができると思います1000 Hzグループを離調します。「認識可能」であると指定すると、勝者の客観性が問題になります。これは人気コンテストとしてはうまくいくと思います。
— 塩奈

私も今考えています。つまり、代わりに人気コンテストであるこの問題の2番目のバージョンを投稿します。(ルース仕様は、少なくともいくつかの興味深い短いソリューションを作成する必要があります。)
— ジョーZ.

2
すでに140文字のソリューションがあります。
— MSalters

回答:


2

C、323バイト

#include<math.h>
#define A y=-2*y*y*y+3*y*y
main(i,j,o,e){e=44100;write(1,"RIFF´9WAVEfmt      D¬  ±    data9",44);float r[30],x,y,k,v;for(i=0;i++<30;r[i]=.5-(9*i%7)/7.);for(i=0;i++<9*e;){x=2.*M_PI*i/(0.+e),k=y=1-i/(8.*e),v=0,A,A,A,y=y>1?1:y;for(j=0;j++<30;o=j%6,v+=(7-o)*.1*sin(x*(20<<o)*(1+y*r[j])));write(1,&v,4);}}

(特に、NUL文字をテキストボックスに貼り付けることはできません。ここで元のファイルを表示またはダウンロードできます)

使用法:

gcc deep-note.c -o deep-note
./deep-note > deep-note.wav

生成されたサウンドのプレビューを聞くにはここをクリックしてください!


試して良いが、それは元から簡素化重く響き終わる
— QWR

2
確かにそうです。オリジナルでは、質問で参照された質問のコードの20000行によって制御される30個の発振器を使用しています。この最小限のソースコードには400バイト未満しか含まれていません...何を提供していますか?
— マチューロディック14年

1
これは、Deep Noteが1 kHzでサンプリングされた200 bps MP3エンコーディングを通過したように聞こえます。
— ジョーZ. 14年

それでも、この質問に答えようとしても+1。
— ジョーZ. 14年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.