FFmpeg
Data Structures | Macros | Functions | Variables
argo_brp.c File Reference
#include "avformat.h"
#include "internal.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/avassert.h"
#include "libavutil/internal.h"
#include "argo_asf.h"

Go to the source code of this file.

Data Structures

struct  ArgoBRPFileHeader
 
struct  ArgoBRPBlockHeader
 
struct  ArgoBVIDHeader
 
struct  ArgoMASKHeader
 
struct  ArgoBRPStreamHeader
 
struct  ArgoBRPDemuxContext
 

Macros

#define BRP_TAG   MKTAG('B', 'R', 'P', 'P')
 
#define BRP_FILE_HEADER_SIZE   12
 
#define BRP_BLOCK_HEADER_SIZE   12
 
#define BRP_STREAM_HEADER_SIZE   20
 
#define BRP_MAX_STREAMS   32 /* Soft cap, but even this is overkill. */
 
#define BRP_BASF_LOOKAHEAD   10 /* How many blocks to search for the first BASF one. */
 
#define BVID_HEADER_SIZE   16
 
#define MASK_HEADER_SIZE   12
 
#define BRP_MIN_BUFFER_SIZE
 
#define BRP_CODEC_ID_BVID   MKTAG('B', 'V', 'I', 'D')
 
#define BRP_CODEC_ID_BASF   MKTAG('B', 'A', 'S', 'F')
 
#define BRP_CODEC_ID_MASK   MKTAG('M', 'A', 'S', 'K')
 

Functions

static int argo_brp_probe (const AVProbeData *p)
 
static int read_extradata (AVFormatContext *s, const ArgoBRPStreamHeader *hdr, void *buf, size_t bufsz)
 
static int argo_brp_read_header (AVFormatContext *s)
 
static int argo_brp_read_packet (AVFormatContext *s, AVPacket *pkt)
 

Variables

AVInputFormat ff_argo_brp_demuxer
 

Macro Definition Documentation

#define BRP_TAG   MKTAG('B', 'R', 'P', 'P')

Definition at line 30 of file argo_brp.c.

Referenced by argo_brp_probe(), and argo_brp_read_header().

#define BRP_FILE_HEADER_SIZE   12

Definition at line 31 of file argo_brp.c.

Referenced by argo_brp_read_header().

#define BRP_BLOCK_HEADER_SIZE   12

Definition at line 32 of file argo_brp.c.

Referenced by argo_brp_read_header(), and argo_brp_read_packet().

#define BRP_STREAM_HEADER_SIZE   20

Definition at line 33 of file argo_brp.c.

Referenced by argo_brp_read_header().

#define BRP_MAX_STREAMS   32 /* Soft cap, but even this is overkill. */

Definition at line 34 of file argo_brp.c.

Referenced by argo_brp_read_header().

#define BRP_BASF_LOOKAHEAD   10 /* How many blocks to search for the first BASF one. */

Definition at line 35 of file argo_brp.c.

Referenced by argo_brp_read_header().

#define BVID_HEADER_SIZE   16

Definition at line 36 of file argo_brp.c.

Referenced by read_extradata().

#define MASK_HEADER_SIZE   12

Definition at line 37 of file argo_brp.c.

Referenced by read_extradata().

#define BRP_MIN_BUFFER_SIZE
Value:
#define MASK_HEADER_SIZE
Definition: argo_brp.c:37
#define BVID_HEADER_SIZE
Definition: argo_brp.c:36
#define BRP_FILE_HEADER_SIZE
Definition: argo_brp.c:31
#define BRP_STREAM_HEADER_SIZE
Definition: argo_brp.c:33
#define BRP_BLOCK_HEADER_SIZE
Definition: argo_brp.c:32
#define FFMAX3(a, b, c)
Definition: common.h:103

Definition at line 38 of file argo_brp.c.

Referenced by argo_brp_read_header(), and argo_brp_read_packet().

#define BRP_CODEC_ID_BVID   MKTAG('B', 'V', 'I', 'D')

Definition at line 44 of file argo_brp.c.

Referenced by argo_brp_read_header(), argo_brp_read_packet(), and read_extradata().

#define BRP_CODEC_ID_BASF   MKTAG('B', 'A', 'S', 'F')

Definition at line 45 of file argo_brp.c.

Referenced by argo_brp_read_header(), and read_extradata().

#define BRP_CODEC_ID_MASK   MKTAG('M', 'A', 'S', 'K')

Definition at line 46 of file argo_brp.c.

Referenced by argo_brp_read_header(), and read_extradata().

Function Documentation

static int argo_brp_probe ( const AVProbeData p)
static

Definition at line 100 of file argo_brp.c.

static int read_extradata ( AVFormatContext s,
const ArgoBRPStreamHeader hdr,
void buf,
size_t  bufsz 
)
static

Definition at line 108 of file argo_brp.c.

Referenced by argo_brp_read_header().

static int argo_brp_read_header ( AVFormatContext s)
static

Definition at line 150 of file argo_brp.c.

static int argo_brp_read_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 350 of file argo_brp.c.

Variable Documentation

AVInputFormat ff_argo_brp_demuxer
Initial value:
= {
.name = "argo_brp",
.long_name = NULL_IF_CONFIG_SMALL("Argonaut Games BRP"),
.priv_data_size = sizeof(ArgoBRPDemuxContext),
}
static int argo_brp_probe(const AVProbeData *p)
Definition: argo_brp.c:100
static int argo_brp_read_packet(AVFormatContext *s, AVPacket *pkt)
Definition: argo_brp.c:350
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:115
static int read_header(FFV1Context *f)
Definition: ffv1dec.c:527
static int read_packet(void *opaque, uint8_t *buf, int buf_size)
Definition: avio_reading.c:42
static int read_probe(const AVProbeData *pd)
Definition: jvdec.c:55
static int argo_brp_read_header(AVFormatContext *s)
Definition: argo_brp.c:150

Definition at line 416 of file argo_brp.c.