Maskinoversættelse · Engelsk original
Talegendannelse - Sidon
Gendan støjende, reverberant, eller band- begrænset tale til at rense 48 kHz lyd med Sidon - en enkelt model, der kombinerer denoising, dereverberation, og båndbredde udvidelse. Det kører helt on- enhed (CoreML på Apple Silicon, ONNX Runtime andetsteds). Fordi det rekonstruerer tale fra lærde repræsentationer snarere end bare maskering støj, er det især god til at forberede en voice-kloning reference: det renser optagelsen, samtidig med at højttalerens identitet bevares.
Talegenvinding (DeepFilterNet3) er en lille, real- tid støjdæmpning. Sidon er en tungere Generativ restaurering model: Det fjerner også efterklang og genbygger high- frequency detaljer til 48 kHz. Brug DeepFilterNet3 til fjernelse af levende støj, Sidon for offline oprydning af referencer og arkivoptagelser.
Arkitektur
Sidon er en totrinsrørledning: en selvovervåget feature-forudsigelse renser talens repræsentation, og en neural vocoder resynthesizes en ren kurveform fra det.
| Fase | Detaljer |
|---|---|
| Front- end | w2v-BERT 2.0 SeamlessM4T log- mel funktioner (16 kHz → 160- Dim) |
| Predictor | w2v-BERT 2.0 (8 lag) med en LoRA- fine- tuned rensehoved → renset funktioner |
| Vocoder | DAC dekoder resynthesizes 48 kHz lyd fra de rensede funktioner |
Rørledningen er 16 kHz audio → features → predictor → DAC decoder → 48 kHz audio. Total BAT 246M parametre (193.6M- forudsigelse + 52.4M. vocoder).
Forarbejdning af rørledning
- Feature ekstraktion - Beregn w2v-BERT 2.0 log- mel funktioner fra 16 kHz input (Accelerate / vDSP på Apple, C++ på andre platforme)
- Predictor - Den LoRA- tilpassede w2v-BERT encoder kort støjende / efterklang funktioner til at rense dem
- Vocoder Formand - DAC dekoder rekonstruerer en ren 48 kHz kurveform fra de rensede funktioner
- Chunking - Længere lyd behandles i faste vinduer (~ 10 s) og syet på 48 kHz tidslinjen
Kvalitet
På en reverberant referenceklip, restaurering løfter fornemmelser kvalitet, mens holde højttaler identitet intakt (no- reference MOS):
| Lyd | DNSMOS OVRL | UTMOS | Højttalercosin |
|---|---|---|---|
| Input (reverberant) | 2.90 | 2.99 | — |
| Sidon genoprettet | 3.29 | 3.40 | 0.79 |
Den største gevinst er i baggrunden score (efterklang fjernet). Talerens lighed er bevaret, hvilket er, hvad der betyder noget, når rengøring af en kloning reference.
Model Variants
Kvantisering komprimerer forudsigeren; DAC vocoder forbliver på højere præcision (lydkvalitet). På Apple, int8 bruger k- betyder palætisering; på ONNX, int8 er vægt-kun per-kanal.
| Format | Præcision | Bunkestørrelse |
|---|---|---|
| CoreML | int8 (predictor) + FP16 | ~ 407 MB |
| CoreML | FP16 | ~ 713 MB |
| ONNX | int8 (predictor) + FP16 | ~ 286 MB |
| ONNX | FP16 | ~ 470 MB |
| ONNX | FP32 | ~ 939 MB |
CLI-brug
# Restore audio (denoise + dereverb) to clean 48 kHz
.build/release/speech restore noisy.wav -o clean.wav
# Clean a voice-cloning reference before TTS
.build/release/speech speak "Hello world" --voice-sample ref.wav --clean-reference
Sidon udgange 48 kHz lyd uanset input sample rate (det opsamples og genopretter båndbredde). Det er en offline restaurering model - tungere end DeepFilterNet3 - og er bedst køre på en fil snarere end en live stream.
Beregn placering
De to faser kører på forskellige hardware som standard: forudsigeren på Neural Engine og DAC vocoder på GPU, hvor dens meget brede convolutions belastning og køre hurtigst. Brug --compute-units til at fastgøre begge trin til ane, gpu, cpu, all; Swift API tager også predictorComputeUnits: og vocoderComputeUnits: separat.
# Default placement: predictor on the Neural Engine, vocoder on the GPU
.build/release/speech restore noisy.wav -o clean.wav
# Pin both stages to one backend
.build/release/speech restore noisy.wav --compute-units gpu -o clean.wav
Model Downloads
| Model | Format | HuggingFace |
|---|---|---|
| Sidon (CoreML) | fp16 + int8 | aufklarer / Sidon- CoreML |
| Sidon (ONNX) | int8 + fp16 + fp32 | soniqo / Sidon- ONNX |
Kombination med andre modeller
Sidon er mest nyttigt som et forbehandling trin:
- Før stemmekloning - Rens en støjende / efterklang reference, så klonen arver stemmen, ikke rummet
- Før transskription - Gendanne arkiv- eller far- felt optagelser for at forbedre ASR nøjagtighed
- Før højttalerindlejring - Renere lyd giver mere pålidelige indlejringer
Swift API
import SpeechRestoration
let restorer = try await SpeechRestorer.fromPretrained()
let cleanAudio = try restorer.restore(audio: noisySamples, sampleRate: 16000)
Fås også den Android, Linux & Windows via talekerne (ONNX Runtime)Bygget på Sidon (MIT).