finds.dev← search

// the find

hecomi/uNvEncoder

★ 50 · C · MIT · updated Aug 2022

A simple wrapper of NVENC (NVIDIA's HW-accelerated encoder) for Unity.

A thin Unity native plugin wrapping NVIDIA's NVENC SDK for hardware video encoding on Windows, aimed at Unity devs who need to encode rendered frames (streaming, screen recording, VR capture) without going through a CPU-bound encoder. It's a GPU-side D3D11 texture encoder, not a general video pipeline.

It encodes directly from a D3D11 texture via Unity's native plugin interface, avoiding a GPU-to-CPU-to-GPU roundtrip, which is the part that's actually hard to get right and the reason to use NVENC in the first place. Distribution is flexible: unitypackage, UPM git URL, or scoped registry, so it fits different team workflows. Scope is narrow and honest — it wraps the encoder API, it doesn't try to also be a muxer, streamer, or capture framework. Samples cover both a file-output case and a live texture-encode case, so you can see the actual call pattern instead of guessing from headers.

No activity since August 2022 — NVENC SDK versions, driver ABI, and newer GPU architectures have moved on since, so expect to debug driver/SDK version mismatches before this works out of the box. D3D11 only; if your project is on D3D12 (which Unity has pushed newer projects toward) this doesn't help you. Precompiled DLLs are committed straight into Assets/Plugins rather than built from source in CI and attached as release artifacts, so you're trusting a binary blob and have no easy way to verify it matches the C++ source in the repo. Single maintainer, 50 stars, no CONTRIBUTING file — if you hit a bug on a newer GPU/driver combo, you're likely patching the C++ yourself rather than waiting on upstream.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →