39 #define MM_PREAMBLE_SIZE 6
41 #define MM_TYPE_HEADER 0x0
42 #define MM_TYPE_INTER 0x5
43 #define MM_TYPE_INTRA 0x8
44 #define MM_TYPE_INTRA_HH 0xc
45 #define MM_TYPE_INTER_HH 0xd
46 #define MM_TYPE_INTRA_HHV 0xe
47 #define MM_TYPE_INTER_HHV 0xf
48 #define MM_TYPE_AUDIO 0x15
49 #define MM_TYPE_PALETTE 0x31
51 #define MM_HEADER_LEN_V 0x16
52 #define MM_HEADER_LEN_AV 0x18
54 #define MM_PALETTE_COUNT 128
55 #define MM_PALETTE_SIZE (MM_PALETTE_COUNT*3)
75 if (!fps || fps > 60 || !w || w > 2048 || !h || h > 2048)
78 if (!type || type > 0x31)
153 length =
AV_RL16(&preamble[2]);
#define AVERROR_INVALIDDATA
Invalid data found when processing input.
enum AVCodecID codec_id
Specific type of the encoded data (the codec used).
int64_t avio_skip(AVIOContext *s, int64_t offset)
Skip given number of bytes forward.
AVInputFormat ff_mm_demuxer
uint64_t_TMPL AV_WL64 unsigned int_TMPL AV_WL32 unsigned int_TMPL AV_WL24 unsigned int_TMPL AV_RL16
static int read_header(AVFormatContext *s)
AVStream * avformat_new_stream(AVFormatContext *s, const AVCodec *c)
Add a new stream to a media file.
#define MM_TYPE_INTRA_HHV
uint64_t channel_layout
Audio only.
int avio_read(AVIOContext *s, unsigned char *buf, int size)
Read size bytes from AVIOContext into buf.
int av_new_packet(AVPacket *pkt, int size)
Allocate the payload of a packet and initialize its fields with default values.
#define MM_TYPE_INTER_HHV
unsigned int avio_rl32(AVIOContext *s)
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
enum AVMediaType codec_type
General type of the encoded data.
int buf_size
Size of buf except extra allocated bytes.
unsigned char * buf
Buffer must have AVPROBE_PADDING_SIZE of extra allocated bytes filled with zero.
static int read_packet(AVFormatContext *s, AVPacket *pkt)
audio channel layout utility functions
#define AV_LOG_INFO
Standard information.
AVIOContext * pb
I/O context.
This structure contains the data a format has to probe a file.
int sample_rate
Audio only.
unsigned int avio_rl16(AVIOContext *s)
void * priv_data
Format private data.
static int probe(AVProbeData *p)
AVCodecParameters * codecpar
Codec parameters associated with this stream.
uint32_t codec_tag
Additional information about the codec (corresponds to the AVI FOURCC).
#define AV_CH_LAYOUT_MONO
uint64_t_TMPL AV_WL64 unsigned int_TMPL AV_RL32
This structure stores compressed data.
int64_t pts
Presentation timestamp in AVStream->time_base units; the time at which the decompressed packet will b...