[libav-devel] [RFC] [PATCH] fate: Add --skip-tests configure option for omitting FATE tests

2016-10-06 Thread Diego Biurrun
This can be useful in known-broken scenarios like miscompilation
by legacy compilers and similar.
---

Yeah, one could come up with more elaborate solutions, but this already
works and we have cases where it could be useful right away...

 configure  | 3 +++
 tests/Makefile | 2 ++
 2 files changed, 5 insertions(+)

diff --git a/configure b/configure
index 7d4a4ab..be27c1a 100755
--- a/configure
+++ b/configure
@@ -347,6 +347,7 @@ Developer options (useful when working on Libav itself):
   --random-seed=VALUE  seed value for --enable/disable-random
   --disable-valgrind-backtrace do not print a backtrace under Valgrind
(only applies to --disable-optimizations builds)
+  --skip-tests=TESTS   whitespace-separated list of FATE tests to skip
 
 NOTE: Object files are built at the place where configure is launched.
 EOF
@@ -1808,6 +1809,7 @@ CMDLINE_SET="
 pkg_config_flags
 random_seed
 samples
+skip_tests
 sysinclude
 sysroot
 target_exec
@@ -5313,6 +5315,7 @@ SLIB_INSTALL_EXTRA_LIB=${SLIB_INSTALL_EXTRA_LIB}
 SLIB_INSTALL_EXTRA_SHLIB=${SLIB_INSTALL_EXTRA_SHLIB}
 VERSION_SCRIPT_POSTPROCESS_CMD=${VERSION_SCRIPT_POSTPROCESS_CMD}
 SAMPLES:=${samples:-\$(LIBAV_SAMPLES)}
+SKIP_TESTS=$skip_tests
 EOF
 
 get_version(){
diff --git a/tests/Makefile b/tests/Makefile
index 36a3a72..4bcdc4a 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -142,6 +142,8 @@ endif
 
 FATE_UTILS = base64 tiny_psnr
 
+FATE := $(filter-out $(SKIP_TESTS),$(FATE))
+
 fate: $(FATE)
 
 $(FATE): $(FATE_UTILS:%=tests/%$(HOSTEXESUF))
-- 
2.7.3

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH 1/2] hevc: Add SSE2 and AVX IDCT

2016-10-06 Thread Diego Biurrun
On Wed, Oct 05, 2016 at 02:04:31PM +0200, Alexandra Hájková wrote:
> --- a/libavcodec/x86/hevc_idct.asm
> +++ b/libavcodec/x86/hevc_idct.asm
> @@ -74,34 +286,578 @@ cglobal hevc_idct_%1x%1_dc_%2, 1, 2, 1, coeff, tmp
>  
>  INIT_XMM sse2
> +IDCT_DC_NL  8,  %1
> +IDCT_DC16,  4,  %1
> +IDCT_DC32, 16,  %1
> +%if %1 == 8
> +TRANSPOSE_8x8
> +%if ARCH_X86_64
> +TRANSPOSE_16x16
> +TRANSPOSE_32x32
> +%endif
> +%endif
> +%define transpose_8x8 hevc_idct_transpose_8x8_sse2
> +%if ARCH_X86_64
> +%define transpose_16x16 hevc_idct_transpose_16x16_sse2
> +%define transpose_32x32 hevc_idct_transpose_32x32_sse2
> +IDCT_32x32 %1
> +IDCT_16x16 %1
> +%endif

There should be no need to redefine the transpose functions, just call
the right one with the help of the cpuname macro.

