26 #include "libavutil/intreadwrite.h"
45 if (!(bytestream2_peek_byte(&p) & 1))
48 if (bytestream2_peek_byte(&p) == 1) {
51 if (bytestream2_peek_byte(&p) ==
'v'){
55 tag = bytestream2_get_le32(&p);
58 }
else if (bytestream2_peek_byte(&p) ==
't') {
69 cid = strtol(acid,
NULL, 16);
76 time_unit = bytestream2_get_le64(&p);
77 spu = bytestream2_get_le64(&p);
78 if (!time_unit || !spu) {
97 }
else if (bytestream2_peek_byte(&p) == 3) {
128 }
else if(t == 0x05589f81){
150 lb = ((*p & 2) << 1) | ((*p >> 6) & 3);
161 .
magic =
"\001video",
165 .granule_is_start = 1,
170 .
magic =
"\001audio",
174 .granule_is_start = 1,
183 .granule_is_start = 1,
188 .
magic =
"\001Direct Show Samples embedded in Ogg",
192 .granule_is_start = 1,
#define AVERROR_INVALIDDATA
Invalid data found when processing input.
const struct ogg_codec ff_ogm_old_codec
Copyright (C) 2005 Michael Ahlberg, Måns Rullgård.
AVCodecContext * codec
Codec context associated with this stream.
void av_log(void *avcl, int level, const char *fmt,...) av_printf_format(3
Send the specified message to the log if the level is less than or equal to the current av_log_level...
static av_always_inline void bytestream2_init(GetByteContext *g, const uint8_t *buf, int buf_size)
static int ogm_header(AVFormatContext *s, int idx)
Copyright (C) 2005 Michael Ahlberg, Måns Rullgård.
static int ogm_dshow_header(AVFormatContext *s, int idx)
const struct ogg_codec ff_ogm_text_codec
enum AVStreamParseType need_parsing
bitstream reader API header.
#define AV_PKT_FLAG_KEY
The packet contains a keyframe.
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
void * priv_data
Format private data.
static av_always_inline void bytestream2_skip(GetByteContext *g, unsigned int size)
int ff_vorbis_stream_comment(AVFormatContext *as, AVStream *st, const uint8_t *buf, int size)
static av_always_inline unsigned int bytestream2_get_buffer(GetByteContext *g, uint8_t *dst, unsigned int size)
static av_always_inline unsigned int bytestream2_get_bytes_left(GetByteContext *g)
const AVCodecTag ff_codec_wav_tags[]
int bit_rate
the average bitrate
const AVCodecTag ff_codec_bmp_tags[]
int width
picture width / height.
AVStream ** streams
A list of all streams in the file.
internal header for RIFF based (de)muxers do NOT include this in end user applications ...
struct ogg_stream * streams
const struct ogg_codec ff_ogm_video_codec
enum AVMediaType codec_type
int sample_rate
samples per second
static int ogm_packet(AVFormatContext *s, int idx)
unsigned int codec_tag
fourcc (LSB first, so "ABCD" -> ('D'<<24) + ('C'<<16) + ('B'<<8) + 'A').
int channels
number of audio channels
const struct ogg_codec ff_ogm_audio_codec