lukaszliniewicz / Pandrator

Turn PDFs and EPUBs into audiobooks, subtitles or videos into dubbed videos (including translation), and more. For free. Pandrator uses local models, notably XTTS, including voice-cloning (instant, RVC-enhanced, XTTS fine-tuning) and LLM processing. It aspires to be a user-friendly app with a GUI, an installer and all-in-one packages.
GNU Affero General Public License v3.0
347 stars 27 forks source link

Pandrator hangs with errors in the console when running 'Generating Dubbing Audio' on a .mp4 #57

Closed luckyluca closed 4 weeks ago

luckyluca commented 1 month ago

Everything else seems to work fine, from updating Pandrator to creating audio from existing .srt files and burning the audio onto a .mp4 file.

However, Pandrator hangs with errors in the console when running 'Generating Dubbing Audio' on a .mp4

My setup: I downloaded v026 (small version), then downloaded the latest v027 installer and installed RVC, Whisper and XTTS-fine-tuning from the interface. I then pressed the update button and got Pandrator updated correctly. I have two API env variables for deepL and antrophic.

See the log. pandrator_20241026_160928.log Screenshot 2024-10-26 164619

lukaszliniewicz commented 1 month ago

I will test it today. In the meantime, could you check if the same problem occurs with the package that has WhisperX preinstalled, perhaps?

luckyluca commented 1 month ago

Thanks for the quick reply. Using the full archive version, the update button doesn't work and it errors Screenshot 2024-10-26 175735

ERROR:root:Error executing command: E:\fullArchive\Pandrator\conda\Scripts\conda.exe run -n pandrator_installer pip install -r E:\fullArchive\Pandrator\Pandrator\requirements.txt ERROR:root:Error message: Command '['E:\fullArchive\Pandrator\conda\Scripts\conda.exe', 'run', '-n', 'pandrator_installer', 'pip', 'install', '-r', 'E:\fullArchive\Pandrator\Pandrator\requirements.txt']' returned non-zero exit status 1. ERROR:root:STDOUT: ERROR:root:STDERR: ERROR conda.cli.main_run:execute(125): conda run pip install -r E:\fullArchive\Pandrator\Pandrator\requirements.txt failed. (See above for error)

ERROR:root:Failed to update: Command '['E:\fullArchive\Pandrator\conda\Scripts\conda.exe', 'run', '-n', 'pandrator_installer', 'pip', 'install', '-r', 'E:\fullArchive\Pandrator\Pandrator\requirements.txt']' returned non-zero exit status 1. ERROR:root:Traceback (most recent call last): File "pand_inst.py", line 894, in update_pandrator File "pand_inst.py", line 453, in run_command subprocess.CalledProcessError: Command '['E:\fullArchive\Pandrator\conda\Scripts\conda.exe', 'run', '-n', 'pandrator_installer', 'pip', 'install', '-r', 'E:\fullArchive\Pandrator\Pandrator\requirements.txt']' returned non-zero exit status 1.

lukaszliniewicz commented 1 month ago

Thanks. I think I know what the issues are. I will upload a fix later today.

luckyluca commented 1 month ago

ty.

I'm having more luck with the minimal archive (and installing the optional components and updating) at least, pandrator starts :)

I'm installing the system manually on a separate folder, I think manually installing git and conda helps.

lukaszliniewicz commented 1 month ago

It should be fixed now, both in the installer and the packages. There was a dependency problem after one of the packages WhisperX relies on had been updated.

Theoretically, system conda should play no role - everything is run using Pandrator/conda/Scripts/conda.exe (which is installed in 'portable' using '/InstallationType=JustMe', '/AddToPath=0', '/RegisterPython=0', '/NoRegistry=1', '/S') and a path to its environment, e.g. Pandrator/conda/envs/whisperx_installer (so, for example, ..conda/Scripts/conda.exe run -p ..conda/envs/whisperx_installer python -m whisperx ...).

luckyluca commented 1 month ago

Hi, I downloaded the new 30Gb package and extracted it to e:\archive I then run the installer as administrator. However, when I press update, I get the following error: Screenshot 2024-10-27 225410

So, I then tried by running the update manually by typing: conda activate pandrator_installer

(pandrator_installer) E:\archive\Pandrator\Pandrator>pip install -r requirements.txt

and I get: Fatal error in launcher: Unable to create process using '"C:\Users\Lukasz\Downloads\dist\Pandrator\conda\envs\pandrator_installer\python.exe" "E:\archive\Pandrator\conda\envs\pandrator_installer\Scripts\pip.exe" install -r requirements.txt': The system cannot find the file specified.

When launching XTTS and Pandrator from the interface, XTTS launches but Pandrator DOES NOT LAUNCH and it errors with a fast pop up STDOUT message pygame 2.6.1 (SDL 2.28.4, Python 3.10.15) Hello from the pygame community. https://www.pygame.org/contribute.html Traceback (most recent call last): File "E:\archive\Pandrator\Pandrator\pandrator.py", line 46, in from dulwich import porcelain ModuleNotFoundError: No module named 'dulwich'

