タグ付けされた質問 「audio」

再生可能な可聴出力または音声ファイルの作成に関する課題。課題が音のテキスト表現に関連している場合は、[music]タグに適合させることができます。

7
ホワイトノイズを生成する
課題は、ホワイトノイズで作成されたオーディオファイルを生成することです。 要件と手順: プログラムは、ホワイトノイズのみを含むオーディオファイルを生成する必要があります。つまり、その強度は、すべての(合理的な)周波数とゼロ以外で同じです[ プロット例を参照]。 VLCの最新バージョンで音声ファイルを再生できる必要があります(回答を書いている時点)。 プログラムは暗号的に強力なランダム性、rand関数、または読み取りは必要ありません/dev/rand。 プログラムは、少なくとも理論的には少なくとも1時間のオーディオを生成できなければなりません(つまり、最大ファイルサイズなどのシステム制限は適用されません)。 スコアは、ソースコードのバイト数と、適用されるすべてのボーナスです。 サードパーティの外部ライブラリを使用しても問題ありません。 プログラムは、インターネットにアクセスせずに動作する必要があります。 ボーナスは次のとおりです。 -15%:オーディオファイルの形式の指定を許可します(少なくとも2つの選択肢。可能な選択肢の数はスコアを変更しません)。 -10%:オーディオファイルの長さを指定できます。 -5%:オーディオファイルのビットレートを指定できます。 設定は変数、ファイルに保存するか、コマンドラインパラメーターとして指定できます。パーセンテージは、ボーナスが適用される前の元のバイト数から計算されます。

1
0から9までの数字を声に出して話す
electronics.SEからのこの質問に触発されて、ここにあなたのための挑戦があります: 既存の音声合成ツールを使用せずに、一連の10進数(0〜9)を取り込んで声に出して話すプログラムまたはサブルーチンを作成します。 入力: 入力数字は、ASCII数字の文字列、整数の配列、BCDでエンコードされた数字など、合理的な形式で提供されるように要求できます。ソリューションが実行可能プログラムである場合、入力をコマンドラインパラメーター、標準入力から読み取る、またはその他の合理的な方法で取得します。 プログラムは、呼び出しごとに少なくとも8桁を話せる必要があります。あなたはあり、それが唯一の数字でない限り、最初の桁は、ゼロではないことを前提としています。 出力: プログラムは、オーディオデバイスを使用して番号を直接話すか、再生可能なサウンドファイルを出力する場合があります。出力ファイルがある場合は、標準のオーディオ形式であるか、生のサンプルデータで構成されている場合があります。生のサンプルデータを出力する場合は、再生に適したパラメーター(サンプルレート、サンプルあたりのビット数、エンディアンネス、符号付き/符号なし、チャンネル数)に注意してください。aplayでサポートされている形式が推奨されます。 数字の読み方の詳細は自由に決めることができますが、出力は、典型的な英語話者が理解できる方法で話された英語の数字で構成する必要があり、リスナーが正確に文字起こしできるように十分明確にする必要があります話されている8桁の乱数。いいえ、ビープ音をn回鳴らすだけではカウントされません。数字の間に一時停止を含めることを忘れないでください。 得点: 標準のコードゴルフスコアリングルールが適用されます。スコアは、コードの長さ(バイト単位)、またはコードがUnicodeテキストで記述されている場合はUnicode文字です。最低スコアが勝ちます。すべての言語が行きます。 Electronics.SEの最初の質問は組み込みプログラミングに関するものであったため、低レベル言語を使用して作成者に骨を投げるのが適切だと感じました。ソリューションがコンパイルされた言語で記述されている場合、スコアとしてバイト単位でコンパイルされた実行可能ファイル。(はい、Java .classファイルなどのプリコンパイルされたバイトコードでも構いません。)このオプションを使用することを選択した場合は、ソースコードと一緒にコンパイル済み実行可能ファイルのコピーを(たとえば、16進ダンプとして)回答に含めてくださいそして、生成に使用したコンパイラのバージョンとオプション。 佳作は、50担当者の恵みとともに、またの基準に適合していることを最初の答えに付与されます元の質問を、すなわち、フラッシュの4キロバイトとSRAMの1キロバイトを埋め込んだMCU上で実行することが可能です。 制限事項: 上記のファイルまたはリソースの長さをスコアの一部としてカウントしない限り、選択した言語の標準ランタイム環境の一部ではないファイルまたはネットワークリソースを使用することはできません。(これは、Webからのオーディオサンプルの読み込みなどを禁止するためです。) 選択した言語の標準ランタイム環境に含まれている場合でも、既存の音声合成ツールやライブラリ、またはオーディオデータのコンパイルを使用することはできません(サイズをスコアの一部としてカウントしない限り)。
15 code-golf  audio 

