FFmpeg  4.0
Data Structures | Macros | Functions | Variables
dpxenc.c File Reference
#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/imgutils.h"
#include "avcodec.h"
#include "internal.h"

Go to the source code of this file.

Data Structures

struct  DPXContext
 

Macros

#define write16(p, value)   write16_internal(s->big_endian, p, value)
 
#define write32(p, value)   write32_internal(s->big_endian, p, value)
 
#define HEADER_SIZE   1664 /* DPX Generic header */
 

Functions

static av_cold int encode_init (AVCodecContext *avctx)
 
static av_always_inline void write16_internal (int big_endian, void *p, int value)
 
static av_always_inline void write32_internal (int big_endian, void *p, int value)
 
static void encode_rgb48_10bit (AVCodecContext *avctx, const AVFrame *pic, uint8_t *dst)
 
static void encode_gbrp10 (AVCodecContext *avctx, const AVFrame *pic, uint8_t *dst)
 
static void encode_gbrp12 (AVCodecContext *avctx, const AVFrame *pic, uint16_t *dst)
 
static int encode_frame (AVCodecContext *avctx, AVPacket *pkt, const AVFrame *frame, int *got_packet)
 

Variables

AVCodec ff_dpx_encoder
 

Macro Definition Documentation

◆ write16

#define write16 (   p,
  value 
)    write16_internal(s->big_endian, p, value)

Definition at line 90 of file dpxenc.c.

Referenced by encode_frame(), and encode_gbrp12().

◆ write32

#define write32 (   p,
  value 
)    write32_internal(s->big_endian, p, value)

Definition at line 91 of file dpxenc.c.

Referenced by encode_frame(), encode_gbrp10(), and encode_rgb48_10bit().

◆ HEADER_SIZE

#define HEADER_SIZE   1664 /* DPX Generic header */

Referenced by encode_frame().

Function Documentation

◆ encode_init()

static av_cold int encode_init ( AVCodecContext avctx)
static

Definition at line 36 of file dpxenc.c.

◆ write16_internal()

static av_always_inline void write16_internal ( int  big_endian,
void p,
int  value 
)
static

Definition at line 78 of file dpxenc.c.

◆ write32_internal()

static av_always_inline void write32_internal ( int  big_endian,
void p,
int  value 
)
static

Definition at line 84 of file dpxenc.c.

◆ encode_rgb48_10bit()

static void encode_rgb48_10bit ( AVCodecContext avctx,
const AVFrame pic,
uint8_t dst 
)
static

Definition at line 93 of file dpxenc.c.

Referenced by encode_frame().

◆ encode_gbrp10()

static void encode_gbrp10 ( AVCodecContext avctx,
const AVFrame pic,
uint8_t dst 
)
static

Definition at line 119 of file dpxenc.c.

Referenced by encode_frame().

◆ encode_gbrp12()

static void encode_gbrp12 ( AVCodecContext avctx,
const AVFrame pic,
uint16_t *  dst 
)
static

Definition at line 145 of file dpxenc.c.

Referenced by encode_frame().

◆ encode_frame()

static int encode_frame ( AVCodecContext avctx,
AVPacket pkt,
const AVFrame frame,
int got_packet 
)
static

Definition at line 176 of file dpxenc.c.

Variable Documentation

◆ ff_dpx_encoder

AVCodec ff_dpx_encoder
Initial value:
= {
.name = "dpx",
.long_name = NULL_IF_CONFIG_SMALL("DPX (Digital Picture Exchange) image"),
.priv_data_size = sizeof(DPXContext),
.encode2 = encode_frame,
.pix_fmts = (const enum AVPixelFormat[]){
}
packed RGB 8:8:8, 24bpp, RGBRGB...
Definition: pixfmt.h:64
static av_cold int init(AVCodecContext *avctx)
Definition: avrndec.c:35
static av_cold int encode_init(AVCodecContext *avctx)
Definition: dpxenc.c:36
planar GBR 4:4:4 36bpp, little-endian
Definition: pixfmt.h:251
planar GBR 4:4:4 36bpp, big-endian
Definition: pixfmt.h:250
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as lit...
Definition: pixfmt.h:99
packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is st...
Definition: pixfmt.h:201
packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
Definition: pixfmt.h:90
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
Definition: pixfmt.h:89
planar GBR 4:4:4 30bpp, big-endian
Definition: pixfmt.h:168
Y , 16bpp, big-endian.
Definition: pixfmt.h:93
static enum AVPixelFormat pix_fmts[]
Definition: libkvazaar.c:266
Y , 8bpp.
Definition: pixfmt.h:70
packed RGB 16:16:16, 48bpp, 16R, 16G, 16B, the 2-byte value for each R/G/B component is stored as big...
Definition: pixfmt.h:98
static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, const AVFrame *frame, int *got_packet)
Definition: dpxenc.c:176
Y , 16bpp, little-endian.
Definition: pixfmt.h:94
AVPixelFormat
Pixel format.
Definition: pixfmt.h:60
planar GBR 4:4:4 30bpp, little-endian
Definition: pixfmt.h:169
packed RGBA 16:16:16:16, 64bpp, 16R, 16G, 16B, 16A, the 2-byte value for each R/G/B/A component is st...
Definition: pixfmt.h:202

Definition at line 279 of file dpxenc.c.