Libav
Data Structures | Macros | Enumerations | Functions | Variables
iff.c File Reference

IFF file demuxer by Jaikrishnan Menon for more information on the .iff file format, visit: http://wiki.multimedia.cx/index.php?title=IFF. More...

#include <inttypes.h>
#include "libavutil/channel_layout.h"
#include "libavutil/intreadwrite.h"
#include "libavutil/dict.h"
#include "avformat.h"
#include "internal.h"

Go to the source code of this file.

Data Structures

struct  IffDemuxContext
 

Macros

#define ID_8SVX   MKTAG('8','S','V','X')
 
#define ID_VHDR   MKTAG('V','H','D','R')
 
#define ID_ATAK   MKTAG('A','T','A','K')
 
#define ID_RLSE   MKTAG('R','L','S','E')
 
#define ID_CHAN   MKTAG('C','H','A','N')
 
#define ID_PBM   MKTAG('P','B','M',' ')
 
#define ID_ILBM   MKTAG('I','L','B','M')
 
#define ID_BMHD   MKTAG('B','M','H','D')
 
#define ID_CMAP   MKTAG('C','M','A','P')
 
#define ID_FORM   MKTAG('F','O','R','M')
 
#define ID_ANNO   MKTAG('A','N','N','O')
 
#define ID_AUTH   MKTAG('A','U','T','H')
 
#define ID_CHRS   MKTAG('C','H','R','S')
 
#define ID_COPYRIGHT   MKTAG('(','c',')',' ')
 
#define ID_CSET   MKTAG('C','S','E','T')
 
#define ID_FVER   MKTAG('F','V','E','R')
 
#define ID_NAME   MKTAG('N','A','M','E')
 
#define ID_TEXT   MKTAG('T','E','X','T')
 
#define ID_BODY   MKTAG('B','O','D','Y')
 
#define ID_ANNO   MKTAG('A','N','N','O')
 
#define LEFT   2
 
#define RIGHT   4
 
#define STEREO   6
 

Enumerations

enum  svx8_compression_type { COMP_NONE, COMP_FIB, COMP_EXP }
 
enum  bitmap_compression_type { BITMAP_RAW, BITMAP_BYTERUN1 }
 

Functions

static int get_metadata (AVFormatContext *s, const char *const tag, const unsigned data_size)
 
static int iff_probe (AVProbeData *p)
 
static int iff_read_header (AVFormatContext *s)
 
static int iff_read_packet (AVFormatContext *s, AVPacket *pkt)
 

Variables

AVInputFormat ff_iff_demuxer
 

Detailed Description

IFF file demuxer by Jaikrishnan Menon for more information on the .iff file format, visit: http://wiki.multimedia.cx/index.php?title=IFF.

Definition in file iff.c.

Macro Definition Documentation

§ ID_8SVX

#define ID_8SVX   MKTAG('8','S','V','X')

Definition at line 40 of file iff.c.

Referenced by iff_probe().

§ ID_VHDR

#define ID_VHDR   MKTAG('V','H','D','R')

Definition at line 41 of file iff.c.

Referenced by iff_read_header().

§ ID_ATAK

#define ID_ATAK   MKTAG('A','T','A','K')

Definition at line 42 of file iff.c.

§ ID_RLSE

#define ID_RLSE   MKTAG('R','L','S','E')

Definition at line 43 of file iff.c.

§ ID_CHAN

#define ID_CHAN   MKTAG('C','H','A','N')

Definition at line 44 of file iff.c.

Referenced by iff_read_header().

§ ID_PBM

#define ID_PBM   MKTAG('P','B','M',' ')

Definition at line 45 of file iff.c.

Referenced by iff_probe().

§ ID_ILBM

#define ID_ILBM   MKTAG('I','L','B','M')

Definition at line 46 of file iff.c.

Referenced by iff_probe().

§ ID_BMHD

#define ID_BMHD   MKTAG('B','M','H','D')

Definition at line 47 of file iff.c.

