FFmpeg
libavdevice
v4l2-common.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
#ifndef AVDEVICE_V4L2_COMMON_H
20
#define AVDEVICE_V4L2_COMMON_H
21
22
#undef __STRICT_ANSI__ //workaround due to broken kernel headers
23
#include "config.h"
24
#include <stdint.h>
25
#include <unistd.h>
26
#include <fcntl.h>
27
#include <sys/ioctl.h>
28
#include <sys/mman.h>
29
#include <sys/time.h>
30
#if HAVE_SYS_VIDEOIO_H
31
#include <sys/videoio.h>
32
#else
33
#if HAVE_ASM_TYPES_H
34
#include <asm/types.h>
35
#endif
36
#include <linux/videodev2.h>
37
#endif
38
#include "
libavutil/pixfmt.h
"
39
#include "
libavcodec/codec_id.h
"
40
41
struct
fmt_map
{
42
enum
AVPixelFormat
ff_fmt
;
43
enum
AVCodecID
codec_id
;
44
uint32_t
v4l2_fmt
;
45
};
46
47
extern
const
struct
fmt_map
ff_fmt_conversion_table
[];
48
49
uint32_t
ff_fmt_ff2v4l
(
enum
AVPixelFormat
pix_fmt
,
enum
AVCodecID
codec_id
);
50
enum
AVPixelFormat
ff_fmt_v4l2ff
(uint32_t
v4l2_fmt
,
enum
AVCodecID
codec_id
);
51
enum
AVCodecID
ff_fmt_v4l2codec
(uint32_t
v4l2_fmt
);
52
53
#endif
/* AVDEVICE_V4L2_COMMON_H */
AVPixelFormat
AVPixelFormat
Pixel format.
Definition:
pixfmt.h:64
ff_fmt_v4l2codec
enum AVCodecID ff_fmt_v4l2codec(uint32_t v4l2_fmt)
Definition:
v4l2-common.c:103
ff_fmt_ff2v4l
uint32_t ff_fmt_ff2v4l(enum AVPixelFormat pix_fmt, enum AVCodecID codec_id)
Definition:
v4l2-common.c:73
codec_id.h
ff_fmt_conversion_table
const struct fmt_map ff_fmt_conversion_table[]
Definition:
v4l2-common.c:21
pix_fmt
static enum AVPixelFormat pix_fmt
Definition:
demux_decode.c:41
codec_id
enum AVCodecID codec_id
Definition:
vaapi_decode.c:388
fmt_map::v4l2_fmt
uint32_t v4l2_fmt
Definition:
v4l2-common.h:44
AVCodecID
AVCodecID
Identify the syntax and semantics of the bitstream.
Definition:
codec_id.h:49
fmt_map::codec_id
enum AVCodecID codec_id
Definition:
v4l2-common.h:43
pixfmt.h
fmt_map
Definition:
v4l2-common.h:41
ff_fmt_v4l2ff
enum AVPixelFormat ff_fmt_v4l2ff(uint32_t v4l2_fmt, enum AVCodecID codec_id)
Definition:
v4l2-common.c:89
fmt_map::ff_fmt
enum AVPixelFormat ff_fmt
Definition:
v4l2-common.h:42
Generated on Tue Feb 28 2023 21:33:46 for FFmpeg by
1.8.17