сряда, 26 декември 2012 г.

Balabolka: Разделяне на книги на по-малки части и конвертирането им в аудио файлове

Програмата за четене на книги посредством TTS (Text-To-Speech) – Balabolka – има доста полезни функции. Една от тях е възможността даден голям текстов файл (в повечето случаи – книга) да бъде разделен на части, и тези части да бъдат директно съхранени в аудио файлове (wav, mp3, wma, ogg, и др.). В това ръководство ще ви опиша начина, по който се извършва тази процедура.

И така, следвайте стъпките:

  1. Отворете Balabolka.
  2. Натиснете CTRL+O, за да извикате прозореца за отваряне на файл. В този прозорец навигирайте до книгата, която искате да разделите на части и съхраните в аудио файл и след като маркирате файла, натиснете Enter върху него, за да го заредите в Balabolka.
  3. Уверете се, че сте задали правилно следните параметри:
    • Глас, с който искате да ви бъде прочетена книгата. Изборът на гласа може да стане от меню “Опции” -> подменю “Глас”, или от панела за настройка на гласа (който се скрива и показва от меню Изглед -> подменю “Показвай” и натискане на Enter върху “Настройка на гласа”, или чрез натискане на клавиша F10).
    • Параметри на гласа (скорост, височина на тона и сила на звука). Тези настройки са най-лесно достижими от панела за настройка на гласа. Първият от плъзгачите е за скоростта на гласа, вторият – за височината на тона му, а третият – за силата на звука. Плъзгачите в раздела за SAPI4 са само два, като липсва този за сила на звука - явно SAPI4 поддържа контрол на височината на гласа, но не и на силата на звука.
    • Настройки на изходния аудио файл. Прозорецът за настройване на параметрите на изходния аудио файл се извиква най-лесно с клавишната комбинация SHIFT+F5. Първият комбобокс в този прозорец е за определяне на скоростта на запис във файл, но тази настройка мисля че е само за SAPI4 и не ни засяга, ако ползваме гласа “Гергана” от SpeechLab. Вторият комбобокс определя звуковите параметри на изходния аудио файл (звукова честота, битове използвани за кодирането и брой звукови канали) – най-подходящата настройка за SpeechLab (гласа “Гергана”) е 48kHz, 16bit, Mono. После има един чекбокс, който ако е включен (чекнат), ще принуди избрания глас да използва избраните по-горе звукови параметри не само за експортиране в аудио файл, но и при четене на глас. Следват няколко таба, в които ще намерите настройките специфични за поддържаните от Balabolka компресирани аудио формати (mp3, wma, ogg и др.) – wave аудио форматът (.wav) има нужда само от параметрите от втория комбобокс (звукова честота, битово кодиране и брой канали).
  4. След като сте задали описаните по-горе настройки, натиснете CTRL+F8, за да извикате прозореца за разцепване и конвертиране в аудио файлове. Тук има следните опции:
    • “Изходяща файлова папка” – в това поле трябва да въведете пълния път към папката, в която ще се съхранят експортираните аудио файлове. Можете да активирате бутона “Преглед”, за да изберете вече съществуваща папка от Windows Explorer.
    • “Формат на аудио файла” – от този комбобокс избирате формата на изходния аудио файл. Засега имате възможност за избор между некомпресиран wave (.wav) файл или компресиран mp3, wma, mp4, m4a, m4b, awb или ogg файл.
    • “Основно име на изходния файл” – тук задавате основното име, което ще се съдържа като текст в изходния файл (или файлове, ако са повече от един).
    • “Число от което да започне номерирането на изходните файлове” – тук посочвате от кое число да започне номерирането на изходните файлове. По подразбиране е зададена стойност “1”.
    • После попадате на една група от два радиобутона с маркировка “Именуване на изходните файлове”. Единият от тези два радиобутона указва на Balabolka да поставя последователния номер на аудио файла след основното му име, а другият – преди него.
    • Следва една група от чекбоксове, с маркировка “Критерии при разцепването” . Тези опции определят критериите, с които ще се съобразява Balabolka, при разцепването (разделянето на части) на нашата книга. Надписите на тези опции (чекбоксове) са достатъчно ясни и не смятам да се спирам на това за какво точно служи всяка една от тях.
    • Следва едно поле с надпис "Размер на текстовия блок" - в това поле трябва да се зададе размера на изходния текстов блок (в килобайти) на който ще се базира създаването на отделните аудио файлове. Това поле е активно само когато е включен критерия "по размера на текстовия блок" в раздела с критериите за разцепване.
    • После е полето за въвеждане на текстови низове. То ще бъде активно, само ако сме включили чекбокса с текст “по зададени низове във входния текст”.
    • После следва един бутон с надпис “Прочитай номера на раздела”. Активирането му извиква друг прозорец, в който можем да зададем опции, които да накарат речевия синтезатор да прочита номера на раздела на поредния аудио файл в началото и/или в края му.
    • Следва бутонът “Тестване”. При активирането му излиза диалогов прозорец, в който пише приблизителния брой на изходните аудио файлове, след задаването на критериите за разцепване.
    • После е бутонът “Разцепване и конвертиране”. При активирането му излиза друг прозорец, в който има списък с точките на разцепване и всяка една от тях има чекбокс. Ако чекбокса е включен (чекнат), то книгата ще бъде разделена в тази точка. Ако изключим чекбокса, то книгата няма да бъде разделяна в тази точка. Първия чекбокс не може да бъде изключен – доколкото схващам – той показва началото на книгата.
  5. След като в прозореца със списъка с точките на разцепване сме определили къде ще бъде разделяна книгата и къде не, натискаме бутона “Разделяне”, за да започне самата процедура по разделянето на части и конвертирането им в аудио файлове. И после не ни остава нищо друго, освен да чакаме да завърши процедурата.

Пояснения:

  1. Моето мнение е, че една книга би трябвало (дори само с цел удобство) да се разделя по критерий за начало на следващата глава. Така според мен е по-смислено и по-удобно. В настройките за разцепване и конвертиране има няколко опции, които могат да ви улеснят при извършване на разцепване по този критерий. Ако името на главата е с главни букви, можете да посочите на Balabolka да цепи файла при наличието на ред само с главни букви. По-точно е разделянето обаче (поне в повечето случаи) ако за критерий използваме намиращи се в текста низове (примерно “ГЛАВА”, с главни букви. А ако искате – можете с функцията за търсене в документа (активираща се с CTRL+F) да си намерите сами къде започва всяка нова глава, и на всяко такова място да си сложите по една именувана отметка (това става с CTRL+F3). И след това в прозореца за разцепване и конвертиране да укажете на Balabolka да разделя файла базирайки се на именуваните отметки – така книгата ви ще бъде разцепена по глави, ако сте поставили именуваните отметки на точните места.
  2. 32-битовия вариант на SAPI стандарта има ограничение, което не позволява експортиране в аудио файл, надвишаващ 4GB. Аз от личен опит установих, че дори да е под 4GB (3.8GB примерно) изходния аудио файл, пак възникват проблеми. Затова съветът ми е: ако имате по-голяма книга, която искате да експортирате в аудио файл – разделете я на части преди експортирането (ползвайки описаната от мен в това ръководство функция). По принцип една книга експортирана в компресиран аудио файл (mp3, wma или ogg) трудно би достигнала 4GB големина, но SAPI стандартът е направен така, че текста първо трябва да се експортира в некомпресиран wave (.wav) файл, а после евентуално да се компресира. А един .wav файл би достигнал доста по-лесно 4GB размер, и това трябва да се има предвид.