Go to the source code of this file.
|  | 
| static void | png_get_interlaced_row (uint8_t *dst, int row_size, int bits_per_pixel, int pass, const uint8_t *src, int width) | 
|  | 
| static void | sub_png_paeth_prediction (uint8_t *dst, const uint8_t *src, const uint8_t *top, int w, int bpp) | 
|  | 
| static void | sub_left_prediction (PNGEncContext *c, uint8_t *dst, const uint8_t *src, int bpp, int size) | 
|  | 
| static void | png_filter_row (PNGEncContext *c, uint8_t *dst, int filter_type, const uint8_t *src, const uint8_t *top, int size, int bpp) | 
|  | 
| static uint8_t * | png_choose_filter (PNGEncContext *s, uint8_t *dst, const uint8_t *src, const uint8_t *top, int size, int bpp) | 
|  | 
| static void | png_write_chunk (uint8_t **f, uint32_t tag, const uint8_t *buf, int length) | 
|  | 
| static void | png_write_image_data (AVCodecContext *avctx, const uint8_t *buf, int length) | 
|  | 
| static int | png_write_row (AVCodecContext *avctx, const uint8_t *data, int size) | 
|  | 
| static int | png_get_chrm (enum AVColorPrimaries prim, uint8_t *buf) | 
|  | 
| static int | png_get_gama (enum AVColorTransferCharacteristic trc, uint8_t *buf) | 
|  | 
| static int | png_write_iccp (PNGEncContext *s, const AVFrameSideData *sd) | 
|  | 
| static int | encode_headers (AVCodecContext *avctx, const AVFrame *pict) | 
|  | 
| static int | encode_frame (AVCodecContext *avctx, const AVFrame *pict) | 
|  | 
| static int | add_icc_profile_size (AVCodecContext *avctx, const AVFrame *pict, uint64_t *max_packet_size) | 
|  | 
| static int | encode_png (AVCodecContext *avctx, AVPacket *pkt, const AVFrame *pict, int *got_packet) | 
|  | 
| static int | apng_do_inverse_blend (AVFrame *output, const AVFrame *input, APNGFctlChunk *fctl_chunk, uint8_t bpp) | 
|  | 
| static int | apng_encode_frame (AVCodecContext *avctx, const AVFrame *pict, APNGFctlChunk *best_fctl_chunk, APNGFctlChunk *best_last_fctl_chunk) | 
|  | 
| static int | encode_apng (AVCodecContext *avctx, AVPacket *pkt, const AVFrame *pict, int *got_packet) | 
|  | 
| static av_cold int | png_enc_init (AVCodecContext *avctx) | 
|  | 
| static av_cold int | png_enc_close (AVCodecContext *avctx) | 
|  | 
◆ IOBUF_SIZE
◆ AV_WB32_PNG
      
        
          | #define AV_WB32_PNG | ( |  | buf, | 
        
          |  |  |  | n | 
        
          |  | ) |  | AV_WB32(buf, lrint((n) * 100000)) | 
      
 
 
◆ AV_WB32_PNG_D
◆ OFFSET
◆ VE
◆ png_get_interlaced_row()
  
  | 
        
          | static void png_get_interlaced_row | ( | uint8_t * | dst, |  
          |  |  | int | row_size, |  
          |  |  | int | bits_per_pixel, |  
          |  |  | int | pass, |  
          |  |  | const uint8_t * | src, |  
          |  |  | int | width |  
          |  | ) |  |  |  | static | 
 
 
◆ sub_png_paeth_prediction()
  
  | 
        
          | static void sub_png_paeth_prediction | ( | uint8_t * | dst, |  
          |  |  | const uint8_t * | src, |  
          |  |  | const uint8_t * | top, |  
          |  |  | int | w, |  
          |  |  | int | bpp |  
          |  | ) |  |  |  | static | 
 
 
◆ sub_left_prediction()
  
  | 
        
          | static void sub_left_prediction | ( | PNGEncContext * | c, |  
          |  |  | uint8_t * | dst, |  
          |  |  | const uint8_t * | src, |  
          |  |  | int | bpp, |  
          |  |  | int | size |  
          |  | ) |  |  |  | static | 
 
 
◆ png_filter_row()
  
  | 
        
          | static void png_filter_row | ( | PNGEncContext * | c, |  
          |  |  | uint8_t * | dst, |  
          |  |  | int | filter_type, |  
          |  |  | const uint8_t * | src, |  
          |  |  | const uint8_t * | top, |  
          |  |  | int | size, |  
          |  |  | int | bpp |  
          |  | ) |  |  |  | static | 
 
 
