Skip to main content

waycap_rs/encoders/
cuda.rs

1use std::ffi::c_void;
2
3use cust::sys::{CUcontext, CUstream};
4
5#[cfg(feature = "egl")]
6use cust::sys::{CUgraphicsResource, CUresult};
7#[cfg(feature = "egl")]
8use gl::types::{GLenum, GLuint};
9#[cfg(feature = "egl")]
10use libc::c_uint;
11
12#[repr(C)]
13pub struct AVCUDADeviceContext {
14    pub cuda_ctx: CUcontext,
15    pub stream: CUstream,
16    pub internal: *mut c_void,
17}
18
19#[cfg(feature = "egl")]
20unsafe extern "C" {
21    pub fn cuGraphicsGLRegisterImage(
22        resource: *mut CUgraphicsResource,
23        image: GLuint,
24        target: GLenum,
25        flags: c_uint,
26    ) -> CUresult;
27}