Balabolka i przetwarzanie wielowątkowe- mocno przyśpiesza przetwarzanie do audiobooka

.m.

Wygadany
Dołączył
1 Grudnia 2011
Posty
95
Reakcje/Polubienia
60
To prosty poradnik dla używających balabolki do przerabiania ebooków na audiobooki.
Kto używa balabolki wie, że balabolka przetwarza plik po pliku i to potrafi chwilę trwać. Ale jakby chciał wykorzystać do max wielowątkowość procesora i bardzo przyspieszyć cały proces to jest na to prosty sposób:
1. do katalogu balabolki dogrywacie balcon
Zaloguj lub Zarejestruj się aby zobaczyć!

2. dogrywacie sobie kodek LAME ... gdzieś.
i zaopatrujecie się w taki prosty bat - balabolka.bat


Teraz sprawa wygląda tak, mamy pliki wejściowe w katalogu "folder_wejscie" i katalog "folder_wyjscie" gdzie balcon przetwarza wstępnie do wave, bo z przetwarzaniem wielowątkowym do mp3 ma problemy. U siebie wolę dzielić książkę na pliki po 10k, i nie przekraczam powiedzmy 120 plików by nic się nie powiesiło. Po przetworzeniu do wave, zatrzymuje się i wyświetla katalog wyjściowy i czekamy aż przetworzy w calości - czyli pliki wave będą miały rozmiar, albo patrzymy w menadzerze zadań jak wszystkie rdzenie z 100% zajętości mają zero. Wtedy naciskamy jakiś klawisz i do pracy zaprzegamy LAME wielowątkowo. Po chwili mamy w katalogu pliki WAVE i MP3. Tym sposobem balcon przetworzył wielowątkowo i LAME. U mnie 28 wątków robi to praktycznie momentalnie. Można próbować jeszcze sprzątanie zrobić, aby kasował, sprawdzał czy już i w pełni automatycznie przetwarzał bez czekania, ale tu są jakieś ograniczenia windowsa i aż tak mi nie zależy. Widzę jak przetwarza, kiedy przerywa, naciskam i przetwarza do końca. Idiotoodporne. Jest chyba też jakieś pici ograniczenie do ilości plików, gdzie przy 200 i więcej cooooś może się pierd... więc mniej lepiej. Samo przetwarzanie przez balacon z użyciem kodeku zewnetrznego działa, ale jest wolniej i chyba nie tak wielowątkowo niż użyciem lame po przetworzeniu do wave.

+ścieżki plików wejściowych i wyjściowych pod siebie ustawiacie.
+ścieżka do LAME. oraz niżej jest bitrate jest ustawiony na 40kbps co daje mały plik i rozsądną jakość, ale można ustawić pod siebie.
+ścieżka do balcon.exe
+jacek jest ustawiony na prędkość +4, można użyć innego głosu, zwolnić, przyśpieszyć, inne cuda robić... zainteresowani pełną obsługą zaglądną na stronę z balconem - link wyżej

ktoś będzie sobie chciał bata zrobić pod siebie zrobi. ktoś coś udoskonali to może się podzielić dalej ;) mnie wkurzało że tyle wątków się nudzi i muszę czekać. teraz nie muszę :)

@echo off
setlocal enabledelayedexpansion

:: Ścieżki
set "folder_wejscie=F:\a\0---in---0"
set "folder_wyjscie=F:\a\0---tuuuu---0\_---"
set "lame_path=G:\Programy\lame\lame.exe"

:: Tworzenie katalogu wyjściowego
if not exist "%folder_wyjscie%" mkdir "%folder_wyjscie%"

:: Przetwarzanie plików z Balabolki (do WAVE) równolegle
for %%F in (%folder_wejscie%\*.txt) do (
start /b "Balabolka" "G:\Programy\Balabolka\balcon.exe" -f "%%F" -w "%folder_wyjscie%\%%~nF.wav" -n "IVONA 2 Jacek" -s 4

)

:: Otwórz katalog z przetworzonymi plikami (tylko do WAVE)
start explorer "%folder_wyjscie%"

:: Prośba o naciśnięcie klawisza, aby kontynuować
echo. Czekam na naciśnięcie klawisza, aby rozpocząć konwersję do MP3...
pause >nul

:: Konwertowanie plików WAVE do MP3 równolegle za pomocą LAME
for %%F in (%folder_wyjscie%\*.wav) do (
start /b G:\Programy\lame\lame.exe -b 40 "%%F" "%folder_wyjscie%\%%~nF.mp3"
)

echo Wszystkie pliki zostały przetworzone
 
Ostatnia edycja:
Do góry