> --- a/libavcodec/x86/hevcdsp_init.c
> +++ b/libavcodec/x86/hevcdsp_init.c
> @@ -329,6 +361,11 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int 
> bit_depth)
>  #if HAVE_AVX_EXTERNAL
>  SET_QPEL_FUNCS(1, 1, 8, avx, hevc_qpel_hv);
>  SET_EPEL_FUNCS(1, 1, 8, avx, hevc_epel_hv);
> +
> +c->idct[0] = ff_hevc_idct_4x4_8_avx;
> +c->idct[1] = ff_hevc_idct_8x8_8_avx;
> +c->idct[2] = ff_hevc_idct_16x16_8_avx;
> +c->idct[3] = ff_hevc_idct_32x32_8_avx;
>  #endif /* HAVE_AVX_EXTERNAL */
>  }

Only the parts that are explicitly ifdeffed above within this very file
should be ifdeffed here. Add these below the ifdef.

> @@ -354,6 +397,12 @@ void ff_hevc_dsp_init_x86(HEVCDSPContext *c, const int 
> bit_depth)
>  SET_EPEL_FUNCS(0, 1, 10, avx, ff_hevc_epel_h);
>  SET_EPEL_FUNCS(1, 0, 10, avx, ff_hevc_epel_v);
>  SET_EPEL_FUNCS(1, 1, 10, avx, hevc_epel_hv);
> +
> +c->idct[0] = ff_hevc_idct_4x4_10_avx;
> +c->idct[1] = ff_hevc_idct_8x8_10_avx;
> +c->idct[2] = ff_hevc_idct_16x16_10_avx;
> +c->idct[3] = ff_hevc_idct_32x32_10_avx;
> +
>  #endif /* HAVE_AVX_EXTERNAL */
>  }
>  if (EXTERNAL_AVX2(cpu_flags)) {

same

Diego
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Re: [libav-devel] [PATCH] swscale: Add missing yuv444p12 swapping

2016-10-06 Thread Luca Barbato
On 07/10/16 00:28, Vittorio Giovara wrote:
> Missing from 9bd6ea5695660529b2887292874a7b9e61fc301e.
> 
> Signed-off-by: Vittorio Giovara 
> ---
> Fixes the ppc fate tests.
> Vittorio
> 

Sounds Ok.

Thanks for spotting it!

lu
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] APIchanges: Expand the name of recently added pixel formats

2016-10-06 Thread Luca Barbato
On 07/10/16 00:27, Vittorio Giovara wrote:
> This makes them easier to search for.
> ---
>  doc/APIchanges | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/doc/APIchanges b/doc/APIchanges
> index 655783e..ef25a98 100644
> --- a/doc/APIchanges
> +++ b/doc/APIchanges
> @@ -20,7 +20,7 @@ API changes, most recent first:
>Add AVIO_SEEKABLE_TIME flag.
>  
>  2016-xx-xx - xxx - lavu 55.22.0 - pixfmt.h
> -  Add AV_PIX_FMT_YUV(420,422,444)P12.
> +  Add AV_PIX_FMT_YUV420P12, AV_PIX_FMT_YUV422P12, and AV_PIX_FMT_YUV444P12.
>  
>  2016-xx-xx - xxx - lavc 57.27.0 - avcodec.h
>Add FF_PROFILE_HEVC_REXT, the extended pixel format profile for HEVC.
> @@ -41,7 +41,7 @@ API changes, most recent first:
>members AV_VAAPI_DRIVER_QUIRK_* to represent its values.
>  
>  2016-07-02 - b7c5f88 - lavu 55.18.0 - pixfmt.h
> -  Add AV_PIX_FMT_P010(LE/BE).
> +  Add AV_PIX_FMT_P010LE and AV_PIX_FMT_P010BE.
>  
>  2016-06-21 - 32c8359 - lavc 57.24.0 - avcodec.h
>Decoders now export the frame timestamp as AVFrame.pts. It was
> 

Ok.
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


[libav-devel] [PATCH] swscale: Add missing yuv444p12 swapping

2016-10-06 Thread Vittorio Giovara
Missing from 9bd6ea5695660529b2887292874a7b9e61fc301e.

