if (!memcmp(probe_packet->buf + 4, "00052200", 8))
return AVPROBE_SCORE_MAX;
- return AVPROBE_SCORE_MAX/2;
+ return AVPROBE_SCORE_EXTENSION;
}
static void add_metadata(AVFormatContext *s, uint32_t tag,
header_size = avio_rb32(s->pb);
st->codec->codec_type = AVMEDIA_TYPE_AUDIO;
- st->codec->codec_id = CODEC_ID_TWINVQ;
+ st->codec->codec_id = AV_CODEC_ID_TWINVQ;
st->start_time = 0;
do {
return -1;
}
c->frame_bit_len = st->codec->bit_rate*size/st->codec->sample_rate;
- avpriv_set_pts_info(st, 64, 1, st->codec->sample_rate);
+ avpriv_set_pts_info(st, 64, size, st->codec->sample_rate);
/* put first 12 bytes of COMM chunk in extradata */
if (!(st->codec->extradata = av_malloc(12 + FF_INPUT_BUFFER_PADDING_SIZE)))
int ret;
int size = (c->frame_bit_len - c->remaining_bits + 7)>>3;
- pkt->pos = avio_tell(s->pb);
- pkt->stream_index = 0;
-
if (av_new_packet(pkt, size+2) < 0)
return AVERROR(EIO);
+ pkt->pos = avio_tell(s->pb);
+ pkt->stream_index = 0;
+ pkt->duration = 1;
+
pkt->data[0] = 8 - c->remaining_bits; // Number of bits to skip
pkt->data[1] = c->last_frame_bits;
ret = avio_read(s->pb, pkt->data+2, size);