FFmpeg
Data Structures | Macros | Functions | Variables
mlvdec.c File Reference
#include <time.h>
#include "libavutil/imgutils.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/rational.h"
#include "avformat.h"
#include "demux.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 (const AVProbeData *p)
 
static int check_file_header (AVIOContext *pb, uint64_t guid)
 
static void read_string (AVFormatContext *avctx, AVIOContext *pb, const char *tag, unsigned 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

const FFInputFormat 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 37 of file mlvdec.c.

◆ MLV_VIDEO_CLASS_RAW

#define MLV_VIDEO_CLASS_RAW   1

Definition at line 39 of file mlvdec.c.

◆ MLV_VIDEO_CLASS_YUV

#define MLV_VIDEO_CLASS_YUV   2

Definition at line 40 of file mlvdec.c.

◆ MLV_VIDEO_CLASS_JPEG

#define MLV_VIDEO_CLASS_JPEG   3

Definition at line 41 of file mlvdec.c.

◆ MLV_VIDEO_CLASS_H264

#define MLV_VIDEO_CLASS_H264   4

Definition at line 42 of file mlvdec.c.

◆ MLV_AUDIO_CLASS_WAV

#define MLV_AUDIO_CLASS_WAV   1

Definition at line 44 of file mlvdec.c.

◆ MLV_CLASS_FLAG_DELTA

#define MLV_CLASS_FLAG_DELTA   0x40

Definition at line 46 of file mlvdec.c.

◆ MLV_CLASS_FLAG_LZMA

#define MLV_CLASS_FLAG_LZMA   0x80

Definition at line 47 of file mlvdec.c.

Function Documentation

◆ probe()

static int probe ( const AVProbeData p)
static

Definition at line 56 of file mlvdec.c.

◆ check_file_header()

static int check_file_header ( AVIOContext pb,
uint64_t  guid 
)
static

Definition at line 65 of file mlvdec.c.

Referenced by read_header().

◆ read_string()

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

Definition at line 81 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 99 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 104 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 109 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 114 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 119 of file mlvdec.c.

Referenced by read_header().

◆ read_header()

static int read_header ( AVFormatContext avctx)
static

Definition at line 259 of file mlvdec.c.

◆ read_packet()

static int read_packet ( AVFormatContext avctx,
AVPacket pkt 
)
static

Definition at line 402 of file mlvdec.c.

◆ read_seek()

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

Definition at line 468 of file mlvdec.c.

◆ read_close()

static int read_close ( AVFormatContext s)
static

Definition at line 482 of file mlvdec.c.

Variable Documentation

◆ ff_mlv_demuxer

const FFInputFormat ff_mlv_demuxer
Initial value:
= {
.p.name = "mlv",
.p.long_name = NULL_IF_CONFIG_SMALL("Magic Lantern Video (MLV)"),
.priv_data_size = sizeof(MlvContext),
.flags_internal = FF_INFMT_FLAG_INIT_CLEANUP,
}

Definition at line 491 of file mlvdec.c.

MlvContext
Definition: mlvdec.c:49
read_header
static int read_header(AVFormatContext *avctx)
Definition: mlvdec.c:259
read_seek
static int read_seek(AVFormatContext *avctx, int stream_index, int64_t timestamp, int flags)
Definition: mlvdec.c:468
FF_INFMT_FLAG_INIT_CLEANUP
#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
read_close
static int read_close(AVFormatContext *s)
Definition: mlvdec.c:482
read_packet
static int read_packet(AVFormatContext *avctx, AVPacket *pkt)
Definition: mlvdec.c:402
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:106
read_probe
static int read_probe(const AVProbeData *p)
Definition: cdg.c:30
probe
static int probe(const AVProbeData *p)
Definition: mlvdec.c:56