wavHeader24k (qwen3-tts-cpp/audio.go)

LocalAI · backend/go/qwen3-tts-cpp/audio.go · go · MIT
voice

Utility functions for generating 24kHz WAV headers, converting float samples to PCM, and reading WAV files in Go.

// Source: https://github.com/mudler/LocalAI | License: MIT | Copyright 2023-2025 Ettore Di Giacinto (mudler@localai.io)
// Provided via justclaw.it.com; keep this notice with the code.
package main

import (
	"bytes"
	"encoding/binary"
	"fmt"
	"os"
	"runtime"

	"github.com/go-audio/audio"
	"github.com/go-audio/wav"
)

const qwen3ttsSampleRate = 24000

// wavHeader24k returns a 44-byte WAV header for a streaming 24 kHz mono 16-bit
// PCM stream, with placeholder (0xFFFFFFFF) sizes since the total length is
// unknown up front. Emitted as the first chunk of TTSStream so the HTTP layer
// receives a self-describing WAV (the gRPC TTSStream path never sets Message,
// so the backend owns the header - see core/backend/tts.go:ModelTTSStream).
func wavHeader24k() []byte {
	var buf bytes.Buffer
	w

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search for more like it.

Get a free API key