10 điểm bởi GN⁺ 2025-08-11 | 1 bình luận | Chia sẻ qua WhatsApp
  • Abogen là một công cụ mã nguồn mở giúp chuyển đổi tệp ePub, PDF và văn bản thành audiobook chất lượng cao một cách dễ dàng
  • Trong quá trình chuyển đổi, phụ đề đồng bộ (subtitle) với giọng nói cũng được tạo tự động
  • Cung cấp nhiều tính năng như trộn giọng nói tùy biến, định dạng mã hóa, chia chương, xử lý hàng loạt (chế độ hàng đợi)
  • Sử dụng bộ máy tổng hợp giọng nói Kokoro-82M mới nhất để hỗ trợ chất lượng TTS tự nhiên và đa ngôn ngữ
  • So với các dự án khác, công cụ này có ưu điểm về GUI trực quan, quản lý thư mục theo dự án và tự động xử lý metadata

Tổng quan và tầm quan trọng của Abogen

  • Abogen là công cụ chuyển văn bản thành giọng nói (TTS) mã nguồn mở giúp chuyển nhanh các tệp văn bản (ePub, PDF, .txt, v.v.) thành audiobook tự nhiên
  • Cung cấp nhiều tính năng phong phú như giao diện trực quan, xử lý hàng loạt nhiều tệp, trộn giọng tùy chỉnh, nhiều định dạng đầu ra, quản lý chương và hỗ trợ metadata
  • Khác với các dự án mã nguồn mở khác, chỉ với thao tác đơn giản là có thể dễ dàng tạo ra âm thanh chất lượng cao (đặc biệt là TTS dựa trên Kokoro-82M) cùng với phụ đề
  • Quá trình cài đặt ban đầu và thiết lập môi trường Python phức tạp được tự động hóa, nên cả lập trình viên mới bắt đầu cũng có thể sử dụng dễ dàng
  • Đặc biệt, xử lý chương và metadata theo từng dự án, môi trường GUI, tính năng giọng nói tùy chỉnh được đánh giá là lợi thế cạnh tranh trong ngành

Tóm tắt các tính năng chính

  • Chuyển văn bản thành giọng nói (TTS) để biến ePub, PDF và tệp văn bản thành âm thanh chỉ trong vài giây
  • Tự động tạo phụ đề đồng bộ (subtitles), hỗ trợ âm thanh và phụ đề khớp hoàn toàn
  • Sử dụng voice mixer để trộn nhiều mô hình giọng nói, tạo hồ sơ giọng nói của riêng bạn
  • Tính năng chế độ hàng đợi hỗ trợ xử lý hàng loạt nhiều tệp và giữ cấu hình riêng cho từng tệp
  • Tự động tạo dấu chương/metadata và quản lý thư mục dự án
  • Nhiều định dạng đầu ra: hỗ trợ WAV, FLAC, MP3, OPUS, M4B; phụ đề cũng có thể chọn SRT/ASS, v.v.
  • Hỗ trợ các ngôn ngữ chính: tiếng Anh Mỹ/Anh, tiếng Tây Ban Nha, tiếng Pháp, tiếng Hindi, tiếng Ý, tiếng Nhật, tiếng Bồ Đào Nha, tiếng Trung, v.v.
  • Cung cấp chất lượng cao và phát âm tự nhiên dựa trên bộ máy TTS Kokoro-82M
  • Hỗ trợ cả GUI lẫn dòng lệnh, có thể sử dụng container Docker

Tổng hợp chi tiết theo từng tính năng của Abogen

#Bắt đầu và bối cảnh cài đặt

  • Các công cụ TTS hiện có thường bị giới hạn về cài đặt, cấu hình môi trường, chất lượng, khả năng tùy biến và xử lý nhiều tệp
  • Abogen được tạo ra với giao diện vừa đơn giản vừa mạnh mẽ để ngay cả người mới cũng có thể dễ dàng tiếp cận các tính năng nâng cao như chuyển đổi văn bản–âm thanh, tạo phụ đề và trộn giọng nói
  • Có thể sử dụng trên nhiều hệ điều hành (Windows, Linux, macOS) và hỗ trợ tự động dựng môi trường tích hợp/cài đặt mà không cần cài Python trước

