Automatische vertaling · Engels origineel
Spraakherstel Sidon
Herstellen van lawaaierige, reverberant, of band-limited speech om 48 kHz audio schoon te maken met Sidon Een enkel model dat de noising, deverbering en bandbreedte-extensie combineert. Het draait volledig op apparaat (CoreML op Apple Silicon, ONNX Runtime elders). Omdat het spraak reconstrueren van geleerde representaties in plaats van alleen maar ruis, is het vooral goed in het voorbereiden van een voice-clonning referentie: het reinigt de opname terwijl het de identiteit van de spreker behoudt.
Speech Enhancement (DeepFilterNet3) is een klein, real-time geluidsonderdrukker. Sidon is een zwaarder generatieve restauratie model: het verwijdert ook nagalm en herbouwt hoogfrequent detail tot 48 kHz. Gebruik DeepFilterNet3 voor live ruisverwijdering, Sidon voor offline opruiming van referenties en archivale opnames.
Architectuur
Sidon is een tweetraps pijpleiding: een zelfcontrolefunctie voorspeller reinigt de spraakrepresentatie, en een neurale vocoder hersynthetiseert een schone golfvorm ervan.
| Fase | Gegevens |
|---|---|
| Front-end | w2v-BERT 2,0 SeamlessM4T log-mel functies (16 kHz → 160-dim) |
| Voorspeller | w2v-BERT 2,0 (8 lagen) met een LoRA-fijn afgestemde reinigingskop → gereinigde eigenschappen |
| Vocoder | DAC decoder hersynthetiseert 48 kHz audio van de gereinigde functies |
De pijplijn is 16 kHz audio → features → predictor → DAC decoder → 48 kHz audio. Totaal ≈ 246M parameters (193.6M voorspeller + 52.4M vocoder).
Verwerkingspijpleiding
- Uittreksel van de kenmerken Bereken de eigenschappen van de w2v-BERT 2,0 log-mel van de 16 kHz ingang (Accelerate/vDSP on Apple, C++ op andere platformen)
- Predictor De LoRA-aangepaste w2v-BERT encoder brengt lawaaierige/reverberant-functies in kaart om deze schoon te maken
- Vocoder De DAC-decoder reconstrueren een schone 48 kHz golfvorm van de gereinigde functies
- Chunking andere langer audio wordt verwerkt in vaste vensters (~10 s) en gestikt op de 48 kHz tijdlijn
Kwaliteit
Op een reverberant referentieclip tilt restauratie de perceptuele kwaliteit op, terwijl de luidsprekeridentiteit intact blijft (no-reference MOS):
| Audio | DNSMOS OVRL | UTMOS | Cosinus van de voorzitter |
|---|---|---|---|
| Invoer (reverberant) | 2.90 | 2.99 | — |
| Sidon hersteld | 3.29 | 3.40 | 0.79 |
De grootste winst is in de achtergrondscore (reverbering verwijderd). Speaker overeenkomst wordt behouden, dat is wat belangrijk is bij het schoonmaken van een klonen referentie.
Model Varianten
Quantization comprimeert de voorspeller; de DAC vocoder blijft op een hogere precisie (audiokwaliteit). Op Apple gebruikt int8 k-means palettization; op ONNX is int8 alleen gewicht per kanaal.
| Formaat | Precisie | Bundelgrootte |
|---|---|---|
| CoreML | int8 (voorspeller) + FP16 (vocoder) | ~407 MB |
| CoreML | FP16 | ~713 MB |
| ONNX | int8 (voorspeller) + FP16 (vocoder) | ~286 MB |
| ONNX | FP16 | ~470 MB |
| ONNX | FP32 | ~939 MB |
CLI-gebruik
# 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 geeft 48 kHz audio uit, ongeacht de input sample rate (het upsamples en herstelt bandbreedte). Het is een offline restauratiemodel .. zwaarder dan DeepFilterNet3 .Het is het beste uitgevoerd op een bestand in plaats van een livestream.
Plaatsing berekenen
De twee stadia draaien standaard op verschillende hardware: de voorspeller op de Neural Engine en de DAC vocoder op de GPU, waar zijn zeer brede convoluties laden en lopen het snelst. --compute-units om beide fasen te koppelen aan ane, gpu, cpu, all; de Swift API neemt ook predictorComputeUnits: en vocoderComputeUnits: afzonderlijk.
# 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
Modeldownloads
| Model | Formaat | HuggingFace |
|---|---|---|
| Sidon (CoreML) | fp16 + int8 | aufklarer/Sidon-CoreML |
| Sidon (ONNX) | int8 + fp16 + fp32 | soniqo/Sidon-ONNX |
Combineren met andere modellen
Sidon is het meest nuttig als voorbewerkingsstap:
- Before voice cloning Maak een lawaaierige/reverberant-referentie schoon zodat de kloon de stem erft, niet de ruimte
- Voor de transcriptie herstellen archief- of vervelde opnames om de nauwkeurigheid ASR te verbeteren
- Voordat speaker inbedding • Cleaner audio levert meer betrouwbare inbeddingen
Swift API
import SpeechRestoration
let restorer = try await SpeechRestorer.fromPretrained()
let cleanAudio = try restorer.restore(audio: noisySamples, sampleRate: 16000)
Ook beschikbaar op Android, Linux & Windows via Speech Core (ONNX Runtime . Gebouwd op Sidon (MIT).