✅ GLITCH FIX PUSHED! - No more white frame during transitions - Frame fades first, then photo glitches - Clean chromatic aberration effect ✅ AUDIO GUIDE CREATED! - INTRO_AUDIO_GUIDE.md (complete instructions) - Edge-TTS commands for Slovenian voices - FFmpeg conversion guide - Audio folder structure ready 📁 FOLDERS READY: - /assets/audio/ambient/ (for noir_ambience.ogg + projector_loop.ogg) - /assets/audio/voiceover/ (for Kai voices) 🎯 NEXT STEPS: 1. Test glitch fix (rs in terminal) 2. Add audio files using guide 3. Voice: Edge-TTS sl-SI-RokNeural 4. Ambient: Download from freesound.org INTRO VISUALLY COMPLETE! Audio optional polish! 🎆
191 lines
4.8 KiB
Markdown
191 lines
4.8 KiB
Markdown
# 🎵 INTRO AUDIO GUIDE
|
|
## How to Add Voice & Music to Intro Sequence
|
|
|
|
**Created:** January 10, 2026
|
|
**Status:** Ready for audio files
|
|
|
|
---
|
|
|
|
## 📁 REQUIRED AUDIO FILES
|
|
|
|
### **1. AMBIENT SOUNDS (Background Loops)**
|
|
|
|
**Location:** `/assets/audio/ambient/`
|
|
|
|
**Files needed:**
|
|
- `noir_ambience.ogg` - Constant low noir drone (dark atmospheric hum)
|
|
- **Length:** Loop (10-20 seconds)
|
|
- **Volume:** Low (intro uses 0.15)
|
|
- **Style:** Dark, mysterious, bass-heavy ambient
|
|
- **Example:** Deep synth pad, noir detective atmosphere
|
|
|
|
- `projector_loop.ogg` - Old film projector sound
|
|
- **Length:** Loop (5-10 seconds)
|
|
- **Volume:** Medium-low (intro uses 0.2)
|
|
- **Style:** Mechanical clicking, film reel aesthetic
|
|
- **Example:** Vintage film projector, subtle mechanical rhythm
|
|
|
|
---
|
|
|
|
### **2. VOICE TRIGGERS (Optional Narration)**
|
|
|
|
**Location:** `/assets/audio/voiceover/`
|
|
|
|
**Files needed (Kai's voice):**
|
|
- `kai_memory_01.mp3` - "Nekoč smo imeli barve..."
|
|
- `kai_memory_02.mp3` - "Potem je prišla tema..."
|
|
- `kai_memory_03.mp3` - "In ostal sem sam... z luknjo v glavi."
|
|
|
|
**Voice specs:**
|
|
- **Character:** Kai (young adult male, 25 years old)
|
|
- **Emotion:** Melancholic, nostalgic, tired
|
|
- **Language:** Slovenian
|
|
- **Accent:** Neutral Slovenian
|
|
- **Delivery:** Slow, reflective, ADHD energy (slightly rushed at times)
|
|
|
|
---
|
|
|
|
## 🎙️ HOW TO GENERATE VOICES
|
|
|
|
### **Option A: Edge-TTS (Free, AI)**
|
|
|
|
Use Edge-TTS for instant voice generation:
|
|
|
|
```bash
|
|
# Install Edge-TTS
|
|
pip install edge-tts
|
|
|
|
# Generate voices
|
|
edge-tts --text "Nekoč smo imeli barve..." --voice sl-SI-PetraNeural --write-media assets/audio/voiceover/kai_memory_01.mp3
|
|
|
|
edge-tts --text "Potem je prišla tema..." --voice sl-SI-RokNeural --write-media assets/audio/voiceover/kai_memory_02.mp3
|
|
|
|
edge-tts --text "In ostal sem sam... z luknjo v glavi." --voice sl-SI-RokNeural --write-media assets/audio/voiceover/kai_memory_03.mp3
|
|
```
|
|
|
|
**Best Slovenian voices:**
|
|
- `sl-SI-RokNeural` - Male, mature
|
|
- `sl-SI-PetraNeural` - Female, clear
|
|
|
|
---
|
|
|
|
### **Option B: Manual Recording**
|
|
|
|
1. Use Audacity or QuickTime to record
|
|
2. Read scripts slowly, emotionally
|
|
3. Export as MP3 (128kbps minimum)
|
|
4. Place in `/assets/audio/voiceover/`
|
|
|
|
---
|
|
|
|
## 🎵 HOW TO GET AMBIENT AUDIO
|
|
|
|
### **Noir Ambience (noir_ambience.ogg)**
|
|
|
|
**Option 1: Generate with AI**
|
|
- Use: Suno AI, Beatoven.ai, or AIVA
|
|
- Prompt: "Dark noir ambient drone, deep bass, mysterious atmosphere, loopable"
|
|
|
|
**Option 2: Freesound.org**
|
|
- Search: "noir ambient" or "dark drone"
|
|
- Filter: CC0 or Attribution license
|
|
- Download and convert to .ogg
|
|
|
|
**Option 3: Create in DAW**
|
|
- Use: Audacity, GarageBand, FL Studio
|
|
- Add: Deep bass synth pad (50-100 Hz)
|
|
- Add: Subtle noise (brown noise at 10%)
|
|
- Export: OGG format
|
|
|
|
---
|
|
|
|
### **Projector Loop (projector_loop.ogg)**
|
|
|
|
**Option 1: Freesound.org**
|
|
- Search: "film projector" or "reel loop"
|
|
- Download 8mm or 16mm projector sounds
|
|
- Convert to .ogg
|
|
|
|
**Option 2: Sample Pack**
|
|
- Kenney.nl - Free SFX packs (Mechanical/Vintage)
|
|
- BBC Sound Effects Library (Public Domain)
|
|
|
|
---
|
|
|
|
## 🔧 CONVERT TO OGG FORMAT
|
|
|
|
**Using FFmpeg:**
|
|
|
|
```bash
|
|
# Install ffmpeg (if needed)
|
|
brew install ffmpeg
|
|
|
|
# Convert MP3 to OGG
|
|
ffmpeg -i input.mp3 -c:a libvorbis -q:a 4 assets/audio/ambient/noir_ambience.ogg
|
|
|
|
# Convert WAV to OGG
|
|
ffmpeg -i input.wav -c:a libvorbis -q:a 4 assets/audio/ambient/projector_loop.ogg
|
|
```
|
|
|
|
---
|
|
|
|
## ✅ TESTING AUDIO
|
|
|
|
**After adding files:**
|
|
|
|
1. Place audio files in correct folders:
|
|
- `/assets/audio/ambient/noir_ambience.ogg`
|
|
- `/assets/audio/ambient/projector_loop.ogg`
|
|
- `/assets/audio/voiceover/kai_memory_01.mp3`
|
|
|
|
2. Run game:
|
|
```bash
|
|
npm start
|
|
```
|
|
|
|
3. Watch intro - audio should play automatically!
|
|
|
|
4. **If audio doesn't play:**
|
|
- Check console for errors
|
|
- Verify file names EXACTLY match (case-sensitive!)
|
|
- Check file formats (.ogg vs .mp3)
|
|
- IntroScene will NOT crash if files missing (safe loading!)
|
|
|
|
---
|
|
|
|
## 🎯 QUICK START (Minimal Audio)
|
|
|
|
**Don't have time? Start with JUST ambient:**
|
|
|
|
1. Download free noir drone:
|
|
- https://freesound.org/search/?q=dark+ambient+drone
|
|
|
|
2. Convert to OGG and place in `/assets/audio/ambient/noir_ambience.ogg`
|
|
|
|
3. Leave voice empty - intro works without it!
|
|
|
|
4. Add projector sound later for extra polish
|
|
|
|
---
|
|
|
|
## 📝 CURRENT STATUS
|
|
|
|
**✅ Code ready** - IntroScene.js loads all audio
|
|
**❌ Files missing** - Need to add audio files
|
|
**✅ Safe loading** - Game won't crash without audio
|
|
**✅ Folders created** - `/ambient/` and `/voiceover/` exist
|
|
|
|
---
|
|
|
|
## 💡 TIPS
|
|
|
|
- **Audio is OPTIONAL** - Intro works visually without it!
|
|
- **Start simple** - Add ambient first, voices later
|
|
- **Keep files small** - OGG compression is good
|
|
- **Loop seamlessly** - Ambient should loop without clicks
|
|
- **Match emotion** - Kai's voice should sound tired but determined
|
|
|
|
---
|
|
|
|
**Next step:** Add audio files and test! 🎬💜🎆
|