28 #define VP8_HEADER_SIZE 26 38 if (os->
psize < 7 || p[0] != 0x4f)
50 "Unknown OggVP8 version %d.%d\n", p[6], p[7]);
85 int invcnt = !((granule >> 30) & 3);
89 uint64_t
pts = (granule >> 32) - invcnt;
90 uint32_t dist = (granule >> 3) & 0x07ffffff;
115 duration = (last_pkt[0] >> 4) & 1;
116 next_pkt = last_pkt += os->
psize;
117 for (; seg < os->
nsegs; seg++) {
119 duration += (last_pkt[0] >> 4) & 1;
120 last_pkt = next_pkt + os->
segments[seg];
#define AVERROR_INVALIDDATA
Invalid data found when processing input.
Copyright (C) 2005 Michael Ahlberg, Måns Rullgård.
#define AV_LOG_WARNING
Something somehow does not look correct.
enum AVCodecID codec_id
Specific type of the encoded data (the codec used).
AVRational sample_aspect_ratio
sample aspect ratio (0 if unknown)
static uint64_t vp8_gptopts(AVFormatContext *s, int idx, uint64_t granule, int64_t *dts)
enum AVStreamParseType need_parsing
AVStream ** streams
A list of all streams in the file.
static int vp8_packet(AVFormatContext *s, int idx)
#define AV_PKT_FLAG_KEY
The packet contains a keyframe.
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
int ff_vorbis_stream_comment(AVFormatContext *as, AVStream *st, const uint8_t *buf, int size)
enum AVMediaType codec_type
General type of the encoded data.
struct ogg_stream * streams
Rational number (pair of numerator and denominator).
int64_t duration
Decoding: duration of the stream, in stream time base.
int64_t start_time
Decoding: pts of the first frame of the stream in presentation order, in stream time base...
const struct ogg_codec ff_vp8_codec
void * priv_data
Format private data.
AVCodecParameters * codecpar
Codec parameters associated with this stream.
static int vp8_header(AVFormatContext *s, int idx)
#define AV_NOPTS_VALUE
Undefined timestamp value.