1
(ソフトウェア)モデムを作成してください!
目的 デザインのMo dulator / DEM odulatorペアできるだけ早く以上のシミュレートとして正確に伝達するデータへの電話サービス(POTS)を。 手順 ランダム(/dev/random送信に3〜4秒かかるまたは同様の)データをします。 変調器でデータを変調して、音声ファイルを生成します POTSシミュレーターを介してオーディオファイルを渡す。Python / Scipyがない場合は、フォームでファイルをアップロードするか、JSON APIリクエストを実行できます。 オーディオファイルを復調してバイナリデータに戻す 入力と出力が等値*であることを検証します(1000ビットごとに1つが破損する可能性があります) スコアは、送信されたビット数をオーディオファイルの長さ(ビット/秒)で割ったものです。 ルール 入力ファイルは3〜4秒、44.1 kHz、モノラルでなければなりません。 30 dBのSNRでシミュレーターを実行します(デフォルト) 復調器は、送信されたデータを10 -3以下のビット誤り率で再構築する必要があります(1000ビットあたり1)ます。 デジタル圧縮は許可されません(つまり、データを圧縮します。これは課題の範囲外です)。 4 kHzを超える周波数にデータを押し出そうとはしません。(私のフィルターは完全ではありませんが、比較的少ないタップ数でPOTSに似ています。) モデムプロトコルが受信機を同期/キャリブレーションするために短いプリアンブル(1秒以内)を必要とする場合、ペナルティは課されません。 可能であれば、ビープ音とブープ音の不協和音を聞くことができるように、アクセス可能なオーディオファイルをホストしてください。 例 これは、簡単な「オン/オフキーイング」(オーディオサンプルが含まれています!)による変調/復調を示すノートブックの例です。 スコアは100(ビット/秒)になります。はるかに悪い5 dB SNRで送信していることに注意してください。

4
ゲッターをゲット
タスク 私は誰もが自動コード生成と仕事中の時間の節約を愛していると思います。日中は多くのクラスとメンバーを作成するgetters必要があり、それらすべてを手動で作成する必要はありません。 タスクはgetters、すべてのクラスメンバーに対して自動的に生成されるプログラムまたは関数を作成することです。 入力 私たちの言語では、オブジェクトは非常に単純です。クラスおよびメンバーの名前は、文字から始まる必要[a-zA-Z]があり、文字のみを含めることができます[a-zA-Z0-9]。以下に例を示します。 class Stack { public overflow; protected trace; private errorReport; } 出力 これは、指定された例に基づいた有効な出力です。 class Stack { public overflow; protected trace; private errorReport; public function getOverflow() { return this->overflow; } public function getTrace() { return this->trace; } public function getErrorReport() { return this->errorReport; } } ゲッター getterメソッドの要件は次のとおりです。 …
13 code-golf  string  syntax  code-golf  math  primes  rational-numbers  code-golf  graphical-output  image-processing  code-golf  kolmogorov-complexity  music  audio  code-golf  string  code-golf  math  geometry  code-golf  math  sequence  combinatorics  code-golf  game  grid  board-game  code-golf  restricted-source  array-manipulation  source-layout  code-golf  base-conversion  binary  code-golf  math  physics  code-golf  math  number  date  expression-building  code-golf  array-manipulation  graph-theory  decision-problem  popularity-contest  error-correction  code-golf  kolmogorov-complexity  geometry  grid  code-challenge  arithmetic  combinatorics  set-partitions  code-golf  kolmogorov-complexity  sequence  fibonacci  code-golf  restricted-source  pristine-programming  code-golf  code-golf  string  kolmogorov-complexity  code-golf  arithmetic  code-golf  string  parsing  code-golf  code-golf  sorting  counting  permutations  3d  code-golf  code-golf  ascii-art  music  code-golf  string  code-golf  string  ascii-art  code-golf  string  code-golf  quine  polyglot  code-golf  math  string  code-golf  internet 