#Cách sử dụng chính

  • Có thể kéo và thả tệp ePub, PDF hoặc văn bản, hoặc dùng trình biên tập tích hợp
  • Thiết lập: có thể chọn chi tiết tốc độ đọc, giọng nói (mô hình·giới tính·ngôn ngữ), kiểu phụ đề (theo câu·theo từ), định dạng đầu ra âm thanh·phụ đề, đường dẫn xuất, v.v.
  • Chỉ cần nhấn nút bắt đầu chuyển đổi là có thể tạo kết quả ngay

#Trình diễn thực tế

  • Ngay cả với GPU cấu hình thấp, khoảng 3.000 ký tự văn bản có thể được tạo thành âm thanh dài 3 phút 28 giây chỉ trong 11 giây
  • Tốc độ xử lý sẽ khác nhau tùy cấu hình phần cứng

#Các tùy chọn thiết lập

  • Phương thức nhập: kéo thả, trình biên tập tích hợp, quản lý hàng đợi để xử lý đồng thời nhiều tệp
  • Tốc độ đọc: điều chỉnh chi tiết từ 0.1x đến 2.0x
  • Chọn giọng nói và nghe thử: mô hình theo ngôn ngữ·giới tính, chỉ định hồ sơ giọng tùy chỉnh bằng mixer
  • Tạo phụ đề: tự động hóa phụ đề theo câu, theo dấu phẩy, theo n từ
  • Đầu ra âm thanh: WAV, FLAC, MP3, OPUS, M4B (bao gồm chương)
  • Định dạng phụ đề: hỗ trợ tùy biến như SRT, ASS
  • Quản lý chương và dự án: lưu thành thư mục dự án gồm âm thanh theo chương, bản gộp và metadata
  • Nhiều tùy chọn UI như chủ đề, log, phím tắt, v.v.

#Voice Mixer

  • Kết hợp nhiều mô hình giọng nói bằng điều chỉnh trọng số, cho phép trực tiếp tạo, lưu và tái sử dụng giọng độc đáo
  • Có thể nghe thử và áp dụng kết quả trộn giọng như một hồ sơ giọng nói

#Chế độ hàng đợi

  • Giữ cài đặt riêng cho từng tệp, tự động chuyển đổi nhiều văn bản và eBook cùng lúc
  • Mỗi tệp sẽ lưu riêng thiết lập tại thời điểm được thêm vào hàng đợi, không phụ thuộc vào thay đổi ở cài đặt chính

#Dấu chương/Metadata

  • Tự động chèn thẻ phân chia chương
    • Cũng có thể chèn thủ công thẻ ``
    • Khi xảy ra lỗi, sẽ thuận tiện để xử lý lại nhanh chỉ chương đó
  • Có thể thêm thông tin như tiêu đề, tác giả, năm bằng thẻ metadata để hiển thị trong ứng dụng audiobook
    • Có thể thêm ở phần đầu của tệp văn bản

#Ngôn ngữ được hỗ trợ

  • Hỗ trợ đa ngôn ngữ của bộ máy Kokoro-82M
  • Tiếng Anh (Mỹ/Anh), tiếng Tây Ban Nha, tiếng Pháp, tiếng Hindi, tiếng Ý, tiếng Nhật, tiếng Bồ Đào Nha Brazil, tiếng Trung, v.v.
  • Phụ đề cho các ngôn ngữ khác có thể được yêu cầu bổ sung sau do giới hạn kỹ thuật của bộ máy

#Đầu ra và cách sử dụng

  • Khuyến nghị các trình phát media nâng cao như MPV, có hỗ trợ phụ đề đồng bộ
  • Hỗ trợ chạy máy chủ dựa trên Docker

#Điểm khác biệt so với các dự án tương tự

  • Abogen mang lại mức độ tiện dụng hàng đầu với GUI độc lập cùng khả năng tùy biến, quản lý thư mục theo dự án, tự động hóa chương·metadata, xử lý hàng đợi và giọng trộn
  • Có điểm tương đồng với audiblez, autiobooks, pdf-narrator, epub_to_audiobook, ebook2audiobook nhưng khác biệt ở tính dễ dùng của GUI, bộ máy TTS nâng cao và đồng bộ chương/phụ đề

