#include <inttypes.h>
#include "pixfmt.h"
Go to the source code of this file.
Data Structures | |
struct | AVComponentDescriptor |
struct | AVPixFmtDescriptor |
Descriptor that unambiguously describes how the bits of a pixel are stored in the up to 4 data planes of an image. More... | |
Defines | |
#define | PIX_FMT_BE 1 |
Pixel format is big-endian. | |
#define | PIX_FMT_PAL 2 |
Pixel format has a palette in data[1], values are indexes in this palette. | |
#define | PIX_FMT_BITSTREAM 4 |
All values of a component are bit-wise packed end to end. | |
#define | PIX_FMT_HWACCEL 8 |
Pixel format is an HW accelerated format. | |
#define | PIX_FMT_PLANAR 16 |
At least one pixel component is not in the first data plane. | |
#define | PIX_FMT_RGB 32 |
The pixel format contains RGB-like data (as opposed to YUV/grayscale). | |
Typedefs | |
typedef struct AVComponentDescriptor | AVComponentDescriptor |
typedef struct AVPixFmtDescriptor | AVPixFmtDescriptor |
Descriptor that unambiguously describes how the bits of a pixel are stored in the up to 4 data planes of an image. | |
Functions | |
void | av_read_image_line (uint16_t *dst, const uint8_t *data[4], const int linesize[4], const AVPixFmtDescriptor *desc, int x, int y, int c, int w, int read_pal_component) |
Read a line from an image, and write the values of the pixel format component c to dst. | |
void | av_write_image_line (const uint16_t *src, uint8_t *data[4], const int linesize[4], const AVPixFmtDescriptor *desc, int x, int y, int c, int w) |
Write the values from src to the pixel format component c of an image line. | |
enum PixelFormat | av_get_pix_fmt (const char *name) |
Return the pixel format corresponding to name. | |
const char * | av_get_pix_fmt_name (enum PixelFormat pix_fmt) |
Return the short name for a pixel format, NULL in case pix_fmt is unknown. | |
char * | av_get_pix_fmt_string (char *buf, int buf_size, enum PixelFormat pix_fmt) |
Print in buf the string corresponding to the pixel format with number pix_fmt, or an header if pix_fmt is negative. | |
int | av_get_bits_per_pixel (const AVPixFmtDescriptor *pixdesc) |
Return the number of bits per pixel used by the pixel format described by pixdesc. | |
Variables | |
const AVPixFmtDescriptor | av_pix_fmt_descriptors [] |
The array of all the pixel format descriptors. |
#define PIX_FMT_BITSTREAM 4 |
#define PIX_FMT_HWACCEL 8 |
#define PIX_FMT_PAL 2 |
#define PIX_FMT_PLANAR 16 |
#define PIX_FMT_RGB 32 |
typedef struct AVComponentDescriptor AVComponentDescriptor |
typedef struct AVPixFmtDescriptor AVPixFmtDescriptor |
Descriptor that unambiguously describes how the bits of a pixel are stored in the up to 4 data planes of an image.
It also stores the subsampling factors and number of components.
int av_get_bits_per_pixel | ( | const AVPixFmtDescriptor * | pixdesc | ) |
enum PixelFormat av_get_pix_fmt | ( | const char * | name | ) |
Return the pixel format corresponding to name.
If there is no pixel format with name name, then looks for a pixel format with the name corresponding to the native endian format of name. For example in a little-endian system, first looks for "gray16", then for "gray16le".
Finally if no pixel format has been found, returns PIX_FMT_NONE.
const char* av_get_pix_fmt_name | ( | enum PixelFormat | pix_fmt | ) |
Return the short name for a pixel format, NULL in case pix_fmt is unknown.
char* av_get_pix_fmt_string | ( | char * | buf, | |
int | buf_size, | |||
enum PixelFormat | pix_fmt | |||
) |
Print in buf the string corresponding to the pixel format with number pix_fmt, or an header if pix_fmt is negative.
buf | the buffer where to write the string | |
buf_size | the size of buf | |
pix_fmt | the number of the pixel format to print the corresponding info string, or a negative value to print the corresponding header. |
void av_read_image_line | ( | uint16_t * | dst, | |
const uint8_t * | data[4], | |||
const int | linesize[4], | |||
const AVPixFmtDescriptor * | desc, | |||
int | x, | |||
int | y, | |||
int | c, | |||
int | w, | |||
int | read_pal_component | |||
) |
Read a line from an image, and write the values of the pixel format component c to dst.
data | the array containing the pointers to the planes of the image | |
linesize | the array containing the linesizes of the image | |
desc | the pixel format descriptor for the image | |
x | the horizontal coordinate of the first pixel to read | |
y | the vertical coordinate of the first pixel to read | |
w | the width of the line to read, that is the number of values to write to dst | |
read_pal_component | if not zero and the format is a paletted format writes the values corresponding to the palette component c in data[1] to dst, rather than the palette indexes in data[0]. The behavior is undefined if the format is not paletted. |
void av_write_image_line | ( | const uint16_t * | src, | |
uint8_t * | data[4], | |||
const int | linesize[4], | |||
const AVPixFmtDescriptor * | desc, | |||
int | x, | |||
int | y, | |||
int | c, | |||
int | w | |||
) |
Write the values from src to the pixel format component c of an image line.
src | array containing the values to write | |
data | the array containing the pointers to the planes of the image to write into. It is supposed to be zeroed. | |
linesize | the array containing the linesizes of the image | |
desc | the pixel format descriptor for the image | |
x | the horizontal coordinate of the first pixel to write | |
y | the vertical coordinate of the first pixel to write | |
w | the width of the line to write, that is the number of values to write to the image line |