4
言葉の音
あるものを別のものとして視覚化できるように、人々は多くのことを書いてきました。今、私は手紙を音楽に翻訳できることを提案します!テキストファイルを取り、各文字がからの特定のノートに変換されたサウンドファイルを出力するプログラムを作成するのがあなたの仕事C3-C8です。 免責事項-私は実際に音楽が良い音を出すことを期待していませんが、私は驚かれることを望んでいます。 仕様書 ファイルの名前を文字列として、BPM(1分あたりのビート)をintとして受け取ります 大文字AをメモにするC3 そして、以下の順番ですべてのキャラクターを半歩上に移動します。 ABCDEFGHIJKLMNOPQRSTUVWXYZ ()-,;.'"abcdefghijklmnopqrstuvwxyz はい、すべての文字が使用されるわけではありません。すべての文字がオクターブにまたがっているからです。 この方法でファイル内のすべての文字を翻訳します 与えられたBPMで4分音符としてメモをまとめる サウンドファイルとして保存するか(midiが最も簡単だと思いますが、何でも構いません)または再生します 正常な入力形式であれば問題ありません 標準的な抜け穴はありません これはコードゴルフなので、バイト単位の最短コードが勝ちです! ボーナス 出力の転置を許可する-50バイト 複数のファイルを取得することで、複数のトラックを互いに重ねることができます-75バイト 連続した文字を1つの長いメモに結合する-50バイト 編集:うわー、負のスコアがあります。土曜日に勝者を発表します。
11 code-golf  music  audio 

2
ただ一つのメモ-楽器の合成[終了]
閉まっている。この質問はトピック外です。現在、回答を受け付けていません。 この質問を改善したいですか? 質問を更新することがありますので、上のトピックコードゴルフスタックExchange用。 3年前に閉店しました。 ステートメント タスクは、(お好みの)汎用プログラミング言語の機能を使用して、(お好みの)楽器の音(1つのノートを演奏)を合成することです。 2つの目標があります。 結果として生じる音の品質。実際の楽器にできるだけ似ている必要があります。 最小限。コードを1500バイト未満に維持することをお勧めします(基本的なサウンド生成のみがある場合はそれよりも少なくなります)。 生成関数のみを提供する必要があり、定型句はスコアにカウントされません。 残念ながら、音の忠実度についてスコアを計算することはできないため、厳密な規則はありません。 ルール: サンプルライブラリ、特殊な音楽生成物に依存しません。 ネットワークからダウンロードしたり、マイクやオーディオカードのMIDIなど、外部のようなものを使用したりすることはありません。 コードサイズの測定単位はバイトです。ファイルは現在のディレクトリに作成できます。既存のファイル(係数テーブルなど)が存在する場合がありますが、そのコンテンツはスコアに追加され、名前で開く必要があります。 ボイラープレートコード(スコアにカウントされない)は、符号付き整数の配列(リスト)を受け取り、出力のみを処理します。 出力形式は、オプションのWAVヘッダーを使用して、1秒あたり44100サンプルのリトルエンディアン16ビットワードで署名されています。プレーンなwavの代わりに圧縮されたオーディオを出力しようとしません。 合成するために別の楽器を選択してください(または楽器のその他の品質とコードサイズのカテゴリ)。ただし、最初は何をシミュレートしているかを教えてはいけません。他のユーザーにコメントで推測させてください。 電子機器は使用しないでください。 ドラムは楽器です。人間の声は楽器です。 ボイラープレート 一部の言語の定型文を次に示します。あなたの言語にも同様の定型文を書くことができます。「g」関数は、デモ用です(1秒440 Hzのサイントーン)。 C: //#!/usr/bin/tcc -run #include <stdio.h> #include <string.h> #include <math.h> #include <stdlib.h> /* void g(signed short *array, int* length) { *length = 44100; int i; for(i=0; i<44100; ++i) …

3
キーボードをキーボードにする
仕事 ボタンを押すと、キーごとに異なるサウンドを出力するプログラムを作成する必要があります。 使用するキーは次のとおりです。 1!2"34$5%6^78*9(0qQwWeErtTyYuiIoOpPasSdDfgGhHjJklLzZxcCvVbBnm ノートはで始まり、C上の各キーは1つの半音を追加します。 少し簡単にしましょう。2つの同様のタスクから選択できます。 1)別のキーが押されるまで続くキーが押されたときに別のノートを出力します。このプログラムは無期限に実行されます 2)上記の文字のみを含む文字列を入力として、各ノートを正確に1秒間出力します(0.05秒のバリエーションが許可されます) 入力 押されているキー 上記のシンボルのみを含む単一の文字列 出力 別のキーが押されるまで鳴る単一の音符 一連のメモ、それぞれ1秒長 ノート Letter | Note -------+------- 1 | C ! | C# 2 | D " | D# 3 | E 4 | F $ | F# 5 | G % | G# 6 | A ^ …
10 code-golf  audio 

