56 if (
entry->bits_per_pixel == varinfo->bits_per_pixel &&
57 entry->red_offset == varinfo->red.offset &&
58 entry->green_offset == varinfo->green.offset &&
59 entry->blue_offset == varinfo->blue.offset)
68 const char *dev = getenv(
"FRAMEBUFFER");
76 struct fb_var_screeninfo varinfo;
77 struct fb_fix_screeninfo fixinfo;
86 for (
i = 0;
i <= 31;
i++) {
87 snprintf(device_file,
sizeof(device_file),
"/dev/fb%d",
i);
96 if (ioctl(fd, FBIOGET_VSCREENINFO, &varinfo) == -1)
98 if (ioctl(fd, FBIOGET_FSCREENINFO, &fixinfo) == -1)
117 if (default_device && !strcmp(device->
device_name, default_device)) {
119 default_device =
NULL;
static av_cold void close(AVCodecParserContext *s)
Main libavdevice API header.
#define i(width, name, range_min, range_max)
common internal and external API header
static const struct rgb_pixfmt_map_entry rgb_pixfmt_map[]
const char * ff_fbdev_default_device(void)
enum AVPixelFormat ff_get_pixfmt_from_fb_varinfo(struct fb_var_screeninfo *varinfo)
int ff_fbdev_get_device_list(AVDeviceInfoList *device_list)
#define av_err2str(errnum)
Convenience macro, the return value should be used only directly in function arguments but never stan...
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
int av_dynarray_add_nofree(void *tab_ptr, int *nb_ptr, void *elem)
Add an element to a dynamic array.
int avpriv_open(const char *filename, int flags,...)
A wrapper for open() setting O_CLOEXEC.
Memory handling functions.
AVPixelFormat
Pixel format.
@ AV_PIX_FMT_RGB24
packed RGB 8:8:8, 24bpp, RGBRGB...
@ AV_PIX_FMT_ARGB
packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
@ AV_PIX_FMT_BGRA
packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
@ AV_PIX_FMT_ABGR
packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
@ AV_PIX_FMT_RGBA
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
@ AV_PIX_FMT_BGR24
packed RGB 8:8:8, 24bpp, BGRBGR...
#define AV_PIX_FMT_RGB565
#define FF_ARRAY_ELEMS(a)
int nb_devices
number of autodetected devices
int default_device
index of default device or -1 if no default
AVDeviceInfo ** devices
list of autodetected devices
Structure describes basic parameters of the device.
char * device_description
human friendly name
char * device_name
device name, format depends on device
enum AVPixelFormat pixfmt