fix(pitch-deck): revert OVH synthesis rate to 16000 Hz
All checks were successful
Build pitch-deck / build-push-deploy (push) Successful in 17s
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-consent (push) Successful in 49s
CI / test-python-voice (push) Successful in 36s
CI / test-bqas (push) Successful in 36s

OVH honours sample_rate_hz and returns data at exactly the requested
rate, so synthesis and WAV header rates must always match. Decoupled
22050/16000 caused 22050 Hz PCM wrapped in a 16000 Hz header → slow
bloated playback. Both back to 16000 Hz.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Sharang Parnerkar
2026-04-16 21:37:52 +02:00
parent 5a476ac97d
commit 09ac22f692

View File

@@ -24,9 +24,6 @@ const OVH_TTS = {
: null,
} as const
// Rate sent to OVH in the synthesis request (affects internal model quality).
const OVH_SYNTHESIS_RATE_HZ = parseInt(process.env.OVH_TTS_SYNTHESIS_RATE || '22050', 10)
// Actual rate of the raw PCM bytes OVH returns (used for the WAV header).
const SAMPLE_RATE_HZ = parseInt(process.env.OVH_TTS_SAMPLE_RATE || '16000', 10)
export async function POST(request: NextRequest) {
@@ -64,7 +61,7 @@ async function synthesizeViaOvh(
body: JSON.stringify({
encoding: 1, // LINEAR_PCM
language_code: cfg.languageCode,
sample_rate_hz: OVH_SYNTHESIS_RATE_HZ,
sample_rate_hz: SAMPLE_RATE_HZ,
text,
voice_name: cfg.voice,
}),