# QA Note

- Media decode: `ffmpeg -v error -i ... -f null -` completed with no decode errors on the source final upload.
- Format: H.264 video with AAC audio, 1080x1920 vertical, 30 fps, 20.6 seconds.
- Contact sheet: inspected `media/contact-sheet.jpg`; six frames show consistent Kyanite violet/cyan/magenta palette, strong text contrast, and no visible text clipping.
- Mobile-safe margins: headline and small footer text remain inside the visible frame area in the contact sheet; no text is pressed against the top or side edges.
- Audio strategy: final upload includes the existing music-text AAC track. Recommended platform use is TikTok/Reels/Shorts as-is, or mute and add native trending audio if reach is the priority.
- Human input: not required for publishing this package.

## Audio Ready Master
- Audio-ready upload: `final-upload-audio-ready.mp4`
- Source upload preserved: `final-upload.mp4`
- Audio lift: ffmpeg loudnorm target I=-16 LUFS, TP=-1.5, LRA=9; final audio AAC 192k stereo.
- ffprobe: final-upload-audio-ready.mp4: h264 1080x1920 30/1, 20.700s; audio aac 48000Hz 2ch
- Decode: ok
- Final volume check: mean_volume: -17.9 dB, max_volume: -2.8 dB
- Source volume check: mean_volume: -23.3 dB, max_volume: -8.8 dB

## Simon Clone TTS Pass
- Voiceover script: `VOICEOVER_SCRIPT.md`
- Cloned voice audio: `voiceover/simon-clone-tts.postclean-light.wav` (17.600s)
- Voice-only waveform source master: `final-upload-audio-ready-simon-tts-voiceonly.mp4`
- Voice plus music pre-waveform master: `final-upload-audio-ready-simon-tts-music.mp4`
- Mix: voice centered stereo at 1.0; existing music-text audio at 0.34 with sidechain ducking under voice.
- Final target duration: 20.700s; video pad 0.000s; voice pad 3.100s.
- Voice/music ffprobe: final-upload-audio-ready-simon-tts-music.mp4: h264 1080x1920 30/1, 20.700s; audio aac 48000Hz 2ch
- Voice/music decode: ok
- Voice/music volume: mean_volume: -15.9 dB, max_volume: -0.8 dB
- Waveform requirement: next render uses the voice-only master as waveform signal, not the music bed.

## Voice Waveform Treatment
- Waveform upload: `final-upload-audio-ready-simon-tts-music-voicewave.mp4`
- Source upload preserved: `final-upload-audio-ready-simon-tts-music.mp4`
- Waveform signal source: `final-upload-audio-ready-simon-tts-voiceonly.mp4`
- ffprobe: final-upload-audio-ready-simon-tts-music-voicewave.mp4: h264 1080x1920 30/1, 20.700s; audio aac 48000Hz 2ch
- Decode: ok
- Audio check: mean_volume: -15.9 dB, max_volume: -0.8 dB
- Contact sheet: `visual-gate/waveform-contact-sheet.jpg`
- Safe-margin sheet: `visual-gate/waveform-safe-margin-midpoint.jpg`
- Placement checked against the top-center mobile safe area; waveform is generated from the voice-only source while the posting master keeps the original final audio mix.

## Audio Mix Fix
- Problem found: the previous music-text mix failed local `whisper-cli` intelligibility; the final mixed MP4 was interpreted as music instead of transcribed speech.
- Active upload replaced with: `final-upload-simon-tts-minimax-mixfix-v3-voicewave.mp4`
- Audio-only mix source: `final-upload-simon-tts-minimax-mixfix-v3-audio.m4a`
- Music bed: reused `content-library/ready-to-post/2026-05-21-iteration-is-not-thrashing-real-i2v-tiktok/music/minimax-kyanite-build-public-bed-20260523-raw.mp3`
- Mix: MiniMax bed at 0.12, highpass/lowpass filtered, hard sidechain ducking under the voice; waveform visual remains voice-only.
- ffprobe: final-upload-simon-tts-minimax-mixfix-v3-voicewave.mp4: H.264 1080x1920 30 fps, 20.693s; AAC 48000Hz stereo.
- Decode: ok.
- Volume check: mean_volume: -16.7 dB, max_volume: -0.3 dB.
- Local intelligibility check: `whisper-cli` large-v3-turbo transcribed the spoken script from the final mixed MP4.
