FFmpeg
|
Functions for working with pixel formats. More...
Macros | |
#define | FF_LOSS_RESOLUTION 0x0001 |
loss due to resolution change | |
#define | FF_LOSS_DEPTH 0x0002 |
loss due to color depth change | |
#define | FF_LOSS_COLORSPACE 0x0004 |
loss due to color space conversion | |
#define | FF_LOSS_ALPHA 0x0008 |
loss of alpha bits | |
#define | FF_LOSS_COLORQUANT 0x0010 |
loss due to color quantization | |
#define | FF_LOSS_CHROMA 0x0020 |
loss of chroma (e.g. | |
Functions | |
void | avcodec_get_chroma_sub_sample (enum AVPixelFormat pix_fmt, int *h_shift, int *v_shift) |
Utility function to access log2_chroma_w log2_chroma_h from the pixel format AVPixFmtDescriptor. | |
unsigned int | avcodec_pix_fmt_to_codec_tag (enum AVPixelFormat pix_fmt) |
Return a value representing the fourCC code associated to the pixel format pix_fmt, or 0 if no associated fourCC code can be found. | |
int | avcodec_get_pix_fmt_loss (enum AVPixelFormat dst_pix_fmt, enum AVPixelFormat src_pix_fmt, int has_alpha) |
Compute what kind of losses will occur when converting from one specific pixel format to another. | |
enum AVPixelFormat | avcodec_find_best_pix_fmt_of_list (const enum AVPixelFormat *pix_fmt_list, enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr) |
Find the best pixel format to convert to given a certain source pixel format. | |
enum AVPixelFormat | avcodec_find_best_pix_fmt_of_2 (enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2, enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr) |
Find the best pixel format to convert to given a certain source pixel format and a selection of two destination pixel formats. | |
attribute_deprecated enum AVPixelFormat | avcodec_find_best_pix_fmt2 (enum AVPixelFormat dst_pix_fmt1, enum AVPixelFormat dst_pix_fmt2, enum AVPixelFormat src_pix_fmt, int has_alpha, int *loss_ptr) |
enum AVPixelFormat | avcodec_default_get_format (struct AVCodecContext *s, const enum AVPixelFormat *fmt) |
Functions for working with pixel formats.
#define FF_LOSS_RESOLUTION 0x0001 |
loss due to resolution change
Definition at line 4569 of file avcodec.h.
Referenced by get_pix_fmt_score().
#define FF_LOSS_DEPTH 0x0002 |
loss due to color depth change
Definition at line 4570 of file avcodec.h.
Referenced by get_pix_fmt_score().
#define FF_LOSS_COLORSPACE 0x0004 |
loss due to color space conversion
Definition at line 4571 of file avcodec.h.
Referenced by get_pix_fmt_score().
#define FF_LOSS_ALPHA 0x0008 |
loss of alpha bits
Definition at line 4572 of file avcodec.h.
Referenced by avcodec_find_best_pix_fmt_of_2(), avcodec_get_pix_fmt_loss(), and get_pix_fmt_score().
#define FF_LOSS_COLORQUANT 0x0010 |
loss due to color quantization
Definition at line 4573 of file avcodec.h.
Referenced by get_pix_fmt_score().
#define FF_LOSS_CHROMA 0x0020 |
loss of chroma (e.g.
RGB to gray conversion)
Definition at line 4574 of file avcodec.h.
Referenced by get_pix_fmt_score().
void avcodec_get_chroma_sub_sample | ( | enum AVPixelFormat | pix_fmt, |
int * | h_shift, | ||
int * | v_shift | ||
) |
Utility function to access log2_chroma_w log2_chroma_h from the pixel format AVPixFmtDescriptor.
This function asserts that pix_fmt is valid. See av_pix_fmt_get_chroma_sub_sample for one that returns a failure code and continues in case of invalid pix_fmts.
[in] | pix_fmt | the pixel format |
[out] | h_shift | store log2_chroma_w |
[out] | v_shift | store log2_chroma_h |
Definition at line 65 of file imgconvert.c.
Referenced by dirac_decode_data_unit(), encode_init(), ff_mjpeg_decode_frame(), ff_MPV_common_init(), ff_MPV_encode_init(), ff_print_debug_info2(), j2kenc_init(), parse_source_parameters(), and vp3_decode_init().
unsigned int avcodec_pix_fmt_to_codec_tag | ( | enum AVPixelFormat | pix_fmt | ) |
Return a value representing the fourCC code associated to the pixel format pix_fmt, or 0 if no associated fourCC code can be found.
Definition at line 211 of file raw.c.
Referenced by avformat_find_stream_info(), raw_init_encoder(), and v4l2_read_header().
int avcodec_get_pix_fmt_loss | ( | enum AVPixelFormat | dst_pix_fmt, |
enum AVPixelFormat | src_pix_fmt, | ||
int | has_alpha | ||
) |
Compute what kind of losses will occur when converting from one specific pixel format to another.
When converting from one pixel format to another, information loss may occur. For example, when converting from RGB24 to GRAY, the color information will be lost. Similarly, other losses occur when converting from some formats to other formats. These losses can involve loss of chroma, but also loss of resolution, loss of color depth, loss due to the color space conversion, loss of the alpha bits or loss due to color quantization. avcodec_get_fix_fmt_loss() informs you about the various types of losses which will occur when converting from one pixel format to another.
[in] | dst_pix_fmt | destination pixel format |
[in] | src_pix_fmt | source pixel format |
[in] | has_alpha | Whether the source pixel format alpha channel is used. |
Definition at line 210 of file imgconvert.c.
Referenced by avcodec_find_best_pix_fmt_of_2().
enum AVPixelFormat avcodec_find_best_pix_fmt_of_list | ( | const enum AVPixelFormat * | pix_fmt_list, |
enum AVPixelFormat | src_pix_fmt, | ||
int | has_alpha, | ||
int * | loss_ptr | ||
) |
Find the best pixel format to convert to given a certain source pixel format.
When converting from one pixel format to another, information loss may occur. For example, when converting from RGB24 to GRAY, the color information will be lost. Similarly, other losses occur when converting from some formats to other formats. avcodec_find_best_pix_fmt_of_2() searches which of the given pixel formats should be used to suffer the least amount of loss. The pixel formats from which it chooses one, are determined by the pix_fmt_list parameter.
[in] | pix_fmt_list | AV_PIX_FMT_NONE terminated array of pixel formats to choose from |
[in] | src_pix_fmt | source pixel format |
[in] | has_alpha | Whether the source pixel format alpha channel is used. |
[out] | loss_ptr | Combination of flags informing you what kind of losses will occur. |
Definition at line 267 of file imgconvert.c.
enum AVPixelFormat avcodec_find_best_pix_fmt_of_2 | ( | enum AVPixelFormat | dst_pix_fmt1, |
enum AVPixelFormat | dst_pix_fmt2, | ||
enum AVPixelFormat | src_pix_fmt, | ||
int | has_alpha, | ||
int * | loss_ptr | ||
) |
Find the best pixel format to convert to given a certain source pixel format and a selection of two destination pixel formats.
When converting from one pixel format to another, information loss may occur. For example, when converting from RGB24 to GRAY, the color information will be lost. Similarly, other losses occur when converting from some formats to other formats. avcodec_find_best_pix_fmt_of_2() selects which of the given pixel formats should be used to suffer the least amount of loss.
If one of the destination formats is AV_PIX_FMT_NONE the other pixel format (if valid) will be returned.
[in] | dst_pix_fmt1 | One of the two destination pixel formats to choose from |
[in] | dst_pix_fmt2 | The other of the two destination pixel formats to choose from |
[in] | src_pix_fmt | Source pixel format |
[in] | has_alpha | Whether the source pixel format alpha channel is used. |
[in,out] | loss_ptr | Combination of loss flags. In: selects which of the losses to ignore, i.e. NULL or value of zero means we care about all losses. Out: the loss that occurs when converting from src to selected dst pixel format. |
Definition at line 221 of file imgconvert.c.
Referenced by avcodec_find_best_pix_fmt2(), avcodec_find_best_pix_fmt_of_list(), choose_pixel_fmt(), and pick_format().
attribute_deprecated enum AVPixelFormat avcodec_find_best_pix_fmt2 | ( | enum AVPixelFormat | dst_pix_fmt1, |
enum AVPixelFormat | dst_pix_fmt2, | ||
enum AVPixelFormat | src_pix_fmt, | ||
int | has_alpha, | ||
int * | loss_ptr | ||
) |
Definition at line 260 of file imgconvert.c.
enum AVPixelFormat avcodec_default_get_format | ( | struct AVCodecContext * | s, |
const enum AVPixelFormat * | fmt | ||
) |
Definition at line 1040 of file utils.c.
Referenced by avcodec_get_context_defaults3(), ff_thread_get_format(), and submit_packet().