mirror of https://git.ffmpeg.org/ffmpeg.git
use the adjustment value present in FLV to crop VP6 video
Originally committed as revision 6770 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
24d3e5a2f2
commit
9e2424ce60
|
@ -64,6 +64,10 @@ static int vp6_parse_header(vp56_context_t *s, uint8_t *buf, int buf_size,
|
||||||
if (16*cols != s->avctx->coded_width ||
|
if (16*cols != s->avctx->coded_width ||
|
||||||
16*rows != s->avctx->coded_height) {
|
16*rows != s->avctx->coded_height) {
|
||||||
avcodec_set_dimensions(s->avctx, 16*cols, 16*rows);
|
avcodec_set_dimensions(s->avctx, 16*cols, 16*rows);
|
||||||
|
if (s->avctx->extradata_size == 1) {
|
||||||
|
s->avctx->width -= s->avctx->extradata[0] >> 4;
|
||||||
|
s->avctx->height -= s->avctx->extradata[0] & 0x0F;
|
||||||
|
}
|
||||||
res = 2;
|
res = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -193,7 +193,12 @@ static int flv_read_packet(AVFormatContext *s, AVPacket *pkt)
|
||||||
case 3: st->codec->codec_id = CODEC_ID_FLASHSV; break;
|
case 3: st->codec->codec_id = CODEC_ID_FLASHSV; break;
|
||||||
case 4:
|
case 4:
|
||||||
st->codec->codec_id = CODEC_ID_VP6F;
|
st->codec->codec_id = CODEC_ID_VP6F;
|
||||||
get_byte(&s->pb); /* width and height adjustment */
|
if (st->codec->extradata_size != 1) {
|
||||||
|
st->codec->extradata_size = 1;
|
||||||
|
st->codec->extradata = av_malloc(1);
|
||||||
|
}
|
||||||
|
/* width and height adjustment */
|
||||||
|
st->codec->extradata[0] = get_byte(&s->pb);
|
||||||
size--;
|
size--;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|
Loading…
Reference in New Issue