Signed-off-by: Vittorio Giovara 
---
Fixes the ppc fate tests.
Vittorio

 libswscale/input.c  | 4 
 tests/ref/fate/filter-pixfmts-scale | 2 +-
 2 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/libswscale/input.c b/libswscale/input.c
index 76a4700..e1ac483 100644
--- a/libswscale/input.c
+++ b/libswscale/input.c
@@ -817,6 +817,7 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c)
 case AV_PIX_FMT_YUV444P10LE:
 case AV_PIX_FMT_YUV420P12LE:
 case AV_PIX_FMT_YUV422P12LE:
+case AV_PIX_FMT_YUV444P12LE:
 case AV_PIX_FMT_YUV420P16LE:
 case AV_PIX_FMT_YUV422P16LE:
 case AV_PIX_FMT_YUV444P16LE:
@@ -840,6 +841,7 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c)
 case AV_PIX_FMT_YUV444P10BE:
 case AV_PIX_FMT_YUV420P12BE:
 case AV_PIX_FMT_YUV422P12BE:
+case AV_PIX_FMT_YUV444P12BE:
 case AV_PIX_FMT_YUV420P16BE:
 case AV_PIX_FMT_YUV422P16BE:
 case AV_PIX_FMT_YUV444P16BE:
@@ -1039,6 +1041,7 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c)
 case AV_PIX_FMT_YUV444P10LE:
 case AV_PIX_FMT_YUV420P12LE:
 case AV_PIX_FMT_YUV422P12LE:
+case AV_PIX_FMT_YUV444P12LE:
 case AV_PIX_FMT_YUV420P16LE:
 case AV_PIX_FMT_YUV422P16LE:
 case AV_PIX_FMT_YUV444P16LE:
@@ -1066,6 +1069,7 @@ av_cold void ff_sws_init_input_funcs(SwsContext *c)
 case AV_PIX_FMT_YUV444P10BE:
 case AV_PIX_FMT_YUV420P12BE:
 case AV_PIX_FMT_YUV422P12BE:
+case AV_PIX_FMT_YUV444P12BE:
 case AV_PIX_FMT_YUV420P16BE:
 case AV_PIX_FMT_YUV422P16BE:
 case AV_PIX_FMT_YUV444P16BE:
diff --git a/tests/ref/fate/filter-pixfmts-scale 
b/tests/ref/fate/filter-pixfmts-scale
index 0a3f3f1..09c335b 100644
--- a/tests/ref/fate/filter-pixfmts-scale
+++ b/tests/ref/fate/filter-pixfmts-scale
@@ -62,7 +62,7 @@ yuv440p 4713a7b7ce80dd06923626d13589c098
 yuv444p fd733672651ad5bbffb046fd67151fee
 yuv444p10be 34b38d54167df70044bdc08518d91009
 yuv444p10le 0812e3371c9589c6621408812f9e7a27
-yuv444p12be 936147950ba1b511570da85a0922abf3
+yuv444p12be 4fdc4bf4036c40ff575f9bc2229bf5d6
 yuv444p12le 4a9ec677190371ef5e342ffac1ace735
 yuv444p16be e89fe5a4624ed06603580b4a74af9170
 yuv444p16le 6944d11048ff4013c5e60359faf1bd2d
-- 
2.10.0

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


[libav-devel] [PATCH] APIchanges: Expand the name of recently added pixel formats

2016-10-06 Thread Vittorio Giovara
This makes them easier to search for.
---
 doc/APIchanges | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/doc/APIchanges b/doc/APIchanges
index 655783e..ef25a98 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -20,7 +20,7 @@ API changes, most recent first:
   Add AVIO_SEEKABLE_TIME flag.
 
 2016-xx-xx - xxx - lavu 55.22.0 - pixfmt.h
-  Add AV_PIX_FMT_YUV(420,422,444)P12.
+  Add AV_PIX_FMT_YUV420P12, AV_PIX_FMT_YUV422P12, and AV_PIX_FMT_YUV444P12.
 
 2016-xx-xx - xxx - lavc 57.27.0 - avcodec.h
   Add FF_PROFILE_HEVC_REXT, the extended pixel format profile for HEVC.
