FFmpeg  4.0
Data Structures | Macros | Functions | Variables
mlvdec.c File Reference

Magic Lantern Video (MLV) demuxer. More...

#include "libavutil/eval.h"
#include "libavutil/imgutils.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/rational.h"
#include "avformat.h"
#include "avio_internal.h"
#include "internal.h"
#include "riff.h"

Go to the source code of this file.

Data Structures

struct  MlvContext
 

Macros

#define MLV_VERSION   "v2.0"
 
#define MLV_VIDEO_CLASS_RAW   1
 
#define MLV_VIDEO_CLASS_YUV   2
 
#define MLV_VIDEO_CLASS_JPEG   3
 
#define MLV_VIDEO_CLASS_H264   4
 
#define MLV_AUDIO_CLASS_WAV   1
 
#define MLV_CLASS_FLAG_DELTA   0x40
 
#define MLV_CLASS_FLAG_LZMA   0x80
 

Functions

static int probe (AVProbeData *p)
 
static int check_file_header (AVIOContext *pb, uint64_t guid)
 
static void read_string (AVFormatContext *avctx, AVIOContext *pb, const char *tag, int size)
 
static void read_uint8 (AVFormatContext *avctx, AVIOContext *pb, const char *tag, const char *fmt)
 
static void read_uint16 (AVFormatContext *avctx, AVIOContext *pb, const char *tag, const char *fmt)
 
static void read_uint32 (AVFormatContext *avctx, AVIOContext *pb, const char *tag, const char *fmt)
 
static void read_uint64 (AVFormatContext *avctx, AVIOContext *pb, const char *tag, const char *fmt)
 
static int scan_file (AVFormatContext *avctx, AVStream *vst, AVStream *ast, int file)
 
static int read_header (AVFormatContext *avctx)
 
static int read_packet (AVFormatContext *avctx, AVPacket *pkt)
 
static int read_seek (AVFormatContext *avctx, int stream_index, int64_t timestamp, int flags)
 
static int read_close (AVFormatContext *s)
 

Variables

AVInputFormat ff_mlv_demuxer
 

Detailed Description

Magic Lantern Video (MLV) demuxer.

Definition in file mlvdec.c.

Macro Definition Documentation

◆ MLV_VERSION

#define MLV_VERSION   "v2.0"

Definition at line 36 of file mlvdec.c.

Referenced by check_file_header(), and probe().

◆ MLV_VIDEO_CLASS_RAW

#define MLV_VIDEO_CLASS_RAW   1

Definition at line 38 of file mlvdec.c.

Referenced by read_header().

◆ MLV_VIDEO_CLASS_YUV

#define MLV_VIDEO_CLASS_YUV   2

Definition at line 39 of file mlvdec.c.

Referenced by read_header().

◆ MLV_VIDEO_CLASS_JPEG

#define MLV_VIDEO_CLASS_JPEG   3

Definition at line 40 of file mlvdec.c.

Referenced by read_header().

◆ MLV_VIDEO_CLASS_H264

#define MLV_VIDEO_CLASS_H264   4

Definition at line 41 of file mlvdec.c.

Referenced by read_header().

◆ MLV_AUDIO_CLASS_WAV

#define MLV_AUDIO_CLASS_WAV   1

Definition at line 43 of file mlvdec.c.

Referenced by read_header().

◆ MLV_CLASS_FLAG_DELTA

#define MLV_CLASS_FLAG_DELTA   0x40

Definition at line 45 of file mlvdec.c.

Referenced by read_header(), and read_packet().

◆ MLV_CLASS_FLAG_LZMA

#define MLV_CLASS_FLAG_LZMA   0x80

Definition at line 46 of file mlvdec.c.

Referenced by read_header(), and read_packet().

Function Documentation

◆ probe()

static int probe ( AVProbeData p)
static

Definition at line 55 of file mlvdec.c.

◆ check_file_header()

static int check_file_header ( AVIOContext pb,
uint64_t  guid 
)
static

Definition at line 64 of file mlvdec.c.

Referenced by read_header().

◆ read_string()

static void read_string ( AVFormatContext avctx,
AVIOContext pb,
const char *  tag,
int  size 
)
static

Definition at line 80 of file mlvdec.c.

Referenced by scan_file().

◆ read_uint8()

static void read_uint8 ( AVFormatContext avctx,
AVIOContext pb,
const char *  tag,
const char *  fmt 
)
static

Definition at line 98 of file mlvdec.c.

Referenced by scan_file().

◆ read_uint16()

static void read_uint16 ( AVFormatContext avctx,
AVIOContext pb,
const char *  tag,
const char *  fmt 
)
static

Definition at line 103 of file mlvdec.c.

Referenced by scan_file().

◆ read_uint32()

static void read_uint32 ( AVFormatContext avctx,
AVIOContext pb,
const char *  tag,
const char *  fmt 
)
static

Definition at line 108 of file mlvdec.c.

Referenced by scan_file().

◆ read_uint64()

static void read_uint64 ( AVFormatContext avctx,
AVIOContext pb,
const char *  tag,
const char *  fmt 
)
static

Definition at line 113 of file mlvdec.c.

Referenced by scan_file().

◆ scan_file()

static int scan_file ( AVFormatContext avctx,
AVStream vst,
AVStream ast,
int  file 
)
static

Definition at line 118 of file mlvdec.c.

Referenced by read_header().

◆ read_header()

static int read_header ( AVFormatContext avctx)
static

Definition at line 253 of file mlvdec.c.

◆ read_packet()

static int read_packet ( AVFormatContext avctx,
AVPacket pkt 
)
static

Definition at line 392 of file mlvdec.c.

◆ read_seek()

static int read_seek ( AVFormatContext avctx,
int  stream_index,
int64_t  timestamp,
int  flags 
)
static

Definition at line 446 of file mlvdec.c.

◆ read_close()

static int read_close ( AVFormatContext s)
static

Definition at line 460 of file mlvdec.c.

Variable Documentation

◆ ff_mlv_demuxer

AVInputFormat ff_mlv_demuxer
Initial value:
= {
.name = "mlv",
.long_name = NULL_IF_CONFIG_SMALL("Magic Lantern Video (MLV)"),
.priv_data_size = sizeof(MlvContext),
}
static int read_close(AVFormatContext *s)
Definition: mlvdec.c:460
static int read_packet(AVFormatContext *avctx, AVPacket *pkt)
Definition: mlvdec.c:392
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:186
static int read_seek(AVFormatContext *avctx, int stream_index, int64_t timestamp, int flags)
Definition: mlvdec.c:446
static int read_probe(AVProbeData *pd)
Definition: jvdec.c:55
static int probe(AVProbeData *p)
Definition: mlvdec.c:55
static int read_header(AVFormatContext *avctx)
Definition: mlvdec.c:253

Definition at line 470 of file mlvdec.c.