сряда, 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. Първият разгъващ се списък определя звуковите параметри на изходния аудио файл (звукова честота, битове използвани за кодирането и брой звукови канали) – най-подходящата настройка за SpeechLab (гласа „Гергана“) е 48kHz, 16bit, Mono. За препоръчване е обаче да се избере стойността „По подразбиране за гласа„, освен ако някоя от другите стойности не работи по-добре за избрания глас. После има едно поле за отметка, което ако е отметнато, ще принуди избрания глас да използва избраните по-горе звукови параметри не само за експортиране в аудио файл, но и при четене на глас. Следват няколко раздела, в които ще намерите настройките специфични за поддържаните от Balabolka компресирани аудио формати (mp3, wma, ogg и др.) – wave аудио форматът (.wav) има нужда само от параметрите от разгъващия се списък от по-горе (звукова честота, битово кодиране и брой канали).
  4. След като сте задали описаните по-горе настройки, натиснете CTRL+F8, за да извикате прозореца за разцепване и конвертиране в аудио файлове. Тук има следните опции:
    • „Изходяща файлова папка“ – в това поле трябва да въведете пълния път към папката, в която ще се съхранят експортираните аудио файлове. Можете да активирате бутона „Преглед“, за да изберете вече съществуваща папка от Windows Explorer.
    • „Формат на аудио файла“ – от този комбобокс избирате формата на изходния аудио файл. Засега имате възможност за избор между некомпресиран wave (.wav) файл или компресиран mp3, ogg, wma, mp4, m4a, m4b или awb файл.
    • „Създай подпапка„ – ако в това поле има отметка, изходните аудио файлове ще бъдат съхранени в автоматично създадена за целта подпапка.
    • Група от няколко контроли, свързани с именуването на изходните файлове:
      • Два радио бутона, чрез които се определя дали ще се използва стандартен шаблон за именуване (с име на документа и последователен номер) или шаблон по избор, като във втория случай може да се използват и променливи като „Number„ за последователен номер, „FileName„ за име на файла, „FirstLine„ за първи ред от раздела, както и думи и други знаци.
      • Две текстови полета за задаване на името на изходния файл, като във всеки един момент активно ще е само едно от тях, в зависимост от това кой от двата радио бутона от по-горе е избран.
    • „Число от което да започне номерирането на изходните файлове“ – тук посочвате от кое число да започне номерирането на изходните файлове. По подразбиране е зададена стойност „1“. Към момента на писане/обновяване на статията обаче, има проблем с обхождането на контролите в този прозорец и въпросното цифрово поле е чак след бутона „Затвори„ в TAB подредбата или преди „Изходяща файлова папка„ ако се обхожда с Shift+TAB.
    • После попадате на една група от два радиобутона с маркировка „Именуване на изходните файлове“. Единият от тези два радиобутона указва на Balabolka да поставя последователния номер на аудио файла след основното му име, а другият – преди него.
    • Следва една група от полета за отметка, с маркировка „Критерии при разцепването“. Тези опции определят критериите, с които ще се съобразява Balabolka, при разцепването (разделянето на части) на нашата книга. Надписите на тези опции са достатъчно ясни и не смятам да се спирам на това за какво точно служи всяка една от тях.
    • Следва едно поле с надпис "Размер на текстовия блок" - в това поле трябва да се зададе размера на изходния текстов блок (в килобайти) на който ще се базира създаването на отделните аудио файлове. Това поле е активно само когато е включен критерия "по размера на текстовия блок" в раздела с критериите за разцепване.
    • После е полето за въвеждане на текстови низове. То ще бъде активно, само ако сме включили опцията с текст „по зададени низове във входния текст“.
    • Следва опцията „Раздели текста при ключовата дума и премахни ключовата дума от текста„, която е свързана с разделянето по ключови думи и сама за себе си обяснява какво прави.
    • После следва един бутон с надпис „Прочитай номера на раздела“. Активирането му извиква друг прозорец, в който можем да зададем опции, които да накарат речевия синтезатор да прочита номера на раздела на поредния аудио файл в началото и/или в края му.
    • Следва бутонът „Тествай“. При активирането му излиза диалогов прозорец, в който пише приблизителния брой на изходните аудио файлове, след задаването на критериите за разцепване.
    • После е бутонът „Разцепване и конвертиране“. При активирането му излиза друг прозорец, в който има списък с точките на разцепване и всяка една от тях има поле за отметка. Ако полето е с отметка, то книгата ще бъде разделена в тази точка. Ако в полето няма отметка, то книгата няма да бъде разделяна в тази точка. Отметката в първото поле не може да бъде премахната – доколкото схващам – този елемент показва началото на книгата.
  5. А ако желаем просто да разделим книгата на отделни части, но без да я конвертираме в аудио файлове, задействаме бутона „Разцепи„ в прозореца „Разцепи текста и конвертирай в аудио файлове„ (намиращ се след бутона „Разцепи и конвертирай„). Появява се прозорец, подобен на „Резултати от търсенето„ за разцепване и конвертиране. Разликата е, че при този само за разцепване на файла, има и разгъващ се списък за избор на кодировката на изходния текст. Там се задейства бутона „Раздели„. Програмата разделя файла на части по зададените критерии и ги запазва в посочената в прозореца „Разцепи текста и конвертирай в аудио файлове„ папка.
  6. След като в прозореца със списъка с точките на разцепване сме определили къде ще бъде разделяна книгата и къде не, натискаме бутона „Разделяне“, за да започне самата процедура по разделянето на части и конвертирането им в аудио файлове. И после не ни остава нищо друго, освен да чакаме да завърши процедурата.
  7. А ако желаем просто да разделим книгата на отделни части, но без да я конвертираме в аудио файлове, задействаме бутона „Разцепи„ в прозореца „Разцепи текста и конвертирай в аудио файлове„ (намиращ се след бутона „Разцепи и конвертирай„). Появява се прозорец, подобен на „Резултати от търсенето„ за разцепване и конвертиране. Разликата е, че при този само за разцепване на файла, има и разгъващ се списък за избор на кодировката на изходния текст. Там се задейства бутона „Раздели„. Програмата разделя файла на части по зададените критерии и ги запазва в посочената в прозореца „Разцепи текста и конвертирай в аудио файлове„ папка.

Пояснения:

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