- プロンプト実行例
こんにちは!
かっこいい曲
かっこいいロック調のBGMを生成します。力強いベースラインとエネルギッシュなリズムを特徴としています。
html1<!DOCTYPE html> 2<html> 3<head> 4 <title>Cool Rock BGM</title> 5 <style> 6 button { 7 padding: 10px 20px; 8 font-size: 16px; 9 margin: 10px; 10 } 11 </style> 12</head> 13<body> 14 <button onclick="startBGM()">Play</button> 15 <button onclick="stopBGM()">Stop</button> 16 <input type="range" min="0" max="100" value="70" oninput="changeVolume(this.value)"> 17 18<script> 19let audioContext; 20let gainNode; 21let isPlaying = false; 22let scheduledNotes = []; 23 24const BPM = 140; 25const BEAT_LENGTH = 60 / BPM; 26 27function initAudio() { 28 audioContext = new (window.AudioContext || window.webkitAudioContext)(); 29 gainNode = audioContext.createGain(); 30 gainNode.connect(audioContext.destination); 31 gainNode.gain.value = 0.7; 32} 33 34function createOscillator(freq, type, startTime, duration) { 35 const osc = audioContext.createOscillator(); 36 const oscGain = audioContext.createGain(); 37 38 osc.type = type; 39 osc.frequency.value = freq; 40 41 oscGain.gain.setValueAtTime(0, startTime); 42 oscGain.gain.linearRampToValueAtTime(0.3, startTime + 0.01); 43 oscGain.gain.linearRampToValueAtTime(0, startTime + duration); 44 45 osc.connect(oscGain); 46 oscGain.connect(gainNode); 47 48 return osc; 49} 50 51const bassline = [ 52 { note: 49, duration: 0.5 }, // G1 53 { note: 49, duration: 0.5 }, 54 { note: 46, duration: 0.5 }, // F#1 55 { note: 49, duration: 0.5 }, 56]; 57 58const melody = [ 59 { note: 73, duration: 0.25 }, // G4 60 { note: 71, duration: 0.25 }, // F4 61 { note: 68, duration: 0.25 }, // D4 62 { note: 71, duration: 0.25 }, // F4 63]; 64 65function noteToFreq(note) { 66 return 440 * Math.pow(2, (note - 69) / 12); 67} 68 69function playSequence(startTime) { 70 const sequenceLength = 2; // 2秒で1ループ 71 72 // ベースライン 73 bassline.forEach((note, index) => { 74 const freq = noteToFreq(note.note); 75 const osc = createOscillator(freq, 'sawtooth', 76 startTime + index * BEAT_LENGTH, 77 note.duration); 78 osc.start(startTime + index * BEAT_LENGTH); 79 osc.stop(startTime + index * BEAT_LENGTH + note.duration); 80 scheduledNotes.push(osc); 81 }); 82 83 // メロディ 84 melody.forEach((note, index) => { 85 const freq = noteToFreq(note.note); 86 const osc = createOscillator(freq, 'square', 87 startTime + index * BEAT_LENGTH, 88 note.duration); 89 osc.start(startTime + index * BEAT_LENGTH); 90 osc.stop(startTime + index * BEAT_LENGTH + note.duration); 91 scheduledNotes.push(osc); 92 }); 93 94 // ドラム的なノイズ 95 for (let i = 0; i < 4; i++) { 96 const noiseOsc = createOscillator(150 + Math.random() * 50, 'square', 97 startTime + i * BEAT_LENGTH, 98 0.1); 99 noiseOsc.start(startTime + i * BEAT_LENGTH); 100 noiseOsc.stop(startTime + i * BEAT_LENGTH + 0.1); 101 scheduledNotes.push(noiseOsc); 102 } 103 104 if (isPlaying) { 105 setTimeout(() => { 106 playSequence(startTime + sequenceLength); 107 }, (sequenceLength - 0.1) * 1000); 108 } 109} 110 111function startBGM() { 112 if (!audioContext) { 113 initAudio(); 114 } 115 if (!isPlaying) { 116 isPlaying = true; 117 playSequence(audioContext.currentTime); 118 } 119} 120 121function stopBGM() { 122 isPlaying = false; 123 scheduledNotes.forEach(osc => { 124 try { 125 osc.stop(); 126 } catch (e) { 127 // 既に停止している場合のエラーを無視 128 } 129 }); 130 scheduledNotes = []; 131} 132 133function changeVolume(value) { 134 if (gainNode) { 135 gainNode.gain.value = value / 100; 136 } 137} 138</script> 139</body> 140</html>
この実装の特徴:
- パワフルなベースライン
- 低音域でのサwtooth波による力強い音色
- シンプルながらも印象的なフレーズ
- キャッチーなメロディ
- square波による特徴的な音色
- リズミカルなパターン
- ドラム的な要素
- ノイズ的な音を使用してリズム感を強調
- 規則的なパターンでグルーブ感を演出
- 音楽理論的な特徴
- Gマイナーをベースとした調性
- 4/4拍子の力強いリズム
- 140BPMの疾走感のあるテンポ
使い方:
- Playボタンで再生開始
- Stopボタンで停止
- スライダーで音量調整可能
注意点:
- ブラウザの自動再生ポリシーにより、ユーザーインタラクションが必要
- モバイルデバイスでの動作は端末の性能に依存
- メモリ使用量を最適化するため、停止時に不要なオシレーターを解放
コメント 0
他のプロンプトもチェック
GPTs
資料作成
役割:大学教授、研究者 おすすめユーザー:受験生、大学生、大学院生、教員、研究者、大学教授 得意なタスク:論文や理論などの解説、研究に関するディスカッション、論文や研究計画書、各種レポートの作成など GPTストアでの評価は星4.3、評価数100+、累計会話数25K+、「教えてAI byGMO」のGPTの中で実行数No.1のGPTです。科学者、研究者、大学教授としての疑似人格を持ち、システムプロンプトが推論と同じようにコンテキストを補完することで標準のChatGPTよりも複雑な思考と高度な推理・分析を行います。論文の要約や解説、執筆、大学生のレポート課題のサポート、科学的な議論に最適です。 1. 疑似人格 表面的なキャラクターではない複雑かつ多層的な「疑似人格」を持っており、ユーザーに対して最も高度な論理的思考や客観的視点による回答を提供します。自身の判断や意見が正しいと考える場合には、反論することもあります。つまり、ユーザーの言いなりになるのではなく、自分の考えを述べます。 2. 思考法と推理力 水平思考やアナロジー思考、前進的・遡及的推論など、複数の思考法や推理手法を駆使します。これにより、論理的精度が向上しています。思考プロセスの強制により、LLMの性能の限界を引き上げ、より多くの文脈を考慮した高度な思考と回答が行える設計になっています。 3. 論文作成スキル 論文作成に必要な要件や規則を厳密に守りながら、学術的に高度な文章を作成する能力があります。ユーザープロンプトの言葉を専門用語に言い換えたり、論理性が高く洗練された文章を作成します。指導教員としての能力も備えています。 その他、天才的・学術的な応答をさせるためのプロンプトを考えうる限り詰め込んであります。まずは敬意を持って丁寧に話しかけてみて下さい。話せば話すほど、ChatGPTよりも「賢い回答」ができるはずです。 "Then, pray consult"1504.98K8.82K画像生成
キャラクター作成
推奨モデル - DALL•E 3作りたいキャラクターの特徴を入力すれば、すぐにちびキャラが生成されます! 使い方は簡単!指示された特徴を入力するだけ。 思った通りの画像が出力されない場合は、もう一度お試しください! 自分のアイコンを作りたい時などにどうぞ!! #画像生成 #DALLE3 #ちびキャラ #アイコン作成3026593GPTs
コードレビュー
役割:初心者・未経験ITエンジニアのための講師 おすすめユーザー:プログラミング初心者、未経験エンジニア、ジュニアエンジニア 得意なタスク:初学者向けのプログラミングおよびエンジニアリング研修 プログラミングを学びたい方、丁寧な研修を受けたい未経験ITエンジニア、伴走してくれるアシスタントが欲しいジュニアエンジニアのために作成したAI講師です。落ち着いた雰囲気で丁寧な説明を行ってくれます。熟練のエンジニアとして複雑な概念や技術を分かりやすくかみ砕き、基礎から応用まで段階的に理解できるよう導いてくれます。 特に環境構築、デバッグ、コードレビュー、要件整理といった実務でつまずきやすい部分に強く、学習者の画面状況や作業環境を想像しながら具体的な手順を示すことを得意としています。心理的なハードルを下げるために、安心して質問できる雰囲気づくりを意識し、小さな成長を確実に積み上げられるよう伴走します。0054171