rave-nvcodec-0.4.0 has been yanked.
rave-nvcodec
NVDEC/NVENC hardware codec wrappers for RAVE.
rave-nvcodec implements GPU decode and encode stages over NVIDIA Video Codec
SDK APIs with CUDA-device-pointer based frame flow.
Scope
- NVDEC decode wrapper (
NvDecoder) implementingFrameDecoder - NVENC encode wrapper (
NvEncoder) implementingFrameEncoder - Encoder configuration (
NvEncConfig) - Raw FFI bindings for CUDA Video Codec SDK (
sysmodule)
Public API Highlights
NvDecoder::new(ctx, source, codec)NvEncoder::new(cuda_context, sink, config)NvEncConfigfor resolution/fps/bitrate/GOP/B-frame/pitch settings
Typical Usage
use Arc;
use ;
use GpuContext;
use Result;
use cudaVideoCodec;
use NvDecoder;
Runtime Requirements
- NVIDIA driver libraries (
libcuda,libnvcuvid,libnvidia-encode) - Compatible CUDA toolkit + Video Codec SDK runtime
- Linux/WSL link search paths must include locations for NVIDIA driver libs
Notes
- Decode output and encode input are GPU-resident NV12 frames.
- Encode path caches resource registration by device pointer to avoid per-frame registration overhead.
- This crate performs FFI-heavy work; all unsafe boundaries are isolated in
codec modules and
sys.