#Lộ trình và đóng góp

  • Có kế hoạch bổ sung OCR (nhận dạng tài liệu), tăng cường GUI đa ngôn ngữ, v.v.
  • Bất kỳ ai cũng có thể fork để thêm tính năng, sửa lỗi và đóng góp cho mã nguồn mở

#Ghi công kỹ thuật và giấy phép

  • Sử dụng nhiều công nghệ mã nguồn mở đối tác như TTS Kokoro-82M, GUI dựa trên PyQt, tích hợp EbookLib, v.v.
  • Giấy phép MIT (tự do sửa đổi và sử dụng thương mại), bộ máy (Kokoro) dùng giấy phép Apache-2.0

#Lưu ý và giới hạn

  • Tính năng đồng bộ phụ đề hiện chỉ được cung cấp cho tiếng Anh (hỗ trợ ngôn ngữ khác cần phát triển thêm ở bộ máy Kokoro)
  • Một số tính năng bị giới hạn (ví dụ preview âm thanh trong Docker)
  • Hãy tham khảo tài liệu chính thức để biết hướng dẫn chi tiết về cài đặt và thiết lập môi trường

1 bình luận

 
GN⁺ 2025-08-11
Ý kiến Hacker News
  • Tôi hình dung một pipeline lấy sách từ Calibre-Web, dùng Abogen để tạo phiên bản audio, rồi phục vụ qua Audiobookshelf; có vẻ đây cũng sẽ là một giải pháp rất tốt cho người khiếm thị hoặc người gặp khó khăn về nghe nhìn, tham khảo Calibre-Webaudiobookshelf

  • Dùng công cụ này để biến sách dạng văn bản thành audiobook cho mục đích nghe cá nhân thì ổn, nhưng để tác giả dùng nó tạo file phát hành thì rất rủi ro; các tác giả độc lập vốn đã rất khó quảng bá tác phẩm, và dạo này chỉ cần độc giả tiềm năng thấy dấu hiệu có AI là họ mất hứng ngay; về phần tôi, tôi bắt đầu thuê các diễn viên lồng tiếng diễn xuất tốt nhưng tiếng Anh không phải tiếng mẹ đẻ, hoặc những người dùng ngôn ngữ khác ở nhà; đôi khi tôi còn yêu cầu họ giữ giọng nặng hơn một chút, vì cách này giúp phân biệt với AI và cũng tăng sức hút cho cuốn sách với những ai muốn trải nghiệm mới; trước đây tôi từng rất bất ngờ khi nghe thử tuyển chọn các diễn viên đến từ vùng Địa Trung Hải vì họ thu audiobook sống động đến mức kinh ngạc

    • Tôi dùng WhisperSync của Amazon khá thường xuyên; nhờ nó tôi có thể vừa đọc vừa nghe sách cùng lúc, rất tiện vì khi đang di chuyển tôi vẫn có thể liếc mắt kiểm tra nội dung hoặc đánh dấu highlight sau này; điểm trừ là không có nhiều sách hỗ trợ tính năng này, và chức năng đọc mặc định trong app Kindle thì chất lượng không cao; vì vậy cá nhân tôi rất muốn những cuốn sách được viết tốt bởi con người có thêm tùy chọn giọng đọc AI
    • Tôi không chắc chuyện độc giả tiềm năng bây giờ cứ thấy dấu vết AI là bỏ qua sách có thật sự phổ biến đến thế không; khi chỉ đọc văn bản, nếu đầu ra đủ tốt thì đa số có vẻ không quá bận tâm chuyện đó được đọc bằng AI hay gì khác; mọi người không muốn sách do AI viết, nhưng dùng giọng AI để đọc văn bản thì họ đã thoải mái dùng từ lâu khi nghe bài báo hay sách; chuyện này khác với diễn xuất hay chỉ đạo giọng nói
  • Tôi đang thắc mắc liệu đây chỉ là chuyển văn bản thành giọng nói, hay thật sự tạo ra thứ giống audiobook; audiobook hay thường có diễn viên lồng tiếng thể hiện từng nhân vật khác nhau, với ngữ điệu và phương ngữ riêng; những thứ này có lẽ ChatGPT và các công cụ tương tự có thể làm được vài câu, nhưng để duy trì suốt cả audiobook dài 8–20 giờ thì không dễ; ở mức hiện tại tôi vẫn nghĩ còn có rào cản cơ bản để biến epub thành audiobook tối tân, không biết tôi có bỏ sót điều gì không

    • ElevenLabs có tính năng tạo kiểu "full cast", nên các nhân vật khác nhau có thể được gán các giọng khác nhau; nhưng nó không tự động nhạy với phương ngữ; với các hệ thống hiện nay cũng có thể thay đổi giọng hoặc cách nói theo ngữ cảnh hay prompt, nhưng tôi không rõ độ tin cậy đến đâu
    • Có thể dùng mixer để phối nhiều giọng nhân vật khác nhau nhằm tạo ra nhiều sắc thái, thậm chí tự viết mã để gán giọng phù hợp cho từng nhân vật
    • Thật ra tôi lại không thích kiểu dàn dựng nhiều giọng nhân vật; đọc lời trích dẫn với đúng tông và ngữ điệu theo ngữ cảnh thì hay, nhưng tôi không thích việc đổi giọng riêng cho từng nhân vật
  • Công cụ này cần pip khi chạy app abogen, nên phải chạy trong môi trường có dùng được pip; có thể khởi động bằng uv tool run abogen, nhưng nó dừng ở bước cài model; tôi xác nhận rằng uv venv && uv pip install pip && source .venv/bin/activate && abogen thì chạy ổn; GUI đóng gói cũng tốt, UI chọn trang hoặc mục trong file PDF cũng hay, tốc độ trên laptop GTX 1650 của tôi khá nhanh; đầu ra là audio .ogg và file phụ đề .ass, mở bằng mpv thì có thể vừa nghe vừa đọc trong terminal; một điểm tiếc là xuống dòng trong PDF gốc vẫn bị giữ nguyên nên đôi khi câu bị ngắt dài giữa chừng, gây khó hiểu; bật tùy chọn bỏ qua single newline thì cải thiện rõ rệt

    • Tôi dùng RTX 4060 để chuyển một cuốn sách 110 trang sang wav trong khoảng một giờ; nếu không bật tính năng bỏ qua xuống dòng thì kết quả khá tệ; bật lên thì thật sự rất ấn tượng; tôi đặc biệt thích giọng af_heart còn af_jessica thì hơi khó chịu; vấn đề lớn nhất của audiobook là mức độ hợp gu với giọng đọc quan trọng gần như nội dung cuốn sách; tôi đã nghĩ ngày này sớm muộn cũng đến, và quả thực rất đáng kinh ngạc; tôi đã quen audiobook đến mức đọc hết một cuốn sách giấy còn khó, nên việc có thể dễ dàng chuyển khoảng 20 cuốn sách vốn không đủ tiềm năng thị trường để thuê người đọc thành audiobook bằng giọng tôi thích là điều thật sự đáng kinh ngạc
  • Tôi rất thích audiobook nhưng khá khó tính với phần dẫn truyện; có nhiều audiobook tôi đã bỏ dở giữa chừng chỉ vì không hợp giọng đọc, nên để tôi thực sự dùng được dịch vụ kiểu này thì có lẽ vẫn còn khá lâu nữa

    • Tôi từng mua và nghe trọn cả series chỉ vì diễn viên lồng tiếng quá hay, ví dụ như Grim Noir Chronicles hay các tác phẩm full cast của Soundbooth Theater; nếu chỉ muốn chuyển văn bản thành rung động âm thanh thì TTS là đủ, nhưng tôi vẫn nghĩ phần dẫn truyện bằng AI hiện chưa thể mang lại trải nghiệm mà diễn viên lồng tiếng con người đem đến
    • Tôi cũng từng bỏ dở audiobook vì giọng đọc, nhưng theo chiều ngược lại, nếu là giọng AI trung tính mà ổn thì có khi tôi lại nghe hết được những cuốn trước đây từng thấy khó nghe; tôi hy vọng giọng AI sạch sẽ còn có thể là lựa chọn tốt hơn một số phần dẫn truyện chính thức nghe gượng gạo
    • Cũng có trường hợp một series do R. C. Bray đọc bỗng đổi sang diễn viên khác rồi trở nên cực khó nghe, đến mức tôi bỏ luôn không hoàn thành; ngược lại cũng có những người đọc như Wil Wheaton mà tôi chủ động tìm nghe; rốt cuộc trong audiobook, người đọc có thể cứu cả tác phẩm mà cũng có thể phá hỏng nó
    • Audiobook bạn thích nhất là gì
  • Có lẽ nó sẽ không áp dụng tốt cho những cuốn sách ngoài văn bản còn có code, biểu đồ hay hình ảnh kèm theo, điều này thì khá hiển nhiên; tôi cũng tò mò không biết có mạng nơ-ron mã nguồn mở nào nhận trang PDF rồi chuyển thành phiên bản "thuần văn xuôi" hay không, ví dụ với trang có cả hình lẫn chữ thì nó sẽ diễn đạt cả nội dung hoặc mô tả của hình thành văn bản

  • Tôi đã thử Kokoro TTS cho các nội dung ngắn như blog hay bài báo nhưng thấy chưa đạt kỳ vọng; giờ thì Gemini 2.5 Flash TTS tốt hơn nhiều và hạn mức miễn phí cũng khá hào phóng (10 phút mỗi lần tạo, 90 phút mỗi ngày); với bài ngắn thì vấn đề nhất quán giọng nói không lộ rõ, nhưng với thứ dài như cả một cuốn sách thì đây chắc chắn là vấn đề

    • Kokoro không tệ với vai trò TTS, nhưng thiếu biểu cảm; xét đến kích thước của model này thì điều đó có lẽ cũng khó tránh
  • Tôi đã thử dùng công cụ này để biến các sách triết học thành audiobook nhằm tăng khả năng tiếp cận, nhưng có một vấn đề nghiêm trọng; nếu câu đầu vào cho Kokoro quá dài thì từ hoặc cả câu ở phần cuối bị bỏ qua hoặc trở nên mờ đục; abogen cắt văn bản theo câu trước khi đưa vào, nên nếu câu dài thì nó cứ thế đi vào Kokoro và khiến audiobook đạt chất lượng không thể dùng nổi; vì vậy tôi đang tự làm một ứng dụng tkinter GUI dùng nltk và regex để chia nhỏ tinh hơn

    • Tôi đang dùng CLI kokoro-tts khá hài lòng vì khả năng tách/chia tốt hơn kokoro-tts; công cụ này còn tạo luôn file audio theo từng chương và metadata; có thể dùng m4b-tool để nối các file audio lại và thêm thông tin chương m4b-tool; tôi rất muốn viết một bài về quy trình làm việc này vì nó thực sự hữu ích
    • Dạo này tôi không hài lòng vì TTS deep learning cho đầu ra quá thiếu tính xác định; các phương pháp cổ điển lại cho phát âm dễ đoán hơn nên đôi khi còn thấy tốt hơn
  • Cá nhân tôi đang chờ một giải pháp có thể chuyển PDF thành ePub được dọn dẹp gọn gàng

  • Tôi đã dùng Kokoro TTS cùng audiblez cho CLI; model nhỏ nhưng tốc độ nhanh và chất lượng âm thanh khá ấn tượng; tuy vậy vẫn có vài điểm chưa ổn: a) nó không phân biệt được dấu chấm kết câu với dấu chấm trong các từ viết tắt như "Mr." hay "Mrs.", nên tạo ra những khoảng dừng gượng gạo; b) xử lý dấu ba chấm (...) chưa tốt; c) phát âm từ luôn giống hệt nhau dù ngữ cảnh khác nhau

    • Thử tận dụng thẻ phiên âm SSML cũng là một cách, một số TTS có hỗ trợ; cũng có thể dùng một LLM mạnh để tiền xử lý nhằm tránh các vấn đề kiểu này
    • Các trường hợp như vấn đề Mr. / Mrs. có vẻ sửa khá dễ, ít nhất tôi nghĩ cũng có thể loại bỏ được một phần các trường hợp phổ biến nhất