|
|
@ -230,6 +230,7 @@ static int mpc8_read_header(AVFormatContext *s) |
|
|
|
AVIOContext *pb = s->pb; |
|
|
|
AVIOContext *pb = s->pb; |
|
|
|
AVStream *st; |
|
|
|
AVStream *st; |
|
|
|
int tag = 0, ret; |
|
|
|
int tag = 0, ret; |
|
|
|
|
|
|
|
int channels; |
|
|
|
int64_t size, pos; |
|
|
|
int64_t size, pos; |
|
|
|
|
|
|
|
|
|
|
|
c->header_pos = avio_tell(pb); |
|
|
|
c->header_pos = avio_tell(pb); |
|
|
@ -273,7 +274,8 @@ static int mpc8_read_header(AVFormatContext *s) |
|
|
|
if ((ret = ff_get_extradata(s, st->codecpar, pb, 2)) < 0) |
|
|
|
if ((ret = ff_get_extradata(s, st->codecpar, pb, 2)) < 0) |
|
|
|
return ret; |
|
|
|
return ret; |
|
|
|
|
|
|
|
|
|
|
|
st->codecpar->channels = (st->codecpar->extradata[1] >> 4) + 1; |
|
|
|
channels = (st->codecpar->extradata[1] >> 4) + 1; |
|
|
|
|
|
|
|
st->codecpar->ch_layout.nb_channels = channels; |
|
|
|
st->codecpar->sample_rate = mpc8_rate[st->codecpar->extradata[0] >> 5]; |
|
|
|
st->codecpar->sample_rate = mpc8_rate[st->codecpar->extradata[0] >> 5]; |
|
|
|
avpriv_set_pts_info(st, 64, 1152 << (st->codecpar->extradata[1]&3)*2, st->codecpar->sample_rate); |
|
|
|
avpriv_set_pts_info(st, 64, 1152 << (st->codecpar->extradata[1]&3)*2, st->codecpar->sample_rate); |
|
|
|
st->start_time = 0; |
|
|
|
st->start_time = 0; |
|
|
|