From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from ffbox0-bg.mplayerhq.hu (ffbox0-bg.ffmpeg.org [79.124.17.100]) by master.gitmailbox.com (Postfix) with ESMTP id 29E7E44040 for ; Fri, 23 Sep 2022 19:36:24 +0000 (UTC) Received: from [127.0.1.1] (localhost [127.0.0.1]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTP id 70D8D68BC12; Fri, 23 Sep 2022 22:36:22 +0300 (EEST) Received: from mail.acc.umu.se (mail.acc.umu.se [130.239.18.156]) by ffbox0-bg.mplayerhq.hu (Postfix) with ESMTPS id 8430668BB88 for ; Fri, 23 Sep 2022 22:36:16 +0300 (EEST) Received: from localhost (localhost.localdomain [127.0.0.1]) by amavisd-new (Postfix) with ESMTP id DDA9744B93 for ; Fri, 23 Sep 2022 21:36:15 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=acc.umu.se; s=mail1; t=1663961775; bh=bQsmO4k9cO6b1CDtIx1FhuWOmW4fiHAp5jNjqLgVms4=; h=Subject:From:To:Date:In-Reply-To:References:From; b=xztFDCarqNWjD9oxl3+lGOQ+qqzoy66x8eVLCVFk1MRrNa/NX2x/wjlvfnIOgcFSP 4nw+LceGB4/jwz/b7xrL8g5jDLxy5wFo2COpnFi1J0McYC5+bGSEhaKoq3k7iYWfXL oFdKJ9Z98MTeeyMKj1QSRIweZmpaAkQWeUZSMoISwA/Bodoxd06S7oUcIaD3sv3VrF ayfOrZBHU8YipcgblaExLujaFwiOGhXtmLlKAkCZp6tKiP0QJvcJF7a1iVFlnb75Sa 2U/8jMifhe++0puUKfeSrLt8eQy/TVSl08U0WrqivmwzpSp7yFOcHOWgmz0Z40mXu0 CtgtQLJOodpyg== Received: from debian.lan (unknown [IPv6:2a00:66c0:a::72c]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: tjoppen) by mail.acc.umu.se (Postfix) with ESMTPSA id B2A4C44B91 for ; Fri, 23 Sep 2022 21:36:14 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=acc.umu.se; s=mail1; t=1663961774; bh=bQsmO4k9cO6b1CDtIx1FhuWOmW4fiHAp5jNjqLgVms4=; h=Subject:From:To:Date:In-Reply-To:References:From; b=QLt8GEU8v7mvjrZUNs7wDiCoePp+ys9ga0Z424ViUEBhb55UowaIpkGI3GsqqmCRZ /66wx1MxjHk75TzH+DgkPhMw/T5qFzdyh36qqg/32hVr/p8pAUg8URdy26i4EVjTa0 stMBZ0rcVuzqT9aVgvSdjRPWD+rN3ax+obLvEuSN3WGX3qGKgxPl7JermMRY7Q3bKm kXdwpYUf3VGcoBZ5D6SSJ1Kwf9PbfHfB9ecG42+wurbhu4Zyv1+mxWVlfJ0Ha1vNAY ywbiDtDLNL8I2UfOftgYs+fkob8vjvdVTJZ+5los3+xo1dysEDvaaEPtXS9WyH7uah fF6So8V2IirQA== Message-ID: <2fd9b269b7e4d327f1158672c86e8b56380b2971.camel@acc.umu.se> From: Tomas =?ISO-8859-1?Q?H=E4rdin?= To: FFmpeg development discussions and patches Date: Fri, 23 Sep 2022 21:36:13 +0200 In-Reply-To: References: Content-Type: multipart/mixed; boundary="=-ptH8+/2i2U98HA3yVtpR" User-Agent: Evolution 3.38.3-1 MIME-Version: 1.0 Subject: Re: [FFmpeg-devel] [PATCH 1/2] avcodec/jpeg2000dec: Set sample aspect ratio before getting buffer X-BeenThere: ffmpeg-devel@ffmpeg.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: FFmpeg development discussions and patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: FFmpeg development discussions and patches Errors-To: ffmpeg-devel-bounces@ffmpeg.org Sender: "ffmpeg-devel" Archived-At: List-Archive: List-Post: --=-ptH8+/2i2U98HA3yVtpR Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit fre 2022-09-23 klockan 20:48 +0200 skrev Andreas Rheinhardt: > Tomas Härdin: > > fre 2022-09-23 klockan 17:40 +0200 skrev Andreas Rheinhardt: > > > That way the SAR will be automatically set on the AVFrame. > > > > > > Signed-off-by: Andreas Rheinhardt > > > > > > --- > > > If I am not mistaken, then the earlier code would set the sar > > > with a delay of one frame on the returned frames in case > > > there is a sar change mid-stream. But I don't have a sample > > > for this. > > > > > >  libavcodec/jpeg2000dec.c | 7 ++++--- > > >  1 file changed, 4 insertions(+), 3 deletions(-) > > > > > > diff --git a/libavcodec/jpeg2000dec.c b/libavcodec/jpeg2000dec.c > > > index 7d9661f29f..c3f2a7aa03 100644 > > > --- a/libavcodec/jpeg2000dec.c > > > +++ b/libavcodec/jpeg2000dec.c > > > @@ -2519,6 +2519,10 @@ static int > > > jpeg2000_decode_frame(AVCodecContext *avctx, AVFrame *picture, > > >      if (ret = jpeg2000_read_main_headers(s)) > > >          goto end; > > >   > > > +    if (s->sar.num && s->sar.den) > > > +        avctx->sample_aspect_ratio = s->sar; > > > +    s->sar.num = s->sar.den = 0; > > > + > > >      /* get picture buffer */ > > >      if ((ret = ff_thread_get_buffer(avctx, picture, 0)) < 0) > > >          goto end; > > > @@ -2547,9 +2551,6 @@ static int > > > jpeg2000_decode_frame(AVCodecContext > > > *avctx, AVFrame *picture, > > >   > > >      if (s->avctx->pix_fmt == AV_PIX_FMT_PAL8) > > >          memcpy(picture->data[1], s->palette, 256 * > > > sizeof(uint32_t)); > > > -    if (s->sar.num && s->sar.den) > > > -        avctx->sample_aspect_ratio = s->sar; > > > -    s->sar.num = s->sar.den = 0; > > > > I suspect not doing this is what caused my simple hack to not work > > when > > ff_thread_get_buffer() was skipped. Looks OK, passes FATE. > > > > FYI: Patch two passes FATE even without patch one. In what way did > your > simple hack not work when ff_thread_get_buffer() is skipped? I had it like patch attached. I suspect the reason it didn't work is because it sets *got_frame. If I run it then I get Assertion frame->buf[0] failed at libavcodec/decode.c:502 Avbruten (SIGABRT) /Tomas --=-ptH8+/2i2U98HA3yVtpR Content-Disposition: attachment; filename="0001-HACKHACK.patch" Content-Type: text/x-patch; name="0001-HACKHACK.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 RnJvbSBlNWNhNWU0NzA1M2I3ZDdiYTEzMGVlYzAxNTc2ZGYwNDExOTZkNWQ0IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZWFzIFJoZWluaGFyZHQgPGFuZHJlYXMucmhlaW5oYXJk dEBvdXRsb29rLmNvbT4KRGF0ZTogRnJpLCAyMyBTZXAgMjAyMiAxNzo0MTo0MSArMDIwMApTdWJq ZWN0OiBbUEFUQ0hdIEhBQ0tIQUNLCgotLS0KIGxpYmF2Y29kZWMvanBlZzIwMDBkZWMuYyB8IDMg KysrCiAxIGZpbGUgY2hhbmdlZCwgMyBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvbGliYXZj b2RlYy9qcGVnMjAwMGRlYy5jIGIvbGliYXZjb2RlYy9qcGVnMjAwMGRlYy5jCmluZGV4IDdkOTY2 MWYyOWYuLjhjYWI0NDBkMTMgMTAwNjQ0Ci0tLSBhL2xpYmF2Y29kZWMvanBlZzIwMDBkZWMuYwor KysgYi9saWJhdmNvZGVjL2pwZWcyMDAwZGVjLmMKQEAgLTI1MTksNiArMjUxOSw3IEBAIHN0YXRp YyBpbnQganBlZzIwMDBfZGVjb2RlX2ZyYW1lKEFWQ29kZWNDb250ZXh0ICphdmN0eCwgQVZGcmFt ZSAqcGljdHVyZSwKICAgICBpZiAocmV0ID0ganBlZzIwMDBfcmVhZF9tYWluX2hlYWRlcnMocykp CiAgICAgICAgIGdvdG8gZW5kOwogCisgICAgaWYgKGF2Y3R4LT5za2lwX2ZyYW1lIDwgQVZESVND QVJEX0FMTCkgewogICAgIC8qIGdldCBwaWN0dXJlIGJ1ZmZlciAqLwogICAgIGlmICgocmV0ID0g ZmZfdGhyZWFkX2dldF9idWZmZXIoYXZjdHgsIHBpY3R1cmUsIDApKSA8IDApCiAgICAgICAgIGdv dG8gZW5kOwpAQCAtMjU0MCw2ICsyNTQxLDcgQEAgc3RhdGljIGludCBqcGVnMjAwMF9kZWNvZGVf ZnJhbWUoQVZDb2RlY0NvbnRleHQgKmF2Y3R4LCBBVkZyYW1lICpwaWN0dXJlLAogICAgIH0KIAog ICAgIGF2Y3R4LT5leGVjdXRlMihhdmN0eCwganBlZzIwMDBfZGVjb2RlX3RpbGUsIHBpY3R1cmUs IE5VTEwsIHMtPm51bVh0aWxlcyAqIHMtPm51bVl0aWxlcyk7CisgICAgfQogCiAgICAganBlZzIw MDBfZGVjX2NsZWFudXAocyk7CiAKQEAgLTI1ODYsNCArMjU4OCw1IEBAIGNvbnN0IEZGQ29kZWMg ZmZfanBlZzIwMDBfZGVjb2RlciA9IHsKICAgICAucC5wcml2X2NsYXNzICAgICA9ICZqcGVnMjAw MF9jbGFzcywKICAgICAucC5tYXhfbG93cmVzICAgICA9IDUsCiAgICAgLnAucHJvZmlsZXMgICAg ICAgPSBOVUxMX0lGX0NPTkZJR19TTUFMTChmZl9qcGVnMjAwMF9wcm9maWxlcyksCisgICAgLmNh cHNfaW50ZXJuYWwgICAgPSBGRl9DT0RFQ19DQVBfU0tJUF9GUkFNRV9GSUxMX1BBUkFNLAogfTsK LS0gCjIuMzAuMgoK --=-ptH8+/2i2U98HA3yVtpR Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org with subject "unsubscribe". --=-ptH8+/2i2U98HA3yVtpR--