Please note that typing pip I get: (pandrator_installer) PS E:\archive\Pandrator\Pandrator> pip Fatal error in launcher: Unable to create process using '"C:\Users\Lukasz\Downloads\dist\Pandrator\conda\envs\pandrator_installer\python.exe" "E:\archive\Pandrator\conda\envs\pandrator_installer\Scripts\pip.exe" ': The system cannot find the file specified.

So, it seems like there are least two issues right now: one config issue pointing to your own user folder, and a missing module

lukaszliniewicz commented 1 month ago

From inside the Pandrator folder please try:

conda/scripts/conda.exe run -p conda/envs/pandrator_installer --no-capture-output pip install -r Pandrator/requirements.txt

Did you download the v026 or v027 package?

luckyluca commented 1 month ago

v027.

(base) PS E:\archive\Pandrator> conda/scripts/conda.exe run -p conda/envs/pandrator_installer --no-capture-output pip install -r Pandrator/requirements.txt Fatal error in launcher: Unable to create process using '"C:\Users\Lukasz\Downloads\dist\Pandrator\conda\envs\pandrator_installer\python.exe" "E:\archive\Pandrator\conda\envs\pandrator_installer\Scripts\pip.exe" install -r Pandrator/requirements.txt': The system cannot find the file specified.

ERROR conda.cli.main_run:execute(125): conda run pip install -r Pandrator/requirements.txt failed. (See above for error) (base) PS E:\archive\Pandrator>

(Running pip gives that user path error to python)

luckyluca commented 1 month ago

I'm confused myself, as I have three installations right now. -> e:\good\pandrator (good, working except for hanging when using a .mp4 files see above) e:\archive\pandrator (v027 30gb archive extracted, missing module and user python filepath errors) e:\pandrator (manual install following the instructions on the webpage, same errors as archive\pandrator)

so, at the moment I have one version running, the first one, so I'll keep that one. This is v026 (small version), then downloaded the latest v027 installer and installed RVC, Whisper and XTTS-fine-tuning from the interface. I then pressed the update button and got Pandrator updated correctly. (I have two API env variables for deepL and antrophic).

luckyluca commented 1 month ago

I'm using e:\good\pandrator as everything is working except for whisperx when transcribing from a .mp4.

Pandrator hangs but it shows no logs. I was able to isolate the error by running the following:

(whisperx_installer) E:\Pandrator>conda run -n whisperx_installer python -m whisperx E:\good\Pandrator\Pandrator\Outputs\test003\MOTIVAZIONALE_FITNESS.wav --model large-v3 --language Italian --output_format srt --output_dir E:\good\Pandrator\Pandrator\Outputs\test003 --compute_type int8

Error below in BOLD

E:\good\Pandrator\conda\envs\whisperx_installer\lib\inspect.py:869: UserWarning: Module 'speechbrain.pretrained' was deprecated, redirecting to 'speechbrain.inference'. Please update your script. This is a change from SpeechBrain 1.0. See: https://github.com/speechbrain/speechbrain/releases/tag/v1.0.0 if ismodule(module) and hasattr(module, 'file'): E:\good\Pandrator\conda\envs\whisperx_installer\lib\site-packages\pyannote\audio\pipelines\speaker_verification.py:45: UserWarning: Module 'speechbrain.pretrained' was deprecated, redirecting to 'speechbrain.inference'. Please update your script. This is a change from SpeechBrain 1.0. See: https://github.com/speechbrain/speechbrain/releases/tag/v1.0.0 from speechbrain.pretrained import ( Lightning automatically upgraded your loaded checkpoint from v1.5.4 to v2.3.3. To apply the upgrade to your files permanently, run python -m pytorch_lightning.utilities.upgrade_checkpoint C:\Users\conte\.cache\torch\whisperx-vad-segmentation.bin E:\good\Pandrator\conda\envs\whisperx_installer\lib\site-packages\pyannote\audio\utils\reproducibility.py:74: ReproducibilityWarning: TensorFloat-32 (TF32) has been disabled as it might lead to reproducibility issues and lower accuracy. It can be re-enabled by calling

import torch torch.backends.cuda.matmul.allow_tf32 = True torch.backends.cudnn.allow_tf32 = True See https://github.com/pyannote/pyannote-audio/issues/1370 for more details.

warnings.warn( Could not locate cudnn_ops64_9.dll. Please make sure it is in your library path! Invalid handle. Cannot load symbol cudnnCreateTensorDescriptor

luckyluca commented 4 weeks ago

FIXED IT!

under the whisperx_installer environment, running pip install ctranslate2==4.4.0 fixed it, as per this post https://github.com/m-bain/whisperX/issues/901

lukaszliniewicz commented 4 weeks ago

Yes, I introduced that fix earlier, the installer is downgrading ctranslate2. The problem with the newest package was that, for some strange reason, dulwich wasn't being correctly installed in the pandrator environment. I'm uploading updated packages now and the installer in releases has been patched. Sorry for the issues.