SES STÜDYOSU
Kişisel Ses Klonu İçin Veri Toplama ve Kalite Denetim Sistemi
Proje raporu — 17 Eylül 2026
1. Proje Nedir?
Ses Stüdyosu, kurucunun kendi sesinden yüksek kaliteli bir yapay zekâ ses klonu oluşturmak için gerekli konuşma verisini otomatik olarak toplar, temizler ve kalite açısından denetler.
Sistem telefondan açılan bir web sayfasında çalışır. Kullanıcı yalnızca bir kez küreye dokunur; sonrasında süreç otomatik ilerler:
Sistem okunacak Türkçe cümleyi seslendirir.
Bip sesi verir.
Kullanıcı cümleyi okur.
Kullanıcı sustuğunda kayıt otomatik olarak kesilir.
Kayıt sunucuya gönderilir ve teknik olarak analiz edilir.
Whisper ile gerçekten doğru cümlenin okunup okunmadığı kontrol edilir.
Kayıt uygunsa kabul edilir ve sonraki cümleye geçilir.
Uygun değilse aynı cümle tekrar okutulur.
Üç başarısız denemeden sonra cümle otomatik atlanır.
Amaç: Eğitim modeline doğrudan verilebilecek, temiz ve kontrollü bir konuşma veri seti oluşturmak.
Bu proje ses klonlama modelini eğitmez. Görevi, VoxCPM2 gibi hazır ses klonlama motorlarının kullanabileceği kaliteli veriyi üretmektir.
2. Nihai Hedef
Uzun vadeli hedef, kurucunun kendi sesiyle konuşabilen kişisel bir yapay zekâ sistemi oluşturmaktır.
Bu sistem üç katmandan oluşacaktır:
Ses: Kişinin kendi sesini üreten model
Hafıza: Kişisel bilgi ve dosyalardan oluşan hafıza sistemi
Beyin: Konuşan ve görev gerçekleştiren asistan
Mevcut projenin kapsamı yalnızca sestir.
Başarı ölçütü:
Kendi sesini, ChatGPT/ElevenLabs seviyesine yaklaşan temiz ve doğal bir yapay zekâ sesi olarak oluşturmak.
3. Sistem Mimarisi
Sunucu
Oracle Cloud VDS:
ARM Neoverse-N1
4 çekirdek
23 GB RAM
193 GB disk
GPU yok
Ubuntu 24.04
Python 3.12.3
FFmpeg 6.1.1
Sunucu internete doğrudan açık değildir. Uygulama yalnızca 127.0.0.1:8099 üzerinde çalışır.
Erişim:
iPhone: Tailscale Serve + HTTPS
Bilgisayar: SSH tüneli
Güvenlik duvarında yalnızca SSH portu dışarıdan kabul edilir.
Tarayıcı
Tek bir index.html dosyası kullanılır.
Başlıca bileşenler:
Canvas küre
Web Audio API
AnalyserNode
Otomatik konuşma algılama (VAD)
MediaRecorder
Screen Wake Lock
Küre sistemin durumunu gösterir:
Boz: Bekliyor
Mor: Cümle okunuyor
Yeşil: Kullanıcı konuşuyor
Sarı: Kayıt denetleniyor
4. Bir Cümlenin Tam Akışı
Kullanıcı tarafı
Cümlenin seslendirmesi sunucudan alınır.
Cümle oynatılır.
320 ms beklenir.
880 Hz bip sesi çalar.
Mikrofon kaydı başlar.
Sistem ortamın gürültü tabanını sürekli ölçer.
Kullanıcı konuşmaya başladığında VAD bunu algılar.
Yaklaşık 1,4 saniye sessizlik oluştuğunda kayıt otomatik kesilir.
Kayıt sunucuya gönderilir.
Cümlenin ortasındaki kısa nefeslerin kaydı kesmemesi için:
minimum kayıt: 1,8 saniye
maksimum kayıt: 22 saniye
VAD eşiği ortama göre otomatik ayarlanır:
max(gürültü tabanı × 3,5, 0,006)
5. Sunucudaki Kalite Kontrolü
Sunucu gelen kaydı önce ham haliyle saklar. Ham kayıt hiçbir zaman değiştirilmez.
Daha sonra:
Teknik analiz
FFmpeg ile şu değerler ölçülür:
Kayıt süresi
Örnekleme hızı
Tepe seviyesi
RMS seviyesi
Gürültü tabanı
Sinyal/gürültü oranı
Kırpılma oranı
8 kHz üzeri enerji
Dijital sessizlik süresi ve oranı
Kayıt daha sonra mono, 16-bit PCM WAV formatına dönüştürülür.
Önemli: Özgün örnekleme hızı değiştirilmez. 16 kHz kaydı yapay olarak 48 kHz’e çıkarmak yeni bilgi üretmez.
6. Metin Doğrulama
Teknik olarak temiz görünen bir kayıt yanlış cümle içerebilir. Bu nedenle her kabul edilecek kayıt Whisper ile kontrol edilir.
Kullanılan model:
whisper.cpp — ggml-small — Türkçe
Whisper’ın ürettiği metin, beklenen cümleyle iki şekilde karşılaştırılır:
Harf benzerliği
Kelime benzerliği
İkisinden yüksek olan değer kullanılır.
Karar eşikleri
Sonuç | Benzerlik |
Doğru | ≥ %80 |
Şüpheli | %62–80 |
Yanlış | < %62 |
Yanlış kayıt veri setine girmez.
Bu kontrolün temel amacı, yanlış ses-metinsel eşleşmelerin eğitim verisini sessizce bozmasını engellemektir.
7. Ses Kalitesi Eşikleri
Otomatik RED
Süre < 0,8 sn
Süre > 25 sn
Kırpılma > %0,05
Tepe < -35 dB
Metin benzerliği < %62
Uyarı
Kırpılma > %0,005
Tepe < -18 dB
S/G < 25 dB
Dijital sessizlik > %12
S/G değeri düşükse kayıt ikinci sınıf (toplu) olarak işaretlenebilir.
8. Neden Bu Kadar Sıkı Denetim Var?
Bir ses klonunda yalnızca ses kalitesi önemli değildir. Ses ile metnin doğru eşleşmesi de kritiktir.
Örneğin kullanıcı başka bir cümleyi okursa kayıt:
temiz,
yüksek kaliteli,
gürültüsüz
görünebilir.
Fakat yanlış metinle eşleştirildiğinde model bu hatayı öğrenir.
Bu yüzden sistem hem akustik kaliteyi hem de metin doğruluğunu kontrol eder.
9. Gerçek Ölçümlerde Öğrenilenler
Proje geliştirilirken bazı varsayımlar gerçek kayıtlarla test edildi ve düzeltildi.
AirPods
AirPods’un 16 kHz’e düştüğü varsayımı ölçümlerle doğrulanmadı.
Gerçek kayıtlar:
iPhone: 48 kHz
AirPods: 48 kHz
Her iki cihazda da 8 kHz üzeri enerji mevcut.
AirPods’un temel farkı, düşük frekanslarda yaklaşık 5 dB daha güçlü olmasıdır. Bu nedenle dışa aktarımda 70 Hz yüksek geçiren filtre kullanılır.
Gürültü bastırma
AirPods’un yüksek S/G değerleri başlangıçta aşırı dijital işlem olarak yorumlandı. Daha sonra iPhone kayıtlarında da benzer davranış görüldü.
Sonuç:
Yüksek S/G tek başına cihazın sorunlu olduğu anlamına gelmez.
Whisper
Altı kayıt üzerinde yapılan test:
Model | Harf doğruluğu | Kelime doğruluğu | Süre/kayıt |
Whisper base | %90 | %63 | 1,7 sn |
Whisper small | %95 | %94 | 5,2 sn |
Bu nedenle sistemde Whisper small kullanılmaktadır.
Gürlük eşitleme
Kaynak kayıtlar:
-20,6 ile -24,0 LUFS
Dışa aktarılan kayıtlar:
-22,9 / -23,0 LUFS
Sonuç olarak kayıtlar yaklaşık 0,1 dB aralığında eşitlenmiştir.
10. Fonetik Cümle Sıralaması
Cümleler rastgele değil, ses birimlerini mümkün olduğunca dengeli kapsayacak şekilde sıralanır.
Difon kapsaması:
Cümle sayısı | Farklı geçiş | Kapsama |
10 | 239 | %23,8 |
25 | 330 | %33,9 |
50 | 379 | %39,0 |
121 | 402 | %41,6 |
İlk 25 cümle, 121 cümlede elde edilen toplam difon kapsamasının yaklaşık %81’ini sağlar.
Bu nedenle kayıt yarıda kesilse bile veri mümkün olduğunca dengeli kalır.
11. Veri Yapısı
Ana veri:
~/ses-verisi/
İçeriği:
ham/ → Değiştirilmemiş orijinal kayıtlar
wav/ → PCM WAV kayıtları
kayitlar.jsonl → Tüm ölçümler ve kararlar
metadata.csv → Kabul edilen kayıtların LJSpeech formatı
seslendirme/ → Cümlelerin Emel seslendirmeleri
okuma_sirasi.json → Fonetik okuma sırası
Reddedilen kayıtlar silinmez.
Böylece eşikler ileride değiştirilirse eski kayıtlar yeniden değerlendirilebilir.
12. Eğitim Veri Seti
disari_aktar.py kabul edilen kayıtları eğitim formatına dönüştürür.
Uygulanan işlemler:
Sessizlik kırpma
150 ms pay bırakma
70 Hz yüksek geçiren filtre
EBU R128 ile -23 LUFS gürlük eşitleme
24 kHz mono dönüşüm
LJSpeech formatı
Eğitim/doğrulama ayrımı
Sonuç:
~/ses-veriseti/
13. Kullanılacak Ses Klonlama Motoru
Araştırma sonucunda ana motor olarak:
VoxCPM2
seçilmiştir.
Rapordaki araştırmaya göre:
Türkçe desteği var
48 kHz çıktı
Sıfır-atış ses klonlama
LoRA ile uyarlama
Apache-2.0 lisansı
Yaklaşık 5–10 dakika ses ile LoRA uyarlaması yapılabiliyor
VDS’te GPU olmadığı için eğitim:
ücretsiz GPU sağlayan Kaggle
veya RTX 2060’lı Windows bilgisayar
üzerinden yapılacaktır.
14. Kayıt Ortamı
Mevcut kayıt düzeni:
AirPods + gürültü azaltma + araç
Bu seçim kalite açısından ideal bir stüdyo ortamı olduğu için değil, tek ve tutarlı kayıt koşulunu korumak amacıyla yapılmıştır.
Ölçümler AirPods’un kullanılabilir bant genişliğine sahip olduğunu göstermiştir.
Ancak araç ortamının ve cihaz işlemelerinin oluşturduğu bazı özellikler sonradan tamamen ortadan kaldırılamaz.
Bu nedenle gelecekte daha yüksek kalite için sessiz bir ortamda ek kayıt yapılması faydalı olabilir.
15. Mevcut Durum — 17 Eylül 2026
Sistem şu anda çalışır durumdadır.
621 cümle hazır
Yaklaşık 41 dakika seslendirme
621/621 seslendirme önbelleğe alınmış
5 kayıt alındı
5 kayıt da çekirdek sınıfında
0 red
Yaklaşık 0,3 dakika kullanıcı sesi
Fonetik kapsama: %7,8
VDS’te yaklaşık 179 GB boş alan
Otomatik yedekleme: 12 saatte bir
Son 10 yedek korunuyor
Sistem açısından temel altyapı tamamlanmıştır.
Şu anda yapılması gereken ana iş kayıt almaktır.
16. Sonraki Adımlar
Aşama 1 — Veri toplama
İlk hedef:
100–150 cümle ≈ 10 dakika
Daha sağlam bir veri seti için:
400–600 cümle ≈ 30–45 dakika
Mevcut havuz:
621 cümle ≈ 41 dakika
Aşama 2 — Veri setini oluşturma
disari_aktar.py çalıştırılır ve eğitim veri seti hazırlanır.
Aşama 3 — VoxCPM2
Kaggle GPU veya RTX 2060 üzerinde LoRA ince ayarı yapılır.
Aşama 4 — Test
Oluşturulan klon dinlenir ve:
Ses benzerliği
Doğallık
Temizlik
Tonlama
Konuşma akıcılığı
değerlendirilir.
Gerekirse yeni veri toplanır.
17. Bilinen Teknik Tuzaklar
Proje sırasında şu hatalar bulunup düzeltildi:
0.0 or varsayılan kullanımı ölçümlerde hatalı sonuç üretti.
FFmpeg’de Peak count yerine Abs Peak count kullanılmalı.
Yankı ölçümünde sabit dB eşiği kullanılamaz.
Gürültü bastırmalı cihazlarda oda yankısı güvenilir şekilde ölçülemeyebilir.
Cümle atlama durumu kalıcı hale getirildi.
Tarayıcı kayıt stop olayının gelmemesine karşı zaman aşımı eklendi.
Arka plandan dönünce AudioContext yeniden etkinleştiriliyor.
Ses önbelleğinde yarım dosya oluşmasını önlemek için atomik yazma kullanılıyor.
Kayıt kimliği çakışmalarına karşı daha güvenli kimliklendirme yapıldı.
Sabit VAD yerine ortama uyarlanan VAD kullanılıyor.
Kısa sessizliklerin cümleyi bölmesini önlemek için 1,4 saniyelik eşik kullanılıyor.
Yapay zekâ tarafından üretilen cümlelerde düşünme metni sızıntısı filtreleniyor.
Hatalı cümlelerin sonsuz tekrarına karşı üç deneme sınırı getirildi.
Güncellenen web arayüzünün yanlış dizinden servis edilmesi düzeltildi.
18. Genel Sonuç
Ses Stüdyosu’nun temel amacı bir ses klonlama modeli geliştirmek değil, kaliteli ses klonlama için güvenilir veri üretmektir.
Sistem şu anda:
Cümle üretimi → seslendirme → otomatik kayıt → akustik analiz → Whisper doğrulaması → kalite sınıflandırması → veri seti → eğitim
zincirinin tamamını otomatik olarak çalıştırabilecek durumdadır.
En önemli özellik, yalnızca kayıt yapmak yerine kaydın gerçekten kullanılabilir olup olmadığını otomatik olarak kontrol etmesidir.
Mevcut durumda altyapı tamamlanmış, 621 cümlelik havuz hazırlanmış ve sistem üretime hazır hale getirilmiştir.
Şu anki tek ana görev:
Kurucunun konuşması ve kaliteli veri toplaması.
İlk gerçek hedef yaklaşık 10 dakikalık temiz kayıt oluşturmak, ardından VoxCPM2 ile ilk ses klonunu test etmektir.
Daha fazla veri gerektiği görülürse sistem aynı ham kayıtları koruyarak yeni kayıtlarla genişletilebilir.
Kısa Teknik Özet
Kayıt: AirPods + iPhone → Opus/WebM veya AAC/MP4
Saklama: Özgün örnekleme hızında mono PCM WAV
VAD: Ortama uyarlanan eşik + 1,4 sn sessizlik
Doğrulama: Whisper.cpp small, Türkçe
Kalite: RMS, peak, clipping, S/G, bant analizi, sessizlik
TTS: Edge-TTS Emel Neural, Piper yedek
Veri: LJSpeech, 24 kHz, -23 LUFS
Klonlama: VoxCPM2 + LoRA
Mevcut havuz: 621 cümle / ~41 dakika
İlk hedef: 100–150 cümle / ~10 dakika
Sağlam hedef: 400–600 cümle / ~30–45 dakika
Sunucu: ARM VDS, 4 CPU / 23 GB RAM / GPU yok
Eğitim: Kaggle GPU veya RTX 2060
Mevcut durum: Sistem çalışır durumda.