FFmpeg
libavutil
hwcontext_cuda_internal.h
Go to the documentation of this file.
1
/*
2
* This file is part of FFmpeg.
3
*
4
* FFmpeg is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* FFmpeg is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with FFmpeg; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
*/
18
19
20
#ifndef AVUTIL_HWCONTEXT_CUDA_INTERNAL_H
21
#define AVUTIL_HWCONTEXT_CUDA_INTERNAL_H
22
23
#include "
compat/cuda/dynlink_loader.h
"
24
#include "
hwcontext_cuda.h
"
25
26
/**
27
* @file
28
* FFmpeg internal API for CUDA.
29
*/
30
31
struct
AVCUDADeviceContextInternal
{
32
CudaFunctions *
cuda_dl
;
33
int
is_allocated
;
34
CUdevice
cuda_device
;
35
int
flags
;
36
};
37
38
/**
39
* Return the element size in bytes for a CUarray_format, or 0 for unknown.
40
*
41
* Used to compute frame->linesize[] for CUarray frames (block-linear).
42
* Callers that need a fallback should treat a 0 return as an error.
43
*/
44
static
inline
int
ff_cuda_cuarray_elem_size
(CUarray_format fmt)
45
{
46
switch
(fmt) {
47
case
CU_AD_FORMAT_UNSIGNED_INT8:
48
case
CU_AD_FORMAT_SIGNED_INT8:
return
1;
49
case
CU_AD_FORMAT_UNSIGNED_INT16:
50
case
CU_AD_FORMAT_SIGNED_INT16:
51
case
CU_AD_FORMAT_HALF:
return
2;
52
case
CU_AD_FORMAT_UNSIGNED_INT32:
53
case
CU_AD_FORMAT_SIGNED_INT32:
54
case
CU_AD_FORMAT_FLOAT:
return
4;
55
default
:
return
0;
56
}
57
}
58
59
#endif
/* AVUTIL_HWCONTEXT_CUDA_INTERNAL_H */
ff_cuda_cuarray_elem_size
static int ff_cuda_cuarray_elem_size(CUarray_format fmt)
Return the element size in bytes for a CUarray_format, or 0 for unknown.
Definition:
hwcontext_cuda_internal.h:44
AVCUDADeviceContextInternal
Definition:
hwcontext_cuda_internal.h:31
AVCUDADeviceContextInternal::is_allocated
int is_allocated
Definition:
hwcontext_cuda_internal.h:33
dynlink_loader.h
AVCUDADeviceContextInternal::cuda_device
CUdevice cuda_device
Definition:
hwcontext_cuda_internal.h:34
hwcontext_cuda.h
AVCUDADeviceContextInternal::flags
int flags
Definition:
hwcontext_cuda_internal.h:35
AVCUDADeviceContextInternal::cuda_dl
CudaFunctions * cuda_dl
Definition:
hwcontext_cuda_internal.h:32
Generated on Sat Jul 25 2026 19:24:04 for FFmpeg by
1.8.17