Terjemahan mesin · Versi asli bahasa Inggris

Pembangunan Pidato - Sidon

Kembalikan suara bising, gema, atau band--terbatas untuk membersihkan 48 kHz audio dengan Sidon - sebuah model tunggal yang mengkombinasikan denoising, dereverberation, dan ekstensi bandwidth. Ini berjalan sepenuhnya on- perangkat (CoreML nyala Apple Silicon, ONNX Runtime Karena merekonstruksi kembali pidato dari representasi belajar bukan hanya masking kebisingan, terutama baik dalam mempersiapkan Referensi suara... kloning: ia membersihkan rekaman saat mempertahankan identitas pembicara.

Ketika menggunakan Sidon vs. DeepFilterNet3

Speech Enhancement (DeepFilterNet3) adalah kecil, real-waktu Peredam suaraSidon lebih berat restorasi generatif Model: ini juga menghilangkan reverberasi dan membangun ulang detail frekuensi tinggi ke 48 kHz. Gunakan DeepFilterNet3 untuk penghapusan kebisingan secara langsung, Sidon karena pembersihan referensi dan rekaman arsip.

Arsitektur

Sidon adalah sebuah pipeline dua tahap: procektor fitur yang diawasi membersihkan representasi pidato, dan vocoder saraf mensintesis bentuk gelombang yang bersih dari itu.

TahapRincian
Depan-akhirw2v-BERT 2.0 SeamlessM4T fitur log-mel (16 kHz 1f short 160-dim)
Prediktorw2v-BERT 2.0 (lapisan 8) dengan LoRA- fine- menyetel kepala membersihkan fitur-fitur yang bersih
VocoderDecoder DAC mensintesis ulang 48 audio kHz dari fitur yang dibersihkan

Pipa ini 16 kHz audio → features → predictor → DAC decoder → 48 kHz audioTotalnya 246Parameter M (193.6M predicator + 52.4M vocoder).

Memproses Baris Piringnya

  1. Ekstraksi fitur - Komputer w2v-BERT 2.0 fitur log -mel dari 16 input kHz (Akselerator / vDSP pada Apple, C++ di platform lain)
  2. Prediktor - The LoRA- disesuaikan w2v-BERT enkoder peta berisik / fitur reverberant untuk membersihkan yang
  3. Vocoder - Decoder DAC reconstruct a clean 48 kHz waveform from the cleared features
  4. Chunking audio lebih lama diproses dalam jendela tetap (~ 10) dan dijahit pada timeline 48 kHz

Kualitas

Pada klip referensi gema, pemugaran mengangkat kualitas persepsi saat menjaga identitas pembicara utuh (no- referensi MOS):

AudioDNSMOS OVRLUTMOSSpeaker cosinus
Masukan (gema)2.902.99—
Sidon dipulihkan3.293.400.79

Keuntungan terbesar adalah dalam nilai latar belakang (rekreasi dihapus). Kedekatan suara dipertahankan, yang penting ketika membersihkan referensi kloning.

Variants Model

Kuantisasi kompres prediktor; vocoder DAC tetap pada presisi yang lebih tinggi (kualitas audio). Pada Apple, int8 menggunakan k-berarti palettization; pada ONNX, int8 adalah berat - hanya saluran per-.

FormatPresisiUkuran bundle
CoreMLint8 (predicator) + FP16~ 407 MB
CoreMLFP16~ 713 MB
ONNXint8 (predicator) + FP16~ 286 MB
ONNXFP16~ 470 MB
ONNXFP32~ 939 MB

Penggunaan CLI

# 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
Penting

Sidon mengeluarkan audio 48 kHz tanpa menghiraukan laju contoh masukan (upsample dan restore bandwidth). Ini adalah model restorasi offline - lebih berat daripada DeepFilterNet3 - dan paling baik dijalankan pada berkas daripada arus hidup.

Penempatan Komputer

Dua tahap berjalan pada perangkat keras yang berbeda secara default: prediktor pada Neural Engine dan vocoder DAC pada GPU, di mana sangat luas beban konvolusinya dan lari tercepat. --compute-units untuk pin kedua tahap ke ane, gpu, cpu, all; Swift API juga mengambil predictorComputeUnits: dan vocoderComputeUnits: terpisah.

# 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

Unduhan Model

ModelFormatHuggingFace
Sidon (CoreML)fp16 + int8aufklarer / Sidon-CoreML
Sidon (ONNX)int8 + fp16 + fp32soniqo / Sidon-ONNX

Menggabungkan dengan Model Lain

Sidon paling berguna sebagai langkah preprosesing:

Swift API

import SpeechRestoration

let restorer = try await SpeechRestorer.fromPretrained()
let cleanAudio = try restorer.restore(audio: noisySamples, sampleRate: 16000)

Juga tersedia di Android, Linux & Windows melalui Speech Core (ONNX Runtime)Dibangun di Sidon (MIT).