@@ -41,7 +41,7 @@ API changes, most recent first:
   members AV_VAAPI_DRIVER_QUIRK_* to represent its values.
 
 2016-07-02 - b7c5f88 - lavu 55.18.0 - pixfmt.h
-  Add AV_PIX_FMT_P010(LE/BE).
+  Add AV_PIX_FMT_P010LE and AV_PIX_FMT_P010BE.
 
 2016-06-21 - 32c8359 - lavc 57.24.0 - avcodec.h
   Decoders now export the frame timestamp as AVFrame.pts. It was
-- 
2.10.0

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH] bktr: Adjust zero initialization to fix warning

2016-10-06 Thread Luca Barbato
On 06/10/16 14:24, Diego Biurrun wrote:
> libavdevice/bktr.c:107:12: warning: missing braces around initializer
> ---
>  libavdevice/bktr.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libavdevice/bktr.c b/libavdevice/bktr.c
> index f76a163..563bbe5 100644
> --- a/libavdevice/bktr.c
> +++ b/libavdevice/bktr.c
> @@ -104,7 +104,7 @@ static av_cold int bktr_init(const char *video_device, 
> int width, int height,
>  long ioctl_frequency;
>  char *arg;
>  int c;
> -struct sigaction act = { 0 }, old;
> +struct sigaction act = { { 0 } }, old;
>  int ret;
>  char errbuf[128];  

Ok.
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH 1/4] hevc: x86: Refactor IDCT macro declarations

2016-10-06 Thread Diego Biurrun
On Thu, Oct 06, 2016 at 02:10:02PM +0200, Alexandra Hájková wrote:
> This's a part of my  add IDCT patch, I don't undesrtand why it's sent
> under your name.

It's an independent refactoring of existing code that I did and applied
your patch on top.

> Also I see this's already pushed without any review.

I previously sent it as part of a 2-part set:

  Date: Wed,  5 Oct 2016 11:49:50 +0200
  Subject: [libav-devel] [PATCH 1/2] hevc: x86: Refactor IDCT macro declarations
  Message-Id: <1475660991-2406-1-git-send-email-di...@biurrun.de>

Luca OKed it here:

  Date: Wed, 5 Oct 2016 13:08:22 +0200
  Subject: Re: [libav-devel] [PATCH 1/2] hevc: x86: Refactor IDCT macro 
declarations
  Message-ID: <09ef3f7a-889b-880b-7740-0edb08a23...@gentoo.org>

I pushed it after the standard 24-hour grace period had passed.

Diego
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Re: [libav-devel] [Libav-devel][Patch] Fixed error log

2016-10-06 Thread Diego Biurrun
On Thu, Oct 06, 2016 at 09:16:58AM +, Yogender Gupta wrote:
> From 0cd1617f9fcc3ae6dba5793db46386d06f3a910e Mon Sep 17 00:00:00 2001
> From: Yogender Gupta 
> Date: Thu, 6 Oct 2016 14:44:26 +0530
> Subject: [PATCH] nvenc.c: fixed error log
> 
> ---
>  libavcodec/nvenc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

  nvenc: Fix error log

Queueing with that as log message, thanks.

Diego
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


[libav-devel] [PATCH] bktr: Adjust zero initialization to fix warning

2016-10-06 Thread Diego Biurrun
libavdevice/bktr.c:107:12: warning: missing braces around initializer
---
 libavdevice/bktr.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavdevice/bktr.c b/libavdevice/bktr.c
