Abogen - EPUB, PDF ve metinden sesli kitap oluşturma
(github.com/denizsafak)- Abogen, ePub, PDF ve metin dosyalarını kolayca yüksek kaliteli sesli kitaplara dönüştüren açık kaynaklı bir araçtır
- Dönüştürme sürecinde sesle senkronize altyazılar da otomatik olarak oluşturulur
- Kullanıcıya özel ses miksleme, kodlama formatları, bölüm ayırma, toplu işleme (kuyruk modu) gibi çeşitli özellikler sunar
- En güncel Kokoro-82M ses sentez motorunu kullanarak doğal TTS kalitesi ve çoklu dil desteği sağlar
- Diğer projelere kıyasla sezgisel GUI, proje bazlı klasör yönetimi ve otomatik meta veri işleme gibi avantajlara sahiptir
Abogen genel bakış ve önemi
- Abogen, metin dosyalarını (ePub, PDF, .txt vb.) hızla doğal sesli kitaplara dönüştüren açık kaynaklı bir metinden konuşmaya (TTS) aracıdır
- Sezgisel arayüz, çoklu dosya toplu işleme, kullanıcı ses miksleme, çeşitli çıktı formatları, bölüm yönetimi ve meta veri desteği gibi zengin özellikler sunar
- Diğer açık kaynak projelerin aksine, basit kullanım ile yüksek kaliteli ses (özellikle Kokoro-82M tabanlı TTS) ve altyazıları kolayca elde etmeyi sağlar
- İlk kurulum süreci ve karmaşık Python ortamı ayarları otomatikleştirildiğinden, başlangıç seviyesindeki geliştiriciler de kolayca kullanabilir
- Özellikle proje bazlı bölüm ve meta veri işleme, GUI ortamı ve özel ses özellikleri sektörde rekabet avantajı olarak değerlendirilmektedir
Başlıca özelliklerin özeti
- Metinden konuşmaya dönüştürme (TTS) ile ePub, PDF ve metin dosyalarını saniyeler içinde sese dönüştürür
- Senkronize altyazılar otomatik oluşturulur; ses ve altyazının tamamen eşleştiği bir yapı sunar
- Ses mikseri ile birden çok ses modelini harmanlayarak kendi ses profilinizi oluşturabilirsiniz
- Kuyruk modu ile birden fazla dosyayı toplu işleme ve dosya bazında ayrı ayarları koruma desteği sağlar
- Bölüm işaretçileri ve meta veriler otomatik oluşturulur; proje klasörü yönetimi özelliği vardır
- Çeşitli çıktı formatları: WAV, FLAC, MP3, OPUS, M4B desteği; altyazılarda da SRT/ASS gibi seçenekler
- Desteklenen başlıca diller: Amerikan/İngiliz İngilizcesi, İspanyolca, Fransızca, Hintçe, İtalyanca, Japonca, Portekizce, Çince vb.
- Kokoro-82M TTS motoru tabanlı yüksek kaliteli ve doğal telaffuz sunar
- Hem GUI hem komut satırı kullanımını destekler, Docker konteyneriyle de kullanılabilir
Abogen özelliklerinin ayrıntılı özeti
#Başlangıç ve kurulum arka planı
- Mevcut TTS araçları kurulum, ortam ayarı, kalite, özelleştirme ve çoklu dosya işleme açısından birçok sınıra sahiptir
- Abogen, kolay ama güçlü bir arayüzle metin-ses dönüştürme, altyazı oluşturma, ses miksleme gibi gelişmiş özellikleri yeni başlayanların da rahatça kullanabilmesi için geliştirilmiştir
- Birden fazla işletim sisteminde (Windows, Linux, macOS) kullanılabilir ve önceden Python kurulumu gerektirmeden gömülü/otomatik kurulum ortamı desteği sunar
#Temel kullanım
- ePub, PDF veya metin dosyalarını sürükle bırak ile ekleyebilir ya da yerleşik düzenleyiciyi kullanabilirsiniz
- Ayarlar: okuma hızı, ses (model·cinsiyet·dil), altyazı stili (cümle bazlı·kelime bazlı), ses ve altyazı çıktı formatı, çıktı yolu gibi ayrıntılar seçilebilir
- Yalnızca dönüştürmeyi başlat düğmesine tıklayarak sonucu anında oluşturabilirsiniz
#Gerçek kullanım gösterimi
- Düşük özellikli bir GPU'da bile yaklaşık 3.000 karakterlik metin, 11 saniyede 3 dakika 28 saniyelik sese dönüştürülebilir
- İşleme hızı donanım özelliklerine göre değişir
#Ayar seçenekleri
- Girdi yöntemi: sürükle bırak, yerleşik düzenleyici, kuyruk yönetimi ile birden fazla dosyanın eşzamanlı işlenmesi
- Okuma hızı: 0.1x ~ 2.0x arasında hassas ayar
- Ses seçimi ve önizleme: dil ve cinsiyete göre modeller, özel mikserle kişisel ses profili belirleme
- Altyazı oluşturma: cümle, virgül bazlı veya n kelime bazlı altyazıları otomatikleştirme
- Ses çıktısı: WAV, FLAC, MP3, OPUS, M4B (bölümler dahil)
- Altyazı formatı: SRT, ASS vb. için özelleştirme desteği
- Bölüm ve proje yönetimi: bölüm bazlı sesler, birleştirilmiş çıktı ve meta verilerle proje klasörüne kaydetme
- Tema, günlükler, kısayollar vb. için çeşitli UI seçenekleri
#Voice Mixer
- Birden fazla ses modelini ağırlık ayarıyla birleştirerek benzersiz bir ses oluşturabilir, kaydedebilir ve tekrar kullanabilirsiniz
- Ses miksleme sonucunu bir ses profili olarak önizleyip uygulayabilirsiniz
#Kuyruk modu
- Dosya bazında ayrı ayarları korur ve birden fazla metin ve eBook'u tek seferde otomatik dönüştürür
- Her dosya, kuyruğa eklendiği andaki ayarları ayrı olarak saklar; ana ayarlardaki değişikliklerden etkilenmez
#Bölüm işaretçileri / meta veriler
- Bölüm ayırma etiketleri otomatik olarak eklenir
- Manuel olarak da `` etiketi eklenebilir
- Hata durumunda yalnızca ilgili bölümü hızlıca yeniden işlemek avantaj sağlar
- Meta veri etiketleri ile başlık, yazar, yıl gibi bilgiler eklenerek sesli kitap uygulamalarında bilgi sunulabilir
- Metin dosyasının başına eklenebilir
#Desteklenen diller
- Kokoro-82M motorunun çoklu dil desteği
- İngilizce (ABD/Birleşik Krallık), İspanyolca, Fransızca, Hintçe, İtalyanca, Japonca, Brezilya Portekizcesi, Çince vb.
- Diğer diller için altyazı desteği, motorun teknik sınırlamaları nedeniyle ileride talep üzerine eklenebilir
#Çıktı ve kullanım
- MPV gibi gelişmiş medya oynatıcıları önerilir; senkronize altyazı desteği vardır
- Docker tabanlı sunucu çalıştırmayı destekler
#Benzer projelerden farkları
- Abogen, bağımsız GUI ve özelleştirme özellikleri, proje bazlı klasör yönetimi, bölüm ve meta veri otomasyonu, kuyruk işleme ve karışık sesler ile üst düzey kullanım kolaylığı sunar
- audiblez, autiobooks, pdf-narrator, epub_to_audiobook, ebook2audiobook ile benzerlikler taşısa da GUI kullanılabilirliği, gelişmiş TTS motoru ve bölüm/altyazı senkronizasyonu ayırt edici noktalarıdır
#Yol haritası ve katkı
- OCR (belge tanıma) eklenmesi ve çok dilli GUI'nin güçlendirilmesi planlanmaktadır
- Herkes fork alıp özellik ekleme, hata düzeltme gibi açık kaynak katkıları yapabilir
#Teknik katkılar ve lisans
- Kokoro-82M TTS, PyQt tabanlı GUI, EbookLib entegrasyonu gibi çeşitli ortak açık kaynak teknolojiler kullanılmaktadır
- MIT lisansı (ticari kullanım ve değişiklik özgürlüğü), motor (Kokoro) için Apache-2.0 lisansı
#Dikkat edilmesi gerekenler ve sınırlamalar
- Altyazı senkronizasyonu şu anda yalnızca İngilizce için sunulmaktadır; diğer diller için Kokoro motorunda geliştirme gereklidir
- Bazı özelliklerde sınırlamalar vardır (Docker içinde ses önizleme gibi)
- Kurulum ve ortam ayarlarına ilişkin ayrıntılı kılavuz için resmi belgelere bakın
1 yorum
Hacker News görüşleri
Calibre-Web'den kitapların sunulduğu, bunların Abogen ile sesli sürüme dönüştürülüp Audiobookshelf üzerinden servis edildiği bir akış hayal ediyorum; işitme engelliler için de gerçekten çok iyi bir çözüm gibi görünüyor. Bkz. Calibre-Web audiobookshelf
Bu araçla metin tabanlı kitapları sesli kitaba dönüştürüp kişisel kullanım için tüketmek sorun değil, ancak bir yazarın bunu dağıtım için dosya üretmekte kullanması çok riskli. Bağımsız yazarlar eserlerini tanıtmakta zaten çok zorlanıyor ve bugünlerde potansiyel okurlar, yapay zeka kullanıldığına dair en ufak bir iz görür görmez ilgilerini kesebiliyor. Benim durumumda, iyi oyunculuk yapan ama ana dili İngilizce olmayan seslendirme sanatçılarını ya da evde başka diller konuşan sanatçıları işe almaya başladım. Hatta bazen aksanın biraz daha belirgin olmasını istiyorum; bu hem yapay zekadan ayrışmaya yardımcı oluyor hem de yeni bir deneyim arayanlar için kitaba çekicilik katıyor. Geçmişte Akdeniz civarından oyuncuların seçmelerde sesli kitapları ne kadar canlı okuduğunu deneyimleyip çok şaşırmıştım.
Bunun sadece metni sese dönüştüren bir araç mı yoksa gerçekten bir sesli kitap gibi bir çıktı mı ürettiğini merak ediyorum. İyi sesli kitaplarda anlatıcı genelde karakterleri birbirinden farklı oynar, vurgu ve lehçeleri de farklı verir. Bunlar chatgpt gibi araçlarla birkaç cümle için yapılabilir gibi duruyor ama 8-20 saatlik bir sesli kitabın tamamında kolay değil. Mevcut seviyede, bir epub dosyasını son teknoloji düzeyinde bir sesli kitaba dönüştürmenin önünde hâlâ temel engeller olduğunu düşünüyorum. Acaba gözden kaçırdığım bir şey mi var?
Bu araç, abogen uygulamasını çalıştırırken pip gerektiriyor; yani
pipkullanılabilen bir ortamda çalıştırılmalı.uv tool run abogenkomutuyla başlatılabiliyor ama model kurulum adımında takılıyor.uv venv && uv pip install pip && source .venv/bin/activate && abogenile düzgün çalıştığını doğruladım. Paketlenmiş GUI de gayet iyi, PDF dosyasında sayfa ya da bölüm seçme arayüzü de güzel ve dizüstümdeki GTX 1650 ile hızı da iyi. Çıktı olarak .ogg ses dosyası ve .ass altyazı dosyası veriyor; mpv ile açınca terminalden hem dinleyip hem okuyabiliyorsunuz. Tek eksisi, PDF kaynağındaki satır sonlarının olduğu gibi kalması nedeniyle cümlelerin ortasında uzun kopmalar oluşabilmesi ve bunun anlamayı zorlaştırması. Tek satırlık yeni satırları atlama özelliğini açınca belirgin biçimde düzeliyor.af_heartsesi kişisel olarak çok hoşuma gidiyor,af_jessicaise biraz rahatsız edici. Sesli kitaplarda en büyük meselelerden biri, anlatıcıya dair beğeni ya da beğenmemenin kitabın içeriği kadar önemli olması. Böyle bir günün yakında geleceğini düşünüyordum ve gerçekten hayranlık verici. Sesli kitaplara o kadar alıştım ki gerçek kitapları baştan sona okumak zor geliyor. Ticari potansiyeli olmadığı için bir seslendirme sanatçısının okumayacağı yaklaşık 20 kitabı bu özellikle sevdiğim bir sesle kolayca dönüştürebilmek gerçekten şaşırtıcı.Sesli kitapları gerçekten seviyorum ama anlatım konusunda çok seçiciyim. Bana uymayan bir anlatıcı yüzünden yarıda bıraktığım birçok sesli kitap oldu. Böyle bir hizmeti gerçekten kullanabilmem için daha epey zaman var gibi görünüyor.
Metin dışında kod, tablo, görsel vb. içeren kitaplarda çok iyi çalışmayacak gibi görünüyor (bu da beklenen bir şey). PDF sayfasını alıp onu "saf düzyazı" sürümüne dönüştüren bir açık kaynak sinir ağı olup olmadığını merak ediyorum; örneğin resim ve metnin birlikte olduğu bir sayfada, görselin içeriğini ya da betimini de metne döken bir şey gibi.
Blog ya da makale gibi kısa içeriklerde Kokoro TTS denedim ama beklentimi karşılamadı. Şu anda Gemini 2.5 Flash TTS hem çok daha iyi performans veriyor hem de ücretsiz kotası cömert (üretim başına 10 dakika, günde 90 dakika). Kısa metinlerde ses tutarlılığı sorunu pek hissedilmiyor ama iş tüm bir kitap kadar uzayınca bunun kesinlikle sorun olduğu ortada.
Felsefe kitaplarını sesli kitaba dönüştürerek erişilebilirliği artırmak için bu aracı denedim ama önemli bir sorun vardı. Kokoro'ya verilen giriş cümlesi çok uzunsa, son taraftaki kelime ya da cümleler atlanıyor ya da belirsizleşiyor. Abogen metni cümle bazında bölüp veriyor ama cümle uzunsa bunu aynen Kokoro'ya gönderiyor; bu da ortaya çıkan sesli kitabı kullanılamaz hale getiriyor. Bu yüzden nltk ve regex ile daha ince parçalama yapan kendi tkinter GUI uygulamamı yazıyorum.
PDF'yi düzgün biçimlendirilmiş bir ePub'a dönüştüren bir çözüm çıkmasını şahsen umuyorum.
Kokoro TTS'yi CLI için audiblez ile birlikte kullandım. Küçük bir model olmasına rağmen hızlıydı ve ses kalitesi etkileyiciydi. Yine de bazı eksileri var: a) cümle sonundaki nokta ile "Mr." "Mrs." gibi kısaltmalardaki noktayı ayırt edemiyor, bu yüzden tuhaf duraksamalar oluşuyor, b) üç nokta (...) iyi işlenmiyor, c) bağlam farklı olsa da kelimelerin telaffuzu hep aynı kalıyor.