FFmpeg
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 "encode.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, uint8_t *dst)
 
static int encode_frame (AVCodecContext *avctx, AVPacket *pkt, const AVFrame *frame, int *got_packet)
 

Variables

const AVCodec ff_dpx_encoder
 

Macro Definition Documentation

◆ write16

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

Definition at line 88 of file dpxenc.c.

◆ write32

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

Definition at line 89 of file dpxenc.c.

◆ HEADER_SIZE

#define HEADER_SIZE   1664 /* DPX Generic header */

Function Documentation

◆ encode_init()

static av_cold int encode_init ( AVCodecContext avctx)
static

Definition at line 37 of file dpxenc.c.

◆ write16_internal()

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

Definition at line 76 of file dpxenc.c.

◆ write32_internal()

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

Definition at line 82 of file dpxenc.c.

◆ encode_rgb48_10bit()

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

Definition at line 91 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 117 of file dpxenc.c.

Referenced by encode_frame().

◆ encode_gbrp12()

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

Definition at line 143 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 174 of file dpxenc.c.

Variable Documentation

◆ ff_dpx_encoder

const AVCodec ff_dpx_encoder
FF_CODEC_CAP_INIT_THREADSAFE
#define FF_CODEC_CAP_INIT_THREADSAFE
The codec does not modify any global variables in the init function, allowing to call the init functi...
Definition: internal.h:42
AVPixelFormat
AVPixelFormat
Pixel format.
Definition: pixfmt.h:64
AV_CODEC_ID_DPX
@ AV_CODEC_ID_DPX
Definition: codec_id.h:178
AV_PIX_FMT_GBRP10BE
@ AV_PIX_FMT_GBRP10BE
planar GBR 4:4:4 30bpp, big-endian
Definition: pixfmt.h:162
AV_PIX_FMT_RGBA64BE
@ 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...
Definition: pixfmt.h:195
init
static int init
Definition: av_tx.c:47
encode_frame
static int encode_frame(AVCodecContext *avctx, AVPacket *pkt, const AVFrame *frame, int *got_packet)
Definition: dpxenc.c:174
AV_PIX_FMT_GRAY16BE
@ AV_PIX_FMT_GRAY16BE
Y , 16bpp, big-endian.
Definition: pixfmt.h:97
AV_PIX_FMT_GBRP12LE
@ AV_PIX_FMT_GBRP12LE
planar GBR 4:4:4 36bpp, little-endian
Definition: pixfmt.h:245
pix_fmts
static enum AVPixelFormat pix_fmts[]
Definition: libkvazaar.c:296
AV_PIX_FMT_GBRP10LE
@ AV_PIX_FMT_GBRP10LE
planar GBR 4:4:4 30bpp, little-endian
Definition: pixfmt.h:163
AV_PIX_FMT_RGBA
@ AV_PIX_FMT_RGBA
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
Definition: pixfmt.h:93
AV_PIX_FMT_RGB48LE
@ AV_PIX_FMT_RGB48LE
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:103
AV_PIX_FMT_RGBA64LE
@ AV_PIX_FMT_RGBA64LE
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:196
AV_PIX_FMT_GRAY8
@ AV_PIX_FMT_GRAY8
Y , 8bpp.
Definition: pixfmt.h:74
AV_PIX_FMT_ABGR
@ AV_PIX_FMT_ABGR
packed ABGR 8:8:8:8, 32bpp, ABGRABGR...
Definition: pixfmt.h:94
DPXContext
Definition: dpxenc.c:29
AV_PIX_FMT_RGB24
@ AV_PIX_FMT_RGB24
packed RGB 8:8:8, 24bpp, RGBRGB...
Definition: pixfmt.h:68
AV_CODEC_CAP_DR1
#define AV_CODEC_CAP_DR1
Codec uses get_buffer() or get_encode_buffer() for allocating buffers and supports custom allocators.
Definition: codec.h:52
NULL_IF_CONFIG_SMALL
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
Definition: internal.h:117
AV_PIX_FMT_RGB48BE
@ 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...
Definition: pixfmt.h:102
AV_PIX_FMT_GBRP12BE
@ AV_PIX_FMT_GBRP12BE
planar GBR 4:4:4 36bpp, big-endian
Definition: pixfmt.h:244
AV_PIX_FMT_NONE
@ AV_PIX_FMT_NONE
Definition: pixfmt.h:65
encode_init
static av_cold int encode_init(AVCodecContext *avctx)
Definition: dpxenc.c:37
AVMEDIA_TYPE_VIDEO
@ AVMEDIA_TYPE_VIDEO
Definition: avutil.h:201
AV_PIX_FMT_GRAY16LE
@ AV_PIX_FMT_GRAY16LE
Y , 16bpp, little-endian.
Definition: pixfmt.h:98