32 int version_major, version_minor;
33 int64_t start_num, start_den, start_granule;
42 if (!strncmp(buf,
"fishead", 8)) {
47 version_minor =
AV_RL16(buf+10);
49 if (version_major != 3) {
51 version_major, version_minor);
65 av_reduce(&start_time, &base_den, start_num, start_den, INT_MAX);
70 }
else if (!strncmp(buf,
"fisbone", 8)) {
75 start_granule =
AV_RL64(buf+36);
76 if (target_idx >= 0 && start_granule != -1) {
Copyright (C) 2005 Michael Ahlberg, Måns Rullgård.
#define AV_LOG_WARNING
Something somehow does not look correct.
static int skeleton_header(AVFormatContext *s, int idx)
Opaque data information usually continuous.
const struct ogg_codec ff_skeleton_codec
static int64_t start_time
void av_log(void *avcl, int level, const char *fmt,...)
AVCodecContext * codec
codec context
int av_reduce(int *dst_num, int *dst_den, int64_t num, int64_t den, int64_t max)
Reduce a fraction.
struct ogg_stream * streams
static int ogg_find_stream(struct ogg *ogg, int serial)
enum AVMediaType codec_type
int64_t start_time
Decoding: pts of the first frame of the stream, in stream time base.
void * priv_data
Format private data.
static uint64_t ogg_gptopts(AVFormatContext *s, int i, uint64_t gp, int64_t *dts)