ali1234 / vhs-teletext

Software to recover teletext data from VHS recordings.
GNU General Public License v3.0
179 stars 21 forks source link

GPU deconvolve does not work on my system #45

Open Auzoocle opened 4 years ago

Auzoocle commented 4 years ago

When i run deconvolve, my terminal is spamming several lines of: "/usr/local/lib/python3.6/dist-packages/skcuda/cublas.py:284: UserWarning: creating CUBLAS context to get version number" followed by several lines of: "error invoking 'nvcc --version': [Errno 2] No such file or directory: 'nvcc': 'nvcc' CUDA init failed. Using slow CPU method instead."

i have to run the deconvolve command as root. it complain about not finding pycuda when running without root.

it would be nice to get GPU deconvolving to work. CPU deconvolve works, but it takes 8+h on a 4h capture, using all cores.

when i capture, is there any capture settings i should use. like enable or disable AGC?. view the video signal while capturing for the AGC to balance the picture. i think i lost a bit of vbi data from a piece of vhs recording because i did not view the video signal while capturing. my capture setup involves two bt878 cards. one card for capturing vbi and one card for viewing the live vbi signal.

OS: linux mint 19.3 Kernel: Linux 5.3.0-40-generic x86_64 GPU: RTX 2070 NVIDIA driver: 440.64 CUDA version: 10.2

ali1234 commented 4 years ago

The CUBLAS warning is expected.

If it can't find nvcc it means cuda is not installed properly. Add it to your path.

If it can't find pycuda unless you are root it means pycuda isn't installed properly. This is probably due to doing sudo pip install. You should install vhs-teletext in a venv as your normal user.

For capturing you have to experiment and find out what works best for you. Frame drops are expected, but should not have much effect as long as you capture at least 10 to 20 minutes.

wimpie3 commented 4 years ago

Change the path so cuda can be found: sudo nano /home/[yourusername]/.bashrc Add the following after the last lines: export PATH=/usr/local/cuda-10.2/bin:/usr/local/cuda-10.2/NsightCompute-2019.1${PATH:+:${PATH}} export LD_LIBRARY_PATH=/usr/local/cuda-10.2/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

Save the . bashrc file.