libavformat/nsvdec.c File Reference

#include "libavutil/attributes.h"
#include "libavutil/mathematics.h"
#include "avformat.h"
#include "internal.h"
#include "riff.h"
#include "libavutil/dict.h"
#include "libavutil/intreadwrite.h"

Go to the source code of this file.

Data Structures

struct  NSVStream
struct  NSVContext

Defines

#define CHECK_SUBSEQUENT_NSVS
#define NSV_MAX_RESYNC   (500*1024)
#define NSV_MAX_RESYNC_TRIES   300
#define T_NSVF   MKTAG('N', 'S', 'V', 'f')
#define T_NSVS   MKTAG('N', 'S', 'V', 's')
#define T_TOC2   MKTAG('T', 'O', 'C', '2')
#define T_NONE   MKTAG('N', 'O', 'N', 'E')
#define T_SUBT   MKTAG('S', 'U', 'B', 'T')
#define T_ASYN   MKTAG('A', 'S', 'Y', 'N')
#define T_KEYF   MKTAG('K', 'E', 'Y', 'F')
#define TB_NSVF   MKBETAG('N', 'S', 'V', 'f')
#define TB_NSVS   MKBETAG('N', 'S', 'V', 's')
#define NSV_ST_VIDEO   0
#define NSV_ST_AUDIO   1
#define NSV_ST_SUBT   2
#define print_tag(str, tag, size)

Enumerations

enum  NSVStatus {
  NSV_UNSYNC, NSV_FOUND_NSVF, NSV_HAS_READ_NSVF, NSV_FOUND_NSVS,
  NSV_HAS_READ_NSVS, NSV_FOUND_BEEF, NSV_GOT_VIDEO, NSV_GOT_AUDIO
}

Functions

static int nsv_read_chunk (AVFormatContext *s, int fill_header)
static int nsv_resync (AVFormatContext *s)
static int nsv_parse_NSVf_header (AVFormatContext *s)
static int nsv_parse_NSVs_header (AVFormatContext *s)
static int nsv_read_header (AVFormatContext *s)
static int nsv_read_packet (AVFormatContext *s, AVPacket *pkt)
static int nsv_read_seek (AVFormatContext *s, int stream_index, int64_t timestamp, int flags)
static int nsv_read_close (AVFormatContext *s)
static int nsv_probe (AVProbeData *p)

Variables

static const AVCodecTag nsv_codec_video_tags []
static const AVCodecTag nsv_codec_audio_tags []
AVInputFormat ff_nsv_demuxer


Define Documentation

#define CHECK_SUBSEQUENT_NSVS

Definition at line 31 of file nsvdec.c.

#define NSV_MAX_RESYNC   (500*1024)

Definition at line 37 of file nsvdec.c.

Referenced by nsv_resync().

#define NSV_MAX_RESYNC_TRIES   300

Definition at line 38 of file nsvdec.c.

Referenced by nsv_read_chunk(), and nsv_read_header().

#define NSV_ST_AUDIO   1

Definition at line 143 of file nsvdec.c.

Referenced by nsv_parse_NSVs_header(), and nsv_read_chunk().

#define NSV_ST_SUBT   2

Definition at line 144 of file nsvdec.c.

#define NSV_ST_VIDEO   0

Definition at line 142 of file nsvdec.c.

Referenced by nsv_parse_NSVs_header(), and nsv_read_chunk().

#define print_tag ( str,
tag,
size   ) 

Value:

av_dlog(NULL, "%s: tag=%c%c%c%c\n", \
            str, tag & 0xff,            \
            (tag >> 8) & 0xff,          \
            (tag >> 16) & 0xff,         \
            (tag >> 24) & 0xff);

Definition at line 219 of file nsvdec.c.

#define T_ASYN   MKTAG('A', 'S', 'Y', 'N')

Definition at line 135 of file nsvdec.c.

#define T_KEYF   MKTAG('K', 'E', 'Y', 'F')

Definition at line 136 of file nsvdec.c.

#define T_NONE   MKTAG('N', 'O', 'N', 'E')

Definition at line 133 of file nsvdec.c.

Referenced by nsv_parse_NSVs_header().

#define T_NSVF   MKTAG('N', 'S', 'V', 'f')

Definition at line 130 of file nsvdec.c.

#define T_NSVS   MKTAG('N', 'S', 'V', 's')

Definition at line 131 of file nsvdec.c.

#define T_SUBT   MKTAG('S', 'U', 'B', 'T')

Definition at line 134 of file nsvdec.c.

#define T_TOC2   MKTAG('T', 'O', 'C', '2')

Definition at line 132 of file nsvdec.c.

#define TB_NSVF   MKBETAG('N', 'S', 'V', 'f')

Definition at line 138 of file nsvdec.c.

Referenced by nsv_resync().

#define TB_NSVS   MKBETAG('N', 'S', 'V', 's')

Definition at line 139 of file nsvdec.c.


Enumeration Type Documentation

enum NSVStatus

Enumerator:
NSV_UNSYNC 
NSV_FOUND_NSVF 
NSV_HAS_READ_NSVF 
NSV_FOUND_NSVS 
NSV_HAS_READ_NSVS 
NSV_FOUND_BEEF 
NSV_GOT_VIDEO 
NSV_GOT_AUDIO 

Definition at line 146 of file nsvdec.c.


Function Documentation

static int nsv_parse_NSVf_header ( AVFormatContext s  )  [static]

Definition at line 272 of file nsvdec.c.

Referenced by nsv_read_header().

static int nsv_parse_NSVs_header ( AVFormatContext s  )  [static]

Definition at line 400 of file nsvdec.c.

Referenced by nsv_read_chunk(), and nsv_read_header().

static int nsv_probe ( AVProbeData p  )  [static]

Definition at line 759 of file nsvdec.c.

static int nsv_read_chunk ( AVFormatContext s,
int  fill_header 
) [static]

Definition at line 557 of file nsvdec.c.

Referenced by nsv_read_header(), and nsv_read_packet().

static int nsv_read_close ( AVFormatContext s  )  [static]

Definition at line 731 of file nsvdec.c.

static int nsv_read_header ( AVFormatContext s  )  [static]

Definition at line 521 of file nsvdec.c.

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

Definition at line 684 of file nsvdec.c.

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

Definition at line 712 of file nsvdec.c.

static int nsv_resync ( AVFormatContext s  )  [static]

Definition at line 227 of file nsvdec.c.

Referenced by nsv_read_chunk(), and nsv_read_header().


Variable Documentation

Initial value:

 {
    .name           = "nsv",
    .long_name      = NULL_IF_CONFIG_SMALL("Nullsoft Streaming Video"),
    .priv_data_size = sizeof(NSVContext),
    .read_probe     = nsv_probe,
    .read_header    = nsv_read_header,
    .read_packet    = nsv_read_packet,
    .read_close     = nsv_read_close,
    .read_seek      = nsv_read_seek,
}

Definition at line 791 of file nsvdec.c.

const AVCodecTag nsv_codec_audio_tags[] [static]

Initial value:

 {
    { CODEC_ID_MP3,       MKTAG('M', 'P', '3', ' ') },
    { CODEC_ID_AAC,       MKTAG('A', 'A', 'C', ' ') },
    { CODEC_ID_AAC,       MKTAG('A', 'A', 'C', 'P') },
    { CODEC_ID_AAC,       MKTAG('V', 'L', 'B', ' ') },
    { CODEC_ID_SPEEX,     MKTAG('S', 'P', 'X', ' ') },
    { CODEC_ID_PCM_U16LE, MKTAG('P', 'C', 'M', ' ') },
    { CODEC_ID_NONE,      0 },
}

Definition at line 206 of file nsvdec.c.

const AVCodecTag nsv_codec_video_tags[] [static]

Initial value:

 {
    { CODEC_ID_VP3, MKTAG('V', 'P', '3', ' ') },
    { CODEC_ID_VP3, MKTAG('V', 'P', '3', '0') },
    { CODEC_ID_VP3, MKTAG('V', 'P', '3', '1') },
    { CODEC_ID_VP5, MKTAG('V', 'P', '5', ' ') },
    { CODEC_ID_VP5, MKTAG('V', 'P', '5', '0') },
    { CODEC_ID_VP6, MKTAG('V', 'P', '6', ' ') },
    { CODEC_ID_VP6, MKTAG('V', 'P', '6', '0') },
    { CODEC_ID_VP6, MKTAG('V', 'P', '6', '1') },
    { CODEC_ID_VP6, MKTAG('V', 'P', '6', '2') },
    { CODEC_ID_VP8, MKTAG('V', 'P', '8', '0') },

    { CODEC_ID_MPEG4, MKTAG('X', 'V', 'I', 'D') }, 
    { CODEC_ID_RAWVIDEO, MKTAG('R', 'G', 'B', '3') },
    { CODEC_ID_NONE, 0 },
}

Definition at line 186 of file nsvdec.c.


Generated on Fri Oct 26 02:48:02 2012 for FFmpeg by  doxygen 1.5.8