69 if (tags->
fourcc == fourcc)
116 void *
data,
int *data_size,
119 const uint8_t *buf = avpkt->
data;
120 int buf_size = avpkt->
size;
139 uint8_t *dst = context->
buffer;
140 buf_size = context->
length - 256*4;
142 for(i=0; 2*i+1 < buf_size; i++){
143 dst[2*i+0]= buf[i]>>4;
144 dst[2*i+1]= buf[i]&15;
147 for(i=0; 4*i+3 < buf_size; i++){
148 dst[4*i+0]= buf[i]>>6;
149 dst[4*i+1]= buf[i]>>4&3;
150 dst[4*i+2]= buf[i]>>2&3;
151 dst[4*i+3]= buf[i] &3;
158 buf += buf_size - context->
length;
180 flip(avctx, picture);
190 for(y = 0; y < avctx->
height; y++) {
191 for(x = 0; x < avctx->
width; x++)
192 line[2*x + 1] ^= 0x80;
enum PixelFormat pix_fmt
Pixel format, see PIX_FMT_xxx.
Y , 1bpp, 0 is white, 1 is black, in each byte pixels are ordered from the msb to the lsb...
int linesize[AV_NUM_DATA_POINTERS]
number of bytes per line
AVCodec ff_rawvideo_decoder
AVFrame * coded_frame
the picture in the bitstream
four components are given, that's all.
void av_freep(void *arg)
Free a memory block which has been allocated with av_malloc(z)() or av_realloc() and set the pointer ...
static enum PixelFormat find_pix_fmt(const PixelFormatTag *tags, unsigned int fourcc)
static int decode(MimicContext *ctx, int quality, int num_coeffs, int is_iframe)
planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
uint8_t * data[AV_NUM_DATA_POINTERS]
const PixelFormatTag ff_raw_pix_fmt_tags[]
uint8_t * extradata
some codecs need / can use extradata like Huffman tables.
uint32_t palette[AVPALETTE_COUNT]
static const PixelFormatTag pix_fmt_bps_avi[]
int interlaced_frame
The content of the picture is interlaced.
int ff_set_systematic_pal2(uint32_t pal[256], enum PixelFormat pix_fmt)
int bits_per_coded_sample
bits per sample/pixel from the demuxer (needed for huffyuv).
int avpicture_get_size(enum PixelFormat pix_fmt, int width, int height)
Calculate the size in bytes that a picture of the given width and height would occupy if stored in th...
static int init(AVCodecParserContext *s)
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
#define PIX_FMT_PAL
Pixel format has a palette in data[1], values are indexes in this palette.
const char * name
Name of the codec implementation.
static const PixelFormatTag pix_fmt_bps_mov[]
const AVPixFmtDescriptor av_pix_fmt_descriptors[PIX_FMT_NB]
The array of all the pixel format descriptors.
AVFrame pic
AVCodecContext.coded_frame.
enum AVPictureType pict_type
Picture type of the frame, see ?_TYPE below.
int width
picture width / height.
int64_t reordered_opaque
opaque 64bit number (generally a PTS) that will be reordered and output in AVFrame.reordered_opaque
uint8_t * av_packet_get_side_data(AVPacket *pkt, enum AVPacketSideDataType type, int *size)
Get side information from packet.
int linesize[AV_NUM_DATA_POINTERS]
Size, in bytes, of the data for each picture/channel plane.
main external API structure.
static void close(AVCodecParserContext *s)
packed ARGB 8:8:8:8, 32bpp, ARGBARGB...
struct AVPicture AVPicture
four components are given, that's all.
unsigned int codec_tag
fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
packed RGB 5:5:5, 16bpp, (msb)1A 5R 5G 5B(lsb), big-endian, most significant bit to 0 ...
packed YUV 4:2:2, 16bpp, Y0 Cb Y1 Cr
void * av_malloc(size_t size)
Allocate a block of size bytes with alignment suitable for all memory accesses (including vectors if ...
int64_t reordered_opaque
reordered opaque 64bit (generally an integer or a double precision float PTS but can be anything)...
static int raw_decode(AVCodecContext *avctx, void *data, int *data_size, AVPacket *avpkt)
static av_cold int raw_close_decoder(AVCodecContext *avctx)
int avpicture_fill(AVPicture *picture, uint8_t *ptr, enum PixelFormat pix_fmt, int width, int height)
Fill in the AVPicture fields.
int palette_has_changed
Tell user application that palette has changed from previous frame.
packed RGB 8:8:8, 24bpp, BGRBGR...
int64_t pkt_pts
reordered pts from the last AVPacket that has been input into the decoder
uint8_t * data[AV_NUM_DATA_POINTERS]
pointer to the picture/channel planes.
AVPacket * pkt
Current packet as passed into the decoder, to avoid having to pass the packet into every function...
static void flip(AVCodecContext *avctx, AVPicture *picture)
static av_cold int raw_init_decoder(AVCodecContext *avctx)
8 bit with PIX_FMT_RGB32 palette
packed RGB 8:8:8, 24bpp, RGBRGB...
int top_field_first
If the content is interlaced, is top field displayed first.
int key_frame
1 -> keyframe, 0-> not
#define FFSWAP(type, a, b)
#define MKTAG(a, b, c, d)
struct RawVideoContext RawVideoContext
int64_t pts
Presentation timestamp in AVStream->time_base units; the time at which the decompressed packet will b...