Libav 0.7.1
Data Structures | Defines | Typedefs | Functions | Variables
libavformat/avidec.c File Reference
#include <strings.h>
#include "libavutil/intreadwrite.h"
#include "libavutil/bswap.h"
#include "libavutil/dict.h"
#include "avformat.h"
#include "avi.h"
#include "dv.h"
#include "riff.h"
#include <assert.h>

Go to the source code of this file.

Data Structures

struct  AVIStream
struct  AVIContext

Defines

#define MAX_ODML_DEPTH   1000
#define print_tag(str, tag, size)

Typedefs

typedef struct AVIStream AVIStream

Functions

static int avi_load_index (AVFormatContext *s)
static int guess_ni_flag (AVFormatContext *s)
static int get_duration (AVIStream *ast, int len)
static int get_riff (AVFormatContext *s, AVIOContext *pb)
static int read_braindead_odml_indx (AVFormatContext *s, int frame_num)
static void clean_index (AVFormatContext *s)
static int avi_read_tag (AVFormatContext *s, AVStream *st, uint32_t tag, uint32_t size)
static void avi_read_info (AVFormatContext *s, uint64_t end)
static void avi_metadata_creation_time (AVDictionary **metadata, char *date)
static void avi_read_nikon (AVFormatContext *s, uint64_t end)
static int avi_read_header (AVFormatContext *s, AVFormatParameters *ap)
static int read_gab2_sub (AVStream *st, AVPacket *pkt)
static AVStreamget_subtitle_pkt (AVFormatContext *s, AVStream *next_st, AVPacket *pkt)
static int get_stream_idx (int *d)
static int avi_read_packet (AVFormatContext *s, AVPacket *pkt)
static int avi_read_idx1 (AVFormatContext *s, int size)
static void seek_subtitle (AVStream *st, AVStream *st2, int64_t timestamp)
static int avi_read_seek (AVFormatContext *s, int stream_index, int64_t timestamp, int flags)
static int avi_read_close (AVFormatContext *s)
static int avi_probe (AVProbeData *p)

Variables

static const char avi_headers [][8]
static const char months [12][4]
AVInputFormat ff_avi_demuxer

Define Documentation

#define MAX_ODML_DEPTH   1000

Definition at line 69 of file avidec.c.

Referenced by read_braindead_odml_indx().

#define print_tag (   str,
  tag,
  size 
)
Value:
av_dlog(NULL, "%s: tag=%c%c%c%c size=0x%x\n",       \
           str, tag & 0xff,                             \
           (tag >> 8) & 0xff,                           \
           (tag >> 16) & 0xff,                          \
           (tag >> 24) & 0xff,                          \
           size)

Definition at line 84 of file avidec.c.

Referenced by avi_read_header().


Typedef Documentation

typedef struct AVIStream AVIStream

Function Documentation

static int avi_load_index ( AVFormatContext s) [static]

Definition at line 1194 of file avidec.c.

Referenced by avi_read_header(), and avi_read_seek().

static void avi_metadata_creation_time ( AVDictionary **  metadata,
char *  date 
) [static]

Definition at line 275 of file avidec.c.

Referenced by avi_read_header().

static int avi_probe ( AVProbeData p) [static]

Definition at line 1353 of file avidec.c.

static int avi_read_close ( AVFormatContext s) [static]

Definition at line 1330 of file avidec.c.

static int avi_read_header ( AVFormatContext s,
AVFormatParameters ap 
) [static]

Definition at line 330 of file avidec.c.

static int avi_read_idx1 ( AVFormatContext s,
int  size 
) [static]

Definition at line 1115 of file avidec.c.

Referenced by avi_load_index().

static void avi_read_info ( AVFormatContext s,
uint64_t  end 
) [static]

Definition at line 263 of file avidec.c.

Referenced by avi_read_header().

static void avi_read_nikon ( AVFormatContext s,
uint64_t  end 
) [static]

Definition at line 294 of file avidec.c.

Referenced by avi_read_header().

static int avi_read_packet ( AVFormatContext s,
AVPacket pkt 
) [static]

Definition at line 839 of file avidec.c.

static int avi_read_seek ( AVFormatContext s,
int  stream_index,
int64_t  timestamp,
int  flags 
) [static]

Definition at line 1246 of file avidec.c.

static int avi_read_tag ( AVFormatContext s,
AVStream st,
uint32_t  tag,
uint32_t  size 
) [static]

Definition at line 242 of file avidec.c.

Referenced by avi_read_header(), and avi_read_info().

static void clean_index ( AVFormatContext s) [static]

Definition at line 216 of file avidec.c.

Referenced by avi_read_header().

static int get_duration ( AVIStream ast,
int  len 
) [inline, static]

Definition at line 92 of file avidec.c.

Referenced by avi_read_idx1(), and read_braindead_odml_indx().

static int get_riff ( AVFormatContext s,
AVIOContext pb 
) [static]

Definition at line 101 of file avidec.c.

Referenced by avi_read_header().

static int get_stream_idx ( int *  d) [static]

Definition at line 830 of file avidec.c.

static AVStream* get_subtitle_pkt ( AVFormatContext s,
AVStream next_st,
AVPacket pkt 
) [static]

Definition at line 797 of file avidec.c.

static int guess_ni_flag ( AVFormatContext s) [static]

Definition at line 1163 of file avidec.c.

Referenced by avi_read_header().

static int read_braindead_odml_indx ( AVFormatContext s,
int  frame_num 
) [static]

Definition at line 125 of file avidec.c.

Referenced by avi_read_header().

static int read_gab2_sub ( AVStream st,
AVPacket pkt 
) [static]

Definition at line 749 of file avidec.c.

static void seek_subtitle ( AVStream st,
AVStream st2,
int64_t  timestamp 
) [static]

Definition at line 1236 of file avidec.c.

Referenced by avi_read_seek().


Variable Documentation

const char avi_headers[][8] [static]
Initial value:
 {
    { 'R', 'I', 'F', 'F',    'A', 'V', 'I', ' ' },
    { 'R', 'I', 'F', 'F',    'A', 'V', 'I', 'X' },
    { 'R', 'I', 'F', 'F',    'A', 'V', 'I', 0x19},
    { 'O', 'N', '2', ' ',    'O', 'N', '2', 'f' },
    { 'R', 'I', 'F', 'F',    'A', 'M', 'V', ' ' },
    { 0 }
}

Definition at line 72 of file avidec.c.

Referenced by avi_probe(), and get_riff().

Initial value:

Definition at line 1366 of file avidec.c.

const char months[12][4] [static]
Initial value:
 { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                    "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" }

Definition at line 272 of file avidec.c.

Referenced by avi_metadata_creation_time().