-
Notifications
You must be signed in to change notification settings - Fork 317
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
nvcodec support #34
nvcodec support #34
Conversation
Hi rsnk96, Thank you for your contribution. Normally I don't accept pull requests which require a preinstalled library to work. The basic idea of the script is that all dependencies are resolved automatically, without any user interaction. But due to the size and hardware dependency of the Nvidia Cuda framework, we may need a different approach. Possible solutions to include nvcodec in this script could be:
Best, |
I feel the first solution would be better, since having an extra build switch might make the script open to people installing |
Better now? |
Hi @markus-perl Did you get a chance to review this? |
Fix cflags and ldflags from master
Hi @rsnk96 I just used your PR, first of all great work! I made the same thing but much more static than your approach 😃 . Besides, I had to make some modifications to make it work:
Another change I had to make to make it work it was to add a file with the env variables to export PATH=/usr/local/cuda-10.2/bin:/usr/local/cuda-10.2/NsightCompute-2019.5${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64 ${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}} It would be great to add a way to detect the version of the Cuda toolkit and the NsightCompute, with that, the Paths could be updated every time. Here is my repo with the modifications (except the |
Hi @mliradelc That's great! Please feel free to add on to this PR with your updates. Your repo seems to have quite a lot of good modifications and upgrades, perhaps Markus would want to split the upgrades into an independent PR, and have the On updating the |
My bad, just saw that the version upgrades was already merged into master. The update looks good, please feel free to merge it into this PR @mliradelc (you could send a PR to Also, there is one small change you could consider:
Perhaps the --extra-cflags="-I$WORKSPACE/include" \
--extra-ldflags="-L$WORKSPACE/lib" \
--extra-cflags="$CFLAGS" \
--extra-ldflags="$LDFLAGS" \ could be replaced by --extra-cflags="-I$WORKSPACE/include $CFLAGS" \
--extra-ldflags="-L$WORKSPACE/lib $LDFLAGS" \ |
Hi @rsnk96 Thank you for your kind words. I made like a year ago some modifications to build FFmpeg with nvenc, and the work of @markus-perl is the best that you can find on the internet over how to compile FFmpeg with almost all the codecs.
Well is true that the NsightCompute is not available when you install the Cuda drivers for FFmpeg. I left that command because it's stated in the installation of the Cuda drivers from Nvidia. About the change, you suggested to me, I think is a good change and makes the code looks cleaner. |
@mliradelc would you like to add your changes, or should I just update my PR..? |
Hi, I put a PR a few days ago detecttechnologies#1 |
- Nvidia codecs list - Test environments
Sorry, saw that just now. Merged it! @markus-perl this is up to date with master now. Two major upgrades are being done:
|
Thanks for the pull request. I will soon have a Linux test system here with an Nvidia graphics card, then I can test the pull request :-) |
Guys, I'm sorry for the delay. I finally merged the pull request into the master branch. I was able to test the script on my ubuntu 20.04 box with an NVIDIA 1070 TI graphics card. Everything worked as expected. |
Support for nvenc and nvdec for Nvidia GPU-Accelerated encoding and decoding.
Installs only if a valid version of CUDA is detected. Steps follow this guide with the addition of the
sed
line to ensure thatsudo
permissions are not needed, and that it is a local copy.