FFmpeg
Loading...
Searching...
No Matches
evcdec.c File Reference
#include "libavcodec/evc.h"
#include "libavcodec/bsf.h"
#include "libavutil/opt.h"
#include "avformat.h"
#include "avio_internal.h"
#include "demux.h"
#include "evc.h"
#include "internal.h"

Go to the source code of this file.

Data Structures

struct  EVCDemuxContext
 

Macros

#define RAW_PACKET_SIZE   1024
 
#define DEC   AV_OPT_FLAG_DECODING_PARAM
 
#define OFFSET(x)
 

Functions

static int annexb_probe (const AVProbeData *p)
 
static int evc_read_header (AVFormatContext *s)
 
static int evc_read_packet (AVFormatContext *s, AVPacket *pkt)
 
static int evc_read_close (AVFormatContext *s)
 

Variables

static const AVOption evc_options []
 
static const AVClass evc_demuxer_class
 
const FFInputFormat ff_evc_demuxer
 

Macro Definition Documentation

◆ RAW_PACKET_SIZE

#define RAW_PACKET_SIZE   1024

Definition at line 35 of file evcdec.c.

Referenced by rm_read_packet().

◆ DEC

#define DEC   AV_OPT_FLAG_DECODING_PARAM

Definition at line 45 of file evcdec.c.

◆ OFFSET

#define OFFSET ( x)
Value:

Definition at line 46 of file evcdec.c.

Function Documentation

◆ annexb_probe()

static int annexb_probe ( const AVProbeData * p)
static

Definition at line 60 of file evcdec.c.

◆ evc_read_header()

static int evc_read_header ( AVFormatContext * s)
static

Definition at line 99 of file evcdec.c.

◆ evc_read_packet()

static int evc_read_packet ( AVFormatContext * s,
AVPacket * pkt )
static

Definition at line 145 of file evcdec.c.

◆ evc_read_close()

static int evc_read_close ( AVFormatContext * s)
static

Definition at line 200 of file evcdec.c.

Variable Documentation

◆ evc_options

const AVOption evc_options[]
static
Initial value:
= {
{ "framerate", "", OFFSET(framerate), AV_OPT_TYPE_VIDEO_RATE, {.str = "25"}, 0, INT_MAX, DEC},
{ NULL },
}
#define NULL
Definition coverity.c:32
#define OFFSET(x)
@ AV_OPT_TYPE_VIDEO_RATE
Underlying C type is AVRational.
Definition opt.h:314
#define DEC
Definition librsvgdec.c:149
float framerate
Definition av1_levels.c:29

Definition at line 47 of file evcdec.c.

◆ evc_demuxer_class

const AVClass evc_demuxer_class
static
Initial value:
= {
.class_name = "EVC Annex B demuxer",
.item_name = av_default_item_name,
.option = evc_options,
}
static const AVOption evc_options[]
Definition evcdec.c:47
const char * av_default_item_name(void *ptr)
Return the context name.
Definition log.c:241
#define LIBAVUTIL_VERSION_INT
Definition version.h:85

Definition at line 53 of file evcdec.c.

◆ ff_evc_demuxer

const FFInputFormat ff_evc_demuxer
Initial value:
= {
.p.name = "evc",
.p.long_name = NULL_IF_CONFIG_SMALL("EVC Annex B"),
.p.extensions = "evc",
.p.priv_class = &evc_demuxer_class,
.read_probe = annexb_probe,
.read_header = evc_read_header,
.read_packet = evc_read_packet,
.read_close = evc_read_close,
.flags_internal = FF_INFMT_FLAG_INIT_CLEANUP,
.raw_codec_id = AV_CODEC_ID_EVC,
.priv_data_size = sizeof(EVCDemuxContext),
}
#define AVFMT_GENERIC_INDEX
Use generic index building code.
Definition avformat.h:499
#define AVFMT_NOTIMESTAMPS
Format does not need / have any timestamps.
Definition avformat.h:498
#define FF_INFMT_FLAG_INIT_CLEANUP
For an FFInputFormat with this flag set read_close() needs to be called by the caller upon read_heade...
Definition demux.h:35
static int evc_read_packet(AVFormatContext *s, AVPacket *pkt)
Definition evcdec.c:145
static const AVClass evc_demuxer_class
Definition evcdec.c:53
static int evc_read_close(AVFormatContext *s)
Definition evcdec.c:200
static int evc_read_header(AVFormatContext *s)
Definition evcdec.c:99
static int annexb_probe(const AVProbeData *p)
Definition evcdec.c:60
@ AV_CODEC_ID_EVC
Definition codec_id.h:316
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification.
Definition internal.h:88

Definition at line 208 of file evcdec.c.