GithubHelp home page GithubHelp logo

spgoodman / nvlax Goto Github PK

View Code? Open in Web Editor NEW

This project forked from illnyang/nvlax

0.0 0.0 0.0 35 KB

Future-proof NvENC & NvFBC patcher (Linux/Windows) - Patched to checkout main branches instead of master

License: GNU General Public License v3.0

C++ 77.27% CMake 22.73%

nvlax's Introduction

target os: linux license: GPL v3 powered by: CMake powered by: CPM powered by: Zydis powered by: LIEF

nvlax

Future-proof NvENC & NvFBC patcher

Requirements

  • Working internet connection during configuration (i.e cloning does NOT include dependencies)
  • CMake
  • C++ compiler

Building

git clone 'https://github.com/illnyang/nvlax.git'
cd nvlax
mkdir build && cd build
cmake ..
make

Protip: use WSL if you're using Windows.

Example of usage

Patch NvENC in-place:

Linux:
# nvlax_encode -i /usr/lib/libnvidia-encode.so.495.44 -o /usr/lib/libnvidia-encode.so.495.44
Windows:
# nvlax_encode -i nvEncodeAPI64.dll -o nvEncodeAPI64.dll
# nvlax_encode -i nvEncodeAPI.dll -o nvEncodeAPI.dll

Patch NvFBC in-place:

Linux:
# nvlax_fbc -i /usr/lib/libnvidia-fbc.so.495.44 -o /usr/lib/libnvidia-fbc.so.495.44

FAQ

How is this more future-proof?

This patcher performs assembly-level heuristics instead of naive pattern-matching. The patching itself works more/less the same way as in keylase/nvidia-patch.

Which driver versions are supported?

I have tested this patcher against the following versions (on Linux):

  • 470.74
  • 495.29.05
  • 495.44

It should work on previous versions as well. Please don't open-up new issues if you're using ancient drivers, thanks.

Windows support?

nvlax_encode accepts NVIDIA DLLs as input files. NvFBC patching is not supported yet, though.

Credits

keylase/nvidia-patch - this project wouldn't exist if it wasn't for their outstanding reverse-engineering efforts. thanks!

nvlax's People

Contributors

illnyang avatar spgoodman avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.