mirror of
https://gitee.com/openharmony/third_party_ffmpeg
synced 2024-11-24 11:49:48 +00:00
move aspect ratio code at the end of the track parsing, fix cathedral-beta2-400extra-crop-avc.mp4
Originally committed as revision 21301 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
5d54c12611
commit
c956611527
@ -925,16 +925,6 @@ static int mov_read_stsd(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
|
||||
st->codec->width = get_be16(pb); /* width */
|
||||
st->codec->height = get_be16(pb); /* height */
|
||||
|
||||
if (st->codec->width != sc->width || st->codec->height != sc->height) {
|
||||
AVRational r = av_d2q(
|
||||
((double)st->codec->height * sc->width) /
|
||||
((double)st->codec->width * sc->height), INT_MAX);
|
||||
if (st->sample_aspect_ratio.num)
|
||||
st->sample_aspect_ratio = av_mul_q(st->sample_aspect_ratio, r);
|
||||
else
|
||||
st->sample_aspect_ratio = r;
|
||||
}
|
||||
|
||||
get_be32(pb); /* horiz resolution */
|
||||
get_be32(pb); /* vert resolution */
|
||||
get_be32(pb); /* data size, always 0 */
|
||||
@ -1662,6 +1652,16 @@ static int mov_read_trak(MOVContext *c, ByteIOContext *pb, MOVAtom atom)
|
||||
} else
|
||||
sc->pb = c->fc->pb;
|
||||
|
||||
if (st->codec->codec_type == CODEC_TYPE_VIDEO &&
|
||||
(st->codec->width != sc->width || st->codec->height != sc->height)) {
|
||||
AVRational r = av_d2q(((double)st->codec->height * sc->width) /
|
||||
((double)st->codec->width * sc->height), INT_MAX);
|
||||
if (st->sample_aspect_ratio.num)
|
||||
st->sample_aspect_ratio = av_mul_q(st->sample_aspect_ratio, r);
|
||||
else
|
||||
st->sample_aspect_ratio = r;
|
||||
}
|
||||
|
||||
switch (st->codec->codec_id) {
|
||||
#if CONFIG_H261_DECODER
|
||||
case CODEC_ID_H261:
|
||||
|
Loading…
Reference in New Issue
Block a user