33 #define AU_UNKNOWN_SIZE ((uint32_t)(~0))
39 if ((magic == 0x0B8D || magic == 0x0C0D || magic == 0x0C8D) &&
40 p->
buf[2] ==
'S' && p->
buf[3] ==
'O' &&
41 p->
buf[4] ==
'L' && p->
buf[5] == 0)
67 if (magic == 0x0B8D)
return 1;
71 else if (magic == 0x0C8D)
return 1;
79 if (magic == 0x0B8D || !(type &
SOL_STEREO))
return 1;
85 unsigned int magic,
tag;
87 unsigned int id, channels, rate,
type;
94 if (tag !=
MKTAG(
'S',
'O',
'L', 0))
124 #define MAX_SIZE 4096
AVInputFormat ff_sol_demuxer
int64_t avio_skip(AVIOContext *s, int64_t offset)
Skip given number of bytes forward.
#define AV_CH_LAYOUT_STEREO
AVStream * avformat_new_stream(AVFormatContext *s, const AVCodec *c)
Add a new stream to a media file.
static int sol_read_packet(AVFormatContext *s, AVPacket *pkt)
AVCodecID
Identify the syntax and semantics of the bitstream.
unsigned int avio_rl32(AVIOContext *s)
#define NULL_IF_CONFIG_SMALL(x)
Return NULL if CONFIG_SMALL is true, otherwise the argument without modification. ...
int flags
A combination of AV_PKT_FLAG values.
uint64_t channel_layout
Audio channel layout.
int avio_r8(AVIOContext *s)
AVCodecContext * codec
Codec context associated with this stream.
unsigned char * buf
Buffer must have AVPROBE_PADDING_SIZE of extra allocated bytes filled with zero.
audio channel layout utility functions
static int sol_codec_type(int magic, int type)
static int sol_read_header(AVFormatContext *s)
static enum AVCodecID sol_codec_id(int magic, int type)
enum AVMediaType codec_type
int sample_rate
samples per second
AVIOContext * pb
I/O context.
unsigned int codec_tag
fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
static int sol_probe(AVProbeData *p)
This structure contains the data a format has to probe a file.
unsigned int avio_rl16(AVIOContext *s)
#define AV_PKT_FLAG_CORRUPT
The packet content is corrupted.
static int sol_channels(int magic, int type)
int channels
number of audio channels
int avio_feof(AVIOContext *s)
feof() equivalent for AVIOContext.
#define AV_CH_LAYOUT_MONO
#define MKTAG(a, b, c, d)
uint64_t_TMPL AV_WL64 unsigned int_TMPL AV_RL32
This structure stores compressed data.