2
RTTTL曲を再生する
ユーザーquartataがこのチャレンジを投稿しましたが、何らかの理由で自分のコンピューターでMIDIファイルを再生できないという事実を無視しました。 標準入力からRTTTL形式の曲を読み取り、曲名を標準出力に出力して(適切な速度とピッチで)再生する完全なプログラムを作成して、彼を助けましょう。 フォーマットの詳細 RTTTLは、かなり馬鹿げたもので、仕様が不十分な着信音フォーマットです。これは、名前、いくつかのデフォルト値、および単純なテキスト形式の一連のメモ(一度に1つのメモのみ)で構成されます。 例: fifth: d=4,o=5,b=63: 8P, 8G5, 8G5, 8G5, 2D#5 名前は、コロンで終了する文字列です。ここでの名前は「第五」です。プログラムは、15文字以上の名前を受け入れる必要があります。 次に、デフォルトセクション(コロンで終了)には、曲のデュレーション(d)、オクターブ(o)、および毎分ビート(b)のデフォルト値がいくつかリストされています。これらはカンマで区切られ、「key = value」構文を使用します。各「key = value」部分の周囲には、スペースをいくつでも含めることができます。デフォルト値d、o、bがこの順序ですべて存在すると想定できます。デュレーションとオクターブについては後で説明します。bpmは、1分間に再生する必要があるビートの数(4分音符に対応)を指し、20〜900の整数値(両端を含む)をサポートする必要があります。 次に、実際の曲は「DPO」構文を使用してコンマ区切りの一連のノートとしてリストされます。ここで、Dはデュレーション、Pはピッチ(ノート)、Oはオクターブです。各「DPO」パーツの周りには、スペースと改行がいくつあってもかまいません。 デュレーションは1から32までの2の累乗であり、これはノート全体の一部を表します。したがって、たとえば値4(4分音符)は値8(8分音符)の2倍になります。期間が欠落している可能性があります。その場合、デフォルトの期間が使用されます。持続時間は、ドット(.)の存在によっても変更できます。具体的には、ドットによってノートの持続時間が50%長くなります。ドットの位置について全員が同意するわけではないため、ピッチの後またはオクターブの後にドットを受け入れる必要があります(つまり、「DP.O」と「DPO。」の両方が機能するはずです)。 ピッチはA、B、C、D、E、F、G、A#、C#、D#、F#、G#、Pのいずれかです。AG#は標準の音符です(ノート:フラットなし、対応する鋭いノートを使用) Pは一時停止です。ピッチは必要なノートの唯一の部分であり、大文字と小文字は区別されません。 最後に、オクターブは通常4〜8の数値ですが、1〜8の任意の数値をサポートする必要があります。たとえば、C4は標準の中央のCで、周波数は約261.63Hzです。オクターブが欠落している可能性があります。その場合、デフォルトのオクターブが使用されます。一時停止にはオクターブが指定されていないと想定できます(意味がないため)。 他の課題で述べたように、このサイトを使用して、テストのためにRTTTL曲をMIDI形式に変換できます(ただし、まったく同じ仕様に準拠していない場合があります)。 要件: プログラムは、各ノートを適切な速度とピッチで再生する必要があります。可聴でピッチが認識できる限り、あらゆる種類の音(正弦波、三角波、方形波、ピアノ音、ベル音など、標準的なビープ音、波音、MIDI音など)を使用できます。 各ノートには、それよりも短い64分音符を超えない指定の期間連続して再生されない、またはしなければならないあなたのような何か使用している場合を除き、ADSRエンベロープのリリースフェーズは、次のポーズを介して、または次のノートの上に続けることができ、その場合には、 。 2つの連続する音符のピッチが同じである場合、短い休憩(最初の音符の継続時間の一部として64分音符の長さを使用しない)または不均一な音(このような音)を使用して、それらを明確に区別する必要があります。上記のADSRエンベロープとして)、または少なくとも十分変化している場合はフェーズ変更を介して。2つの連続した一時停止は、全体の継続時間を伴う単一の一時停止と同じように処理する必要があります。 プログラムは、無料で入手できるソフトウェアを使用して、Linuxで実行できる必要があります。標準入力から曲を読み取り、曲名を標準出力に出力します。 入力が上記の仕様と一致しない場合の動作は規定されていません。プログラムはエラーを無視したり、メッセージを出力したり、何かを再生したり、ハングしたり、クラッシュしたりする可能性があります。 標準の抜け穴は許可されていません。 得点 コードゴルフ、最短プログラム(UTF-8バイトで測定)が優勝します。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.