index f76a163..563bbe5 100644
--- a/libavdevice/bktr.c
+++ b/libavdevice/bktr.c
@@ -104,7 +104,7 @@ static av_cold int bktr_init(const char *video_device, int 
width, int height,
 long ioctl_frequency;
 char *arg;
 int c;
-struct sigaction act = { 0 }, old;
+struct sigaction act = { { 0 } }, old;
 int ret;
 char errbuf[128];
 
-- 
2.7.3

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [PATCH 1/4] hevc: x86: Refactor IDCT macro declarations

2016-10-06 Thread Alexandra Hájková
This's a part of my  add IDCT patch, I don't undesrtand why it's sent
under your name. Also I see this's already pushed without any review.
I strongly dislike your behaviour and I don't understand why are you
doing this.
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [Libav-devel][Patch] Force high_444 profile for 444 inputs for H264

2016-10-06 Thread Yogender Gupta
>> I'd fold it in the current check for ctx->data_pix_fmt that is already 
>> present.
I kept it separate to maintain consistency as it is set for HEVC

>> Currently we are setting FF_PROFILE_H264_HIGH_444 should it be changed to 
>> FF_PROFILE_H264_HIGH_444_PREDICTIVE as well?
FF_PROFILE_H264_HIGH_444 is not defined anywhere in standard, libav has it only 
3 places and IMO should be removed
NV_ENC_H264_PROFILE_HIGH_444 can be renamed if this is what you are referring to

Yogender
---
This email message is for the sole use of the intended recipient(s) and may 
contain
confidential information.  Any unauthorized review, use, disclosure or 
distribution
is prohibited.  If you are not the intended recipient, please contact the 
sender by
reply email and destroy all copies of the original message.
---
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [Libav-devel][Patch] Fixed error log

2016-10-06 Thread Luca Barbato
On 06/10/16 11:16, Yogender Gupta wrote:
> Fixed error log
> 

Looks fine.

___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


Re: [libav-devel] [Libav-devel][Patch] Force high_444 profile for 444 inputs for H264

2016-10-06 Thread Luca Barbato
On 06/10/16 11:10, Yogender Gupta wrote:
> +if (ctx->data_pix_fmt == AV_PIX_FMT_YUV444P) {
> +cc->profileGUID = NV_ENC_H264_PROFILE_HIGH_444_GUID;
> +avctx->profile = FF_PROFILE_H264_HIGH_444_PREDICTIVE;
> +}

I'd fold it in the current check for ctx->data_pix_fmt that is already
present.

Currently we are setting FF_PROFILE_H264_HIGH_444 should it be changed
to FF_PROFILE_H264_HIGH_444_PREDICTIVE as well?

lu




___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel


[libav-devel] [Libav-devel][Patch] Fixed error log

2016-10-06 Thread Yogender Gupta
Fixed error log

Thanks,
Yogender

---
This email message is for the sole use of the intended recipient(s) and may 
contain
confidential information.  Any unauthorized review, use, disclosure or 
distribution
is prohibited.  If you are not the intended recipient, please contact the 
sender by
reply email and destroy all copies of the original message.
---


0001-nvenc.c-fixed-error-log.patch
Description: 0001-nvenc.c-fixed-error-log.patch
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

[libav-devel] [Libav-devel][Patch] Force high_444 profile for 444 inputs for H264

2016-10-06 Thread Yogender Gupta
This patches forces high_444 profile selection for yuv444p inputs for 
nvenc_h264.

Thanks,
Yogender

---
This email message is for the sole use of the intended recipient(s) and may 
contain
confidential information.  Any unauthorized review, use, disclosure or 
distribution
is prohibited.  If you are not the intended recipient, please contact the 
sender by
reply email and destroy all copies of the original message.
---


0001-nvenc.c-force-high_444-profile-for-444-input.patch
Description: 0001-nvenc.c-force-high_444-profile-for-444-input.patch
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Re: [libav-devel] [PATCH 06/14] rv34: Change type of array stride parameters to ptrdiff_t

2016-10-06 Thread Janne Grunau
On 2016-09-29 17:52:01 +0200, Diego Biurrun wrote:
> On Thu, Sep 29, 2016 at 02:21:17PM +0300, Martin Storsjö wrote:
> > On Tue, 20 Sep 2016, Diego Biurrun wrote:
> > 
> > > This avoids SIMD-optimized functions having to sign-extend their
> > > stride argument manually to be able to do pointer arithmetic.
> > > ---
> > > libavcodec/arm/rv34dsp_neon.S |  4 +--
> > > libavcodec/arm/rv40dsp_neon.S |  4 +--
> > > libavcodec/rv30.c |  4 +--
> > > libavcodec/rv30dsp.c  | 64 
> > > +++
> > > libavcodec/rv34.c | 10 ---
> > > libavcodec/rv34.h |  2 +-
> > > libavcodec/rv40.c |  2 +-
> > > libavcodec/rv40dsp.c  | 18 +++-
> > > libavcodec/x86/rv34dsp.asm|  4 +--
> > > libavcodec/x86/rv40dsp.asm| 11 +++-
> > > libavcodec/x86/rv40dsp_init.c |  4 +--
> > > 11 files changed, 85 insertions(+), 42 deletions(-)
> > > --- a/libavcodec/rv40dsp.c
> > > +++ b/libavcodec/rv40dsp.c
> > > @@ -34,7 +34,8 @@
> > >
> > > --- a/libavcodec/x86/rv40dsp.asm
> > > +++ b/libavcodec/x86/rv40dsp.asm
> > > @@ -77,14 +77,11 @@ SECTION .text
> > > ;-
> > > ; subpel MC functions:
> > > ;
> > > -; void ff_[put|rv40]_rv40_qpel_[h|v]_(uint8_t *dst, int deststride,
> > > -;  uint8_t *src, int srcstride,
> > > -;  int len, int m);
> > > +; void ff_[put|avg]_rv40_qpel_[h|v]_(uint8_t *dst, ptrdiff_t 
> > > deststride,
> > > +; uint8_t *src, ptrdiff_t 
> > > srcstride,
> > > +; int len, ptrdiff_t m);
> > > ;--
> > > %macro LOAD  2
> > > -%if WIN64
> > > -   movsxd   %1q, %1d
> > > -%endif
> > > %ifdef PIC
> > >add  %1q, picregq
> > > %else
> > > @@ -438,7 +435,7 @@ FILTER_SSSE3  avg
> > >
> > > %endmacro
> > >
> > > -; void ff_rv40_weight_func_%1(uint8_t *dst, uint8_t *src1, uint8_t 
> > > *src2, int w1, int w2, int stride)
> > > +; void ff_rv40_weight_func_%1(uint8_t *dst, uint8_t *src1, uint8_t 
> > > *src2, int w1, int w2, ptrdiff_t stride)
> > > ; %1=size  %2=num of xmm regs
> > > ; The weights are FP0.14 notation of fractions depending on pts.
> > > ; For timebases without rounding error (i.e. PAL), the fractions
> > 
> > So, the only existing sign extension this actually changes is for the "int 
> > m" parameter. I don't see where the existing code does sign extension for 
> > srcstride nor dststride anywhere. Isn't that a latent bug, that you're 
> > fixing silently?
> 
> All of the int strides are latent bugs. This file only does sign extension
> for WIN64, for one function parameter. Possibly that was the only
> environment that triggered an actual, visible bug, I don't know.

the difference is that the m parameter is in some macro instances 
negative. I'm not sure why it made a difference on win64 but it relies 
on non windows 64-bit systems that the parameter is sign extended to 
64-bit in the register.

> > In that case, please first explicitly fix the bug by introducing the right
> > sign extensions (which is cherrypickable to release branches), then remove
> > them in this patch.
> 
> This sounds like overkill to me as we don't know if any real-world
> samples are affected. If any such cases creep up I'll gladly add the
> necessary sign extension for release branches.

Please fix this in a separate patch. It differs from the other stride ptrdiff_t 
changes and affects only x86.

Janne
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel