libavformat/nuv.c File Reference
#include "libavutil/channel_layout.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/intfloat.h"
#include "avformat.h"
#include "internal.h"
#include "riff.h"
Include dependency graph for libavformat/nuv.c:

Go to the source code of this file.

Data Structures

struct  NUVContext
 

Macros

#define PKTSIZE(s)   (s & 0xffffff)
 little macro to sanitize packet size More...
 
#define HDRSIZE   12
 

Enumerations

enum  nuv_frametype {
  NUV_VIDEO = 'V', NUV_EXTRADATA = 'D', NUV_AUDIO = 'A', NUV_SEEKP = 'R',
  NUV_MYTHEXT = 'X'
}
 

Functions

static int nuv_probe (AVProbeData *p)
 
static int get_codec_data (AVIOContext *pb, AVStream *vst, AVStream *ast, int myth)
 read until we found all data needed for decoding More...
 
static int nuv_header (AVFormatContext *s)
 
static int nuv_packet (AVFormatContext *s, AVPacket *pkt)
 
static int nuv_resync (AVFormatContext *s, int64_t pos_limit)
 looks for the string RTjjjjjjjjjj in the stream too resync reading More...
 
static int64_t nuv_read_dts (AVFormatContext *s, int stream_index, int64_t *ppos, int64_t pos_limit)
 attempts to read a timestamp from stream at the given stream position More...
 

Variables

static const AVCodecTag nuv_audio_tags []
 
AVInputFormat ff_nuv_demuxer
 

Macro Definition Documentation

#define HDRSIZE   12

Definition at line 232 of file libavformat/nuv.c.

Referenced by nuv_packet(), and nuv_read_dts().

#define PKTSIZE (   s)    (s & 0xffffff)

little macro to sanitize packet size

Definition at line 59 of file libavformat/nuv.c.

Referenced by get_codec_data(), nuv_packet(), and nuv_read_dts().

Enumeration Type Documentation

Enumerator
NUV_VIDEO 
NUV_EXTRADATA 
NUV_AUDIO 
NUV_SEEKP 
NUV_MYTHEXT 

Definition at line 41 of file libavformat/nuv.c.

Function Documentation

static int get_codec_data ( AVIOContext pb,
AVStream vst,
AVStream ast,
int  myth 
)
static

read until we found all data needed for decoding

Parameters
vstvideo stream of which to change parameters
astvideo stream of which to change parameters
mythset if this is a MythTVVideo format file
Returns
0 or AVERROR code

Definition at line 68 of file libavformat/nuv.c.

Referenced by nuv_header().

static int nuv_header ( AVFormatContext s)
static

Definition at line 154 of file libavformat/nuv.c.

static int nuv_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 234 of file libavformat/nuv.c.

static int nuv_probe ( AVProbeData p)
static

Definition at line 49 of file libavformat/nuv.c.

static int64_t nuv_read_dts ( AVFormatContext s,
int  stream_index,
int64_t *  ppos,
int64_t  pos_limit 
)
static

attempts to read a timestamp from stream at the given stream position

Returns
timestamp if successful and AV_NOPTS_VALUE if failure

Definition at line 329 of file libavformat/nuv.c.

static int nuv_resync ( AVFormatContext s,
int64_t  pos_limit 
)
static

looks for the string RTjjjjjjjjjj in the stream too resync reading

Returns
1 if the syncword is found 0 otherwise.

Definition at line 312 of file libavformat/nuv.c.

Referenced by nuv_read_dts().

Variable Documentation

AVInputFormat ff_nuv_demuxer
Initial value:
= {
.name = "nuv",
.long_name = NULL_IF_CONFIG_SMALL("NuppelVideo"),
.priv_data_size = sizeof(NUVContext),
.read_timestamp = nuv_read_dts,
}
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
static int64_t nuv_read_dts(AVFormatContext *s, int stream_index, int64_t *ppos, int64_t pos_limit)
attempts to read a timestamp from stream at the given stream position
static int nuv_probe(AVProbeData *p)
static int read_probe(AVProbeData *pd)
static int read_header(FFV1Context *f)
Definition: ffv1dec.c:517
static int read_packet(AVFormatContext *ctx, AVPacket *pkt)
Definition: libcdio.c:114
#define AVFMT_GENERIC_INDEX
Use generic index building code.
Definition: avformat.h:353
static int flags
Definition: cpu.c:23
static int nuv_packet(AVFormatContext *s, AVPacket *pkt)
static int nuv_header(AVFormatContext *s)

Definition at line 383 of file libavformat/nuv.c.

const AVCodecTag nuv_audio_tags[]
static
Initial value:
= {
{ AV_CODEC_ID_PCM_S16LE, MKTAG('R', 'A', 'W', 'A') },
{ AV_CODEC_ID_MP3, MKTAG('L', 'A', 'M', 'E') },
}
preferred ID for decoding MPEG audio layer 1, 2 or 3
#define MKTAG(a, b, c, d)
Definition: common.h:282

Definition at line 29 of file libavformat/nuv.c.