◆ png_choose_filter()
  
  | 
        
          | static uint8_t* png_choose_filter | ( | PNGEncContext * | s, |  
          |  |  | uint8_t * | dst, |  
          |  |  | const uint8_t * | src, |  
          |  |  | const uint8_t * | top, |  
          |  |  | int | size, |  
          |  |  | int | bpp |  
          |  | ) |  |  |  | static | 
 
 
◆ png_write_chunk()
  
  | 
        
          | static void png_write_chunk | ( | uint8_t ** | f, |  
          |  |  | uint32_t | tag, |  
          |  |  | const uint8_t * | buf, |  
          |  |  | int | length |  
          |  | ) |  |  |  | static | 
 
 
◆ png_write_image_data()
  
  | 
        
          | static void png_write_image_data | ( | AVCodecContext * | avctx, |  
          |  |  | const uint8_t * | buf, |  
          |  |  | int | length |  
          |  | ) |  |  |  | static | 
 
 
◆ png_write_row()
◆ png_get_chrm()
◆ png_get_gama()
◆ png_write_iccp()
◆ encode_headers()
◆ encode_frame()
◆ add_icc_profile_size()
◆ encode_png()
◆ apng_do_inverse_blend()
◆ apng_encode_frame()
◆ encode_apng()
◆ png_enc_init()
◆ png_enc_close()
◆ options
◆ pngenc_class
Initial value:= {
    .class_name = "(A)PNG encoder",
}
Definition at line 1185 of file pngenc.c.
 
 
◆ ff_png_encoder
Initial value:= {
    .p.name         = "png",
    },
}
Definition at line 1192 of file pngenc.c.
 
 
◆ ff_apng_encoder
Initial value:= {
    .p.name         = "apng",
    },
}
Definition at line 1215 of file pngenc.c.
 
 
 
AVPixelFormat
Pixel format.
@ AV_PIX_FMT_RGBA64BE
packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is st...
#define PNG_FILTER_VALUE_MIXED
@ AV_PIX_FMT_GRAY16BE
Y , 16bpp, big-endian.
#define FF_CODEC_ENCODE_CB(func)
static int encode_png(AVCodecContext *avctx, AVPacket *pkt, const AVFrame *pict, int *got_packet)
static int encode_apng(AVCodecContext *avctx, AVPacket *pkt, const AVFrame *pict, int *got_packet)
int(* init)(AVBSFContext *ctx)
#define AV_CODEC_CAP_ENCODER_REORDERED_OPAQUE
This encoder can reorder user opaque values from input AVFrames and return them with corresponding ou...
#define CODEC_LONG_NAME(str)
@ AV_PIX_FMT_RGBA
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
#define AV_CODEC_CAP_FRAME_THREADS
Codec supports frame-level multithreading.
@ AV_PIX_FMT_GRAY8A
alias for AV_PIX_FMT_YA8
#define LIBAVUTIL_VERSION_INT
@ AV_PIX_FMT_MONOBLACK
Y , 1bpp, 0 is black, 1 is white, in each byte pixels are ordered from the msb to the lsb.
const char * av_default_item_name(void *ptr)
Return the context name.
static av_cold int png_enc_close(AVCodecContext *avctx)
@ AV_PIX_FMT_GRAY8
Y , 8bpp.
#define PNG_FILTER_VALUE_NONE
@ AV_PIX_FMT_RGB24
packed RGB 8:8:8, 24bpp, RGBRGB...
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() or get_encode_buffer() for allocating buffers and supports custom allocators.
@ AV_PIX_FMT_YA16BE
16 bits gray, 16 bits alpha (big-endian)
#define PNG_FILTER_VALUE_AVG
#define PNG_FILTER_VALUE_PAETH
#define PNG_FILTER_VALUE_UP
#define PNG_FILTER_VALUE_SUB
@ AV_PIX_FMT_RGB48BE
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big...
static const AVOption options[]
#define FF_CODEC_CAP_ICC_PROFILES
Codec supports embedded ICC profiles (AV_FRAME_DATA_ICC_PROFILE).
@ AV_PIX_FMT_PAL8
8 bits with AV_PIX_FMT_RGB32 palette
#define AV_CODEC_CAP_DELAY
Encoder or decoder requires flushing with NULL input at the end in order to give the complete and cor...
static av_cold int png_enc_init(AVCodecContext *avctx)
static const AVClass pngenc_class