Referenced by iff_read_header().

§ ID_CMAP

#define ID_CMAP   MKTAG('C','M','A','P')

Definition at line 48 of file iff.c.

Referenced by iff_read_header().

§ ID_FORM

#define ID_FORM   MKTAG('F','O','R','M')

Definition at line 50 of file iff.c.

Referenced by iff_probe().

§ ID_ANNO [1/2]

#define ID_ANNO   MKTAG('A','N','N','O')

Definition at line 60 of file iff.c.

Referenced by iff_read_header().

§ ID_AUTH

#define ID_AUTH   MKTAG('A','U','T','H')

Definition at line 52 of file iff.c.

Referenced by iff_read_header().

§ ID_CHRS

#define ID_CHRS   MKTAG('C','H','R','S')

Definition at line 53 of file iff.c.

§ ID_COPYRIGHT

#define ID_COPYRIGHT   MKTAG('(','c',')',' ')

Definition at line 54 of file iff.c.

Referenced by iff_read_header().

§ ID_CSET

#define ID_CSET   MKTAG('C','S','E','T')

Definition at line 55 of file iff.c.

§ ID_FVER

#define ID_FVER   MKTAG('F','V','E','R')

Definition at line 56 of file iff.c.

§ ID_NAME

#define ID_NAME   MKTAG('N','A','M','E')

Definition at line 57 of file iff.c.

Referenced by iff_read_header().

§ ID_TEXT

#define ID_TEXT   MKTAG('T','E','X','T')

Definition at line 58 of file iff.c.

Referenced by iff_read_header().

§ ID_BODY

#define ID_BODY   MKTAG('B','O','D','Y')

Definition at line 59 of file iff.c.

Referenced by iff_read_header().

§ ID_ANNO [2/2]

#define ID_ANNO   MKTAG('A','N','N','O')

Definition at line 60 of file iff.c.

§ LEFT

#define LEFT   2

Definition at line 62 of file iff.c.

§ RIGHT

#define RIGHT   4

Definition at line 63 of file iff.c.

§ STEREO

#define STEREO   6

Definition at line 64 of file iff.c.

Enumeration Type Documentation

§ svx8_compression_type

Enumerator
COMP_NONE 
COMP_FIB 
COMP_EXP 

Definition at line 66 of file iff.c.

§ bitmap_compression_type

Enumerator
BITMAP_RAW 
BITMAP_BYTERUN1 

Definition at line 72 of file iff.c.

Function Documentation

§ get_metadata()

static int get_metadata ( AVFormatContext s,
const char *const  tag,
const unsigned  data_size 
)
static

Definition at line 85 of file iff.c.

Referenced by iff_read_header().

§ iff_probe()

static int iff_probe ( AVProbeData p)
static

Definition at line 103 of file iff.c.

§ iff_read_header()

static int iff_read_header ( AVFormatContext s)
static

Definition at line 113 of file iff.c.

§ iff_read_packet()

static int iff_read_packet ( AVFormatContext s,
AVPacket pkt 
)
static

Definition at line 276 of file iff.c.

Variable Documentation

§ ff_iff_demuxer

AVInputFormat ff_iff_demuxer
Initial value:
= {
.name = "iff",
.long_name = NULL_IF_CONFIG_SMALL("IFF (Interchange File Format)"),
.priv_data_size = sizeof(IffDemuxContext),
}
static int iff_probe(AVProbeData *p)
Definition: iff.c:103
static int iff_read_header(AVFormatContext *s)
Definition: iff.c:113
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
Definition: internal.h:145
static int read_probe(AVProbeData *pd)
Definition: jvdec.c:55
static int iff_read_packet(AVFormatContext *s, AVPacket *pkt)
Definition: iff.c:276
static int read_header(FFV1Context *f)
Definition: ffv1dec.c:544
static int read_packet(AVFormatContext *ctx, AVPacket *pkt)
Definition: libcdio.c:114

Definition at line 298 of file iff.c.