Re: [libav-devel] [PATCH] asfdec: read values properly

2015-08-11 Thread Anton Khirnov
Quoting Alexandra Hájková (2015-08-04 12:46:27)
 The length of BOOL values is 16 bits in the Metadata Object but
 32 bits in the Extended Content Description Object.
 ---
  libavformat/asfdec.c | 52 
 
  1 file changed, 36 insertions(+), 16 deletions(-)
 
 diff --git a/libavformat/asfdec.c b/libavformat/asfdec.c
 index a42120d..9f8b1e2 100644
 --- a/libavformat/asfdec.c
 +++ b/libavformat/asfdec.c
 @@ -569,9 +588,10 @@ static int asf_read_metadata_obj(AVFormatContext *s, 
 const GUIDParseTable *g)
  return AVERROR(ENOMEM);
  avio_get_str16le(pb, name_len, name,
   buflen);
 -
  if (!strcmp(name, AspectRatioX) || !strcmp(name, AspectRatioY)) {
 -asf_store_aspect_ratio(s, st_num, name);
 +ret = asf_store_aspect_ratio(s, st_num, name, type);
 +if (ret  0)
 +return ret;

memleak

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

Re: [libav-devel] [PATCH 5/5] avcodec: Drop a spurious const from avframe_fill_audio_frame

2015-08-11 Thread Luca Barbato
On 11/08/15 10:15, Anton Khirnov wrote:
 Quoting Luca Barbato (2015-08-03 22:51:52)
 The resulting mapped array is used as non-const.
 
 Again, no -- the function does not modify buf.
 

Shall we drop that warning for those specific functions then? The
compiler triggers quite often and it is just annoying.

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


Re: [libav-devel] [PATCH 4/5] imgutils: Const correct av_image_fill_arrays

2015-08-11 Thread Anton Khirnov
Quoting Luca Barbato (2015-08-03 22:51:51)
 The actual mapped array is going to be written.

No it's not?

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


Re: [libav-devel] [PATCH 3/5] samplefmt: Drop a spurious const from av_samples_fill_arrays

2015-08-11 Thread Anton Khirnov
Quoting Luca Barbato (2015-08-03 22:51:50)
 The resulting mapped array is used as non-const.
 ---
  libavutil/samplefmt.c | 2 +-
  libavutil/samplefmt.h | 2 +-
  2 files changed, 2 insertions(+), 2 deletions(-)
 
 diff --git a/libavutil/samplefmt.c b/libavutil/samplefmt.c
 index bff6004..453ba4c 100644
 --- a/libavutil/samplefmt.c
 +++ b/libavutil/samplefmt.c
 @@ -138,7 +138,7 @@ int av_samples_get_buffer_size(int *linesize, int 
 nb_channels, int nb_samples,
  }
  
  int av_samples_fill_arrays(uint8_t **audio_data, int *linesize,
 -   const uint8_t *buf, int nb_channels, int 
 nb_samples,
 +   uint8_t *buf, int nb_channels, int nb_samples,
 enum AVSampleFormat sample_fmt, int align)
  {
  int ch, planar, buf_size, line_size;
 diff --git a/libavutil/samplefmt.h b/libavutil/samplefmt.h
 index 8347fac..766b8e6 100644
 --- a/libavutil/samplefmt.h
 +++ b/libavutil/samplefmt.h
 @@ -187,7 +187,7 @@ int av_samples_get_buffer_size(int *linesize, int 
 nb_channels, int nb_samples,
   * @return 0 on success or a negative error code on failure
   */
  int av_samples_fill_arrays(uint8_t **audio_data, int *linesize,
 -   const uint8_t *buf,
 +   uint8_t *buf,
 int nb_channels, int nb_samples,
 enum AVSampleFormat sample_fmt, int align);
  
 -- 
 1.9.0
 

Doesn't look right. buf is not modified in this function.

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


Re: [libav-devel] [PATCH 5/5] avcodec: Drop a spurious const from avframe_fill_audio_frame

2015-08-11 Thread Anton Khirnov
Quoting Luca Barbato (2015-08-03 22:51:52)
 The resulting mapped array is used as non-const.

Again, no -- the function does not modify buf.

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


Re: [libav-devel] [PATCH 3/5] samplefmt: Drop a spurious const from av_samples_fill_arrays

2015-08-11 Thread Martin Storsjö

On Tue, 11 Aug 2015, Anton Khirnov wrote:


Quoting Luca Barbato (2015-08-03 22:51:50)

The resulting mapped array is used as non-const.
---
 libavutil/samplefmt.c | 2 +-
 libavutil/samplefmt.h | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavutil/samplefmt.c b/libavutil/samplefmt.c
index bff6004..453ba4c 100644
--- a/libavutil/samplefmt.c
+++ b/libavutil/samplefmt.c
@@ -138,7 +138,7 @@ int av_samples_get_buffer_size(int *linesize, int 
nb_channels, int nb_samples,
 }

 int av_samples_fill_arrays(uint8_t **audio_data, int *linesize,
-   const uint8_t *buf, int nb_channels, int nb_samples,
+   uint8_t *buf, int nb_channels, int nb_samples,
enum AVSampleFormat sample_fmt, int align)
 {
 int ch, planar, buf_size, line_size;
diff --git a/libavutil/samplefmt.h b/libavutil/samplefmt.h
index 8347fac..766b8e6 100644
--- a/libavutil/samplefmt.h
+++ b/libavutil/samplefmt.h
@@ -187,7 +187,7 @@ int av_samples_get_buffer_size(int *linesize, int 
nb_channels, int nb_samples,
  * @return 0 on success or a negative error code on failure
  */
 int av_samples_fill_arrays(uint8_t **audio_data, int *linesize,
-   const uint8_t *buf,
+   uint8_t *buf,
int nb_channels, int nb_samples,
enum AVSampleFormat sample_fmt, int align);

--
1.9.0



Doesn't look right. buf is not modified in this function.


Not in this function, no, but sets the pointer into a struct, where the 
pointer is non-const. So an unwitting caller could use this to strip 
constness.


But I guess the same argument goes here as for strstr; the output (or 
pointer set in the struct in this case) needs to be non-const to work for 
all cases, and the input should be const, to allow using it in that case 
as well.


So with that reasoning, it should stay as it is right now, otherwise you 
can't easily set up an AVFrame pointing to const audio data (e.g. for 
input to encoders).


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


Re: [libav-devel] [PATCH 4/6] avcodec: delay removal of avcodec_*_frame

2015-08-11 Thread Anton Khirnov
Quoting Andreas Cadhalpun (2015-08-08 13:37:08)
 They are still widely used and have been deprecated for less than two years.
 
 Signed-off-by: Andreas Cadhalpun andreas.cadhal...@googlemail.com
 ---
  libavcodec/avcodec.h | 2 +-
  libavcodec/utils.c   | 2 +-
  libavcodec/version.h | 3 +++
  3 files changed, 5 insertions(+), 2 deletions(-)
 
 diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
 index 4222db6..4202e71 100644
 --- a/libavcodec/avcodec.h
 +++ b/libavcodec/avcodec.h
 @@ -3919,7 +3919,7 @@ const AVClass *avcodec_get_subtitle_rect_class(void);
   */
  int avcodec_copy_context(AVCodecContext *dest, const AVCodecContext *src);
  
 -#if FF_API_AVFRAME_LAVC
 +#if FF_API_AVCODEC_FRAME
  /**
   * @deprecated use av_frame_alloc()
   */
 diff --git a/libavcodec/utils.c b/libavcodec/utils.c
 index 22dcc82..a590782 100644
 --- a/libavcodec/utils.c
 +++ b/libavcodec/utils.c
 @@ -1262,7 +1262,7 @@ int ff_get_format(AVCodecContext *avctx, const enum 
 AVPixelFormat *fmt)
  return ret;
  }
  
 -#if FF_API_AVFRAME_LAVC
 +#if FF_API_AVCODEC_FRAME
  void avcodec_get_frame_defaults(AVFrame *frame)
  {
  #if LIBAVCODEC_VERSION_MAJOR = 55
 diff --git a/libavcodec/version.h b/libavcodec/version.h
 index 1b37a9e..c903d2f 100644
 --- a/libavcodec/version.h
 +++ b/libavcodec/version.h
 @@ -181,6 +181,9 @@
  #ifndef FF_API_AUDIOENC_DELAY
  #define FF_API_AUDIOENC_DELAY(LIBAVCODEC_VERSION_MAJOR  58)
  #endif
 +#ifndef FF_API_AVCODEC_FRAME
 +#define FF_API_AVCODEC_FRAME (LIBAVCODEC_VERSION_MAJOR  58)
 +#endif
  #ifndef FF_API_AVCTX_TIMEBASE
  #define FF_API_AVCTX_TIMEBASE(LIBAVCODEC_VERSION_MAJOR  59)
  #endif
 -- 
 2.4.6

This API is dangerous -- it manipulates AVFrame internals from
libavcodec, even though AVFrame now lives in libavutil. It can break
badly if AVFrame is extended in libavutil, but libavcodec is not
updated. I think it also leaks side data, which cannot be fixed while
preserving compatibility.

So I really do not think keeping it is a good idea, especially since
fixing this specific change should be very easy in most cases.

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


Re: [libav-devel] [PATCH 8/8] x86inc: Various minor backports from x264

2015-08-11 Thread Anton Khirnov
Quoting Henrik Gramner (2015-08-01 17:27:38)
 ---
  libavutil/x86/x86inc.asm | 10 +-
  1 file changed, 5 insertions(+), 5 deletions(-)
 
 diff --git a/libavutil/x86/x86inc.asm b/libavutil/x86/x86inc.asm
 index d70a5f9..0e2f447 100644
 --- a/libavutil/x86/x86inc.asm
 +++ b/libavutil/x86/x86inc.asm
 @@ -1,7 +1,7 @@
  
 ;*
  ;* x86inc.asm: x264asm abstraction layer
  
 ;*
 -;* Copyright (C) 2005-2013 x264 project
 +;* Copyright (C) 2005-2015 x264 project
  ;*
  ;* Authors: Loren Merritt lor...@u.washington.edu
  ;*  Anton Mitrofanov bugmas...@narod.ru
 @@ -740,7 +740,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, 
 jge, jng, jnge, ja, jae,
  
  ; This is needed for ELF, otherwise the GNU linker assumes the stack is 
 executable by default.
  %if FORMAT_ELF
 -[section .note.GNU-stack noalloc noexec nowrite progbits]
 +[SECTION .note.GNU-stack noalloc noexec nowrite progbits]
  %endif
  
  ; cpuflags
 @@ -759,8 +759,8 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, 
 jge, jng, jnge, ja, jae,
  %assign cpuflags_avx  (111)| cpuflags_sse42
  %assign cpuflags_xop  (112)| cpuflags_avx
  %assign cpuflags_fma4 (113)| cpuflags_avx
 -%assign cpuflags_avx2 (114)| cpuflags_avx
 -%assign cpuflags_fma3 (115)| cpuflags_avx
 +%assign cpuflags_fma3 (114)| cpuflags_avx
 +%assign cpuflags_avx2 (115)| cpuflags_fma3
  
  %assign cpuflags_cache32  (116)
  %assign cpuflags_cache64  (117)
 @@ -809,7 +809,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, 
 jge, jng, jnge, ja, jae,
  %endif
  %endif
  
 -%if cpuflag(sse2)
 +%if ARCH_X86_64 || cpuflag(sse2)
  %ifdef __NASM_VER__
  ALIGNMODE k8
  %else
 -- 
 1.8.3.2

The last hunk does not apply cleanly without 7/8. Could you please
rebase it?

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


Re: [libav-devel] [PATCH 1/5] xiph: Const correct avpriv_split_xiph_headers arguments

2015-08-11 Thread Anton Khirnov
Quoting Luca Barbato (2015-08-03 22:51:48)
 And fix the callers accordingly.
 
 Address 1 clang warning.
 ---
  libavcodec/vorbis_parser.c |  2 +-
  libavcodec/vorbisdec.c |  2 +-
  libavcodec/vp3.c   |  2 +-
  libavcodec/xiph.c  |  4 ++--
  libavcodec/xiph.h  |  4 ++--
  libavformat/matroskaenc.c  |  2 +-
  libavformat/oggenc.c   | 13 +++--
  libavformat/sdp.c  |  2 +-
  8 files changed, 16 insertions(+), 15 deletions(-)
 

This adds a warning to oggenc.c.

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


Re: [libav-devel] [PATCH 1/5] xiph: Const correct avpriv_split_xiph_headers arguments

2015-08-11 Thread Luca Barbato
On 11/08/15 10:12, Anton Khirnov wrote:
 Quoting Luca Barbato (2015-08-03 22:51:48)
 And fix the callers accordingly.

 Address 1 clang warning.
 ---
  libavcodec/vorbis_parser.c |  2 +-
  libavcodec/vorbisdec.c |  2 +-
  libavcodec/vp3.c   |  2 +-
  libavcodec/xiph.c  |  4 ++--
  libavcodec/xiph.h  |  4 ++--
  libavformat/matroskaenc.c  |  2 +-
  libavformat/oggenc.c   | 13 +++--
  libavformat/sdp.c  |  2 +-
  8 files changed, 16 insertions(+), 15 deletions(-)

 
 This adds a warning to oggenc.c.

Which compiler?

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


[libav-devel] [LONG] Bugwrangling for bugs 100-200

2015-08-11 Thread Paolo Bizzarri
Hi,

I have gone retesting the open bugs from 100 to 200. I have retested the
samples provided for the following bugs.

These is what I have achieved.

108 abort() triggered in ff_find_unused_picture() Impossible to retest,
missing file
112 Invalid reads at dsicinav.c Retested
113 avformat_write_header is extremely slow for .mkv files Patch to test
132 multipart/x-mixed-replace mpeg4 + pcm: audio not recognized Retested
137 Invalid reads at vqavideo.c and Invalid writes at ws-snd1.c Retested
155 Infinite loop Not retested, but from the comments probably fixed
156 Invalid reads at flicvideo Retested
169 Invalid reads at string3.h:52 xan_unpack(xxan.c:136) Retested
178 [REQUEST] VC-1 Interlaced Advanced Stream Sample Testedt, but very long
output
194 dvvideo encoded OpenDML Avi's bigger than 2GB dont seek properly.
Impossible
to retest, missing file

This is the output - I am not sure if these implies that the bug should be
closed.


 Bug 112 Invalid reads at dsicinav.c

$ ./avconv.exe -i
/cygdrive/c/Users/pibizza/Desktop/libav_bugs/112/LOGO-partial.CIN.fuzzed -f
null -
avconv version v12_dev0-1721-gb69a517, Copyright (c) 2000-2015 the Libav
developers
  built on Aug  8 2015 21:27:49 with gcc 4.9.3 (GCC)
[dsicin @ 0x8001e280] Estimating duration from bitrate, this may be
inaccurate
Input #0, dsicin, from
'/cygdrive/c/Users/pibizza/Desktop/libav_bugs/112/LOGO-partial.CIN.fuzzed':
  Duration: 00:00:47.58, start: 0.00, bitrate: 176 kb/s
Stream #0:0: Video: dsicinvideo
  pal8, 320x160
  12 fps, 12 tbn
Stream #0:1: Audio: dsicinaudio
  22050 Hz, mono, s16, 176 kb/s
Output #0, null, to 'pipe:':
  Metadata:
encoder : Lavf56.21.0
Stream #0:0: Video: rawvideo
  pal8, 320x160, q=2-31, 200 kb/s
  12 tbn, 12 tbc
Metadata:
  encoder : Lavc56.35.1 rawvideo
Stream #0:1: Audio: pcm_s16le
  22050 Hz, mono, s16, 352 kb/s
Metadata:
  encoder : Lavc56.35.1 pcm_s16le
Stream mapping:
  Stream #0:0 - #0:0 (dsicinvideo (native) - rawvideo (native))
  Stream #0:1 - #0:1 (dsicinaudio (native) - pcm_s16le (native))
Press ctrl-c to stop encoding
Error while decoding stream #0:0
Last message repeated 5 times
frame=   86 fps=  0 q=-0.0 Lsize=   0kB time=11.42 bitrate=   0.0kbits/s
video:5kB audio:495kB other streams:0kB global headers:0kB muxing overhead:
unknown

* 132 multipart/x-mixed-replace mpeg4 + pcm: audio not recognized

$ ./avprobe.exe  /cygdrive/c/Users/pibizza/Desktop/libav_bugs/132/getstream1
avprobe version v12_dev0-1721-gb69a517, Copyright (c) 2007-2015 the Libav
developers
  built on Aug  8 2015 21:27:49 with gcc 4.9.3 (GCC)
[m4v @ 0x80015de0] Estimating duration from bitrate, this may be inaccurate
Input #0, m4v, from
'/cygdrive/c/Users/pibizza/Desktop/libav_bugs/132/getstream1':
  Duration: N/A, bitrate: N/A
Stream #0:0: Video: mpeg4 (Simple Profile)
  yuv420p, 720x576 [PAR 1:1 DAR 5:4]
  25 fps, 25 tbn, 25 tbc
# avprobe output



* 137  Invalid reads at string3.h:52 xan_unpack(xxan.c:136)

$ ./avconv.exe -i
/cygdrive/c/Users/pibizza/Desktop/libav_bugs/137/ws_snd.vqa.fuzzed -f null -
avconv version v12_dev0-1721-gb69a517, Copyright (c) 2000-2015 the Libav
developers
  built on Aug  8 2015 21:27:49 with gcc 4.9.3 (GCC)
[wsvqa @ 0x8001e280] Skipping unknown chunk 0xB6CD6E1D
Input #0, wsvqa, from
'/cygdrive/c/Users/pibizza/Desktop/libav_bugs/137/ws_snd.vqa.fuzzed':
  Duration: 00:00:17.60, start: 0.00, bitrate: 45 kb/s
Stream #0:0: Video: vqavideo
  pal8, 240x150
  10 tbn
Stream #0:1: Audio: ws_snd1
  22050 Hz, mono, u8
Output #0, null, to 'pipe:':
  Metadata:
encoder : Lavf56.21.0
Stream #0:0: Video: rawvideo
  pal8, 240x150, q=2-31, 200 kb/s
  10 tbn, 10 tbc
Metadata:
  encoder : Lavc56.35.1 rawvideo
Stream #0:1: Audio: pcm_s16le
  22050 Hz, mono, s16, 352 kb/s
Metadata:
  encoder : Lavc56.35.1 pcm_s16le
Stream mapping:
  Stream #0:0 - #0:0 (ws_vqa (vqavideo) - rawvideo (native))
  Stream #0:1 - #0:1 (westwood_snd1 (ws_snd1) - pcm_s16le (native))
Press ctrl-c to stop encoding
  VQA video: decode_format80 problem: next op would overflow dest_index
  VQA video: current src_pos = 1316, count = 3, dest_size = 1048576
Error while decoding stream #0:0
  VQA video: decode_format80 problem: next op would overflow dest_index
  VQA video: current src_pos = 3332, count = 3, dest_size = 9000
Error while decoding stream #0:0
/cygdrive/c/Users/pibizza/Desktop/libav_bugs/137/ws_snd.vqa.fuzzed:
Operation not permitted
frame=0 fps=  0 q=0.0 Lsize=   0kB time=0.74 bitrate=   0.0kbits/s
video:0kB audio:36kB other streams:0kB global headers:0kB muxing overhead:
unknown

* 156 Invalid reads at flicvideo

$ ./avconv.exe -i /cygdrive/c/Users/pibizza/Desktop/libav_bugs/156/fail.dat
-f null -
avconv version v12_dev0-1721-gb69a517, Copyright (c) 2000-2015 the Libav
developers
  built on Aug  8 2015 21:27:49 with gcc 4.9.3 (GCC)

[libav-devel] [PATCH] x86inc: Various minor backports from x264

2015-08-11 Thread Henrik Gramner
---
 libavutil/x86/x86inc.asm | 32 +---
 1 file changed, 21 insertions(+), 11 deletions(-)

diff --git a/libavutil/x86/x86inc.asm b/libavutil/x86/x86inc.asm
index a519fd5..6ad9785 100644
--- a/libavutil/x86/x86inc.asm
+++ b/libavutil/x86/x86inc.asm
@@ -1,7 +1,7 @@
 ;*
 ;* x86inc.asm: x264asm abstraction layer
 ;*
-;* Copyright (C) 2005-2013 x264 project
+;* Copyright (C) 2005-2015 x264 project
 ;*
 ;* Authors: Loren Merritt lor...@u.washington.edu
 ;*  Anton Mitrofanov bugmas...@narod.ru
@@ -67,6 +67,15 @@
 %endif
 %endif
 
+%define FORMAT_ELF 0
+%ifidn __OUTPUT_FORMAT__,elf
+%define FORMAT_ELF 1
+%elifidn __OUTPUT_FORMAT__,elf32
+%define FORMAT_ELF 1
+%elifidn __OUTPUT_FORMAT__,elf64
+%define FORMAT_ELF 1
+%endif
+
 %ifdef PREFIX
 %define mangle(x) _ %+ x
 %else
@@ -688,7 +697,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, jge, 
jng, jnge, ja, jae,
 CAT_XDEFINE cglobaled_, %2, 1
 %endif
 %xdefine current_function %2
-%ifidn __OUTPUT_FORMAT__,elf
+%if FORMAT_ELF
 global %2:function %%VISIBILITY
 %else
 global %2
@@ -714,14 +723,16 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, 
jge, jng, jnge, ja, jae,
 
 ; like cextern, but without the prefix
 %macro cextern_naked 1
-%xdefine %1 mangle(%1)
+%ifdef PREFIX
+%xdefine %1 mangle(%1)
+%endif
 CAT_XDEFINE cglobaled_, %1, 1
 extern %1
 %endmacro
 
 %macro const 1-2+
 %xdefine %1 mangle(private_prefix %+ _ %+ %1)
-%ifidn __OUTPUT_FORMAT__,elf
+%if FORMAT_ELF
 global %1:data hidden
 %else
 global %1
@@ -729,10 +740,9 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, 
jge, jng, jnge, ja, jae,
 %1: %2
 %endmacro
 
-; This is needed for ELF, otherwise the GNU linker assumes the stack is
-; executable by default.
-%ifidn __OUTPUT_FORMAT__,elf
-[section .note.GNU-stack noalloc noexec nowrite progbits]
+; This is needed for ELF, otherwise the GNU linker assumes the stack is 
executable by default.
+%if FORMAT_ELF
+[SECTION .note.GNU-stack noalloc noexec nowrite progbits]
 %endif
 
 ; cpuflags
@@ -751,8 +761,8 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, jge, 
jng, jnge, ja, jae,
 %assign cpuflags_avx  (111)| cpuflags_sse42
 %assign cpuflags_xop  (112)| cpuflags_avx
 %assign cpuflags_fma4 (113)| cpuflags_avx
-%assign cpuflags_avx2 (114)| cpuflags_avx
-%assign cpuflags_fma3 (115)| cpuflags_avx
+%assign cpuflags_fma3 (114)| cpuflags_avx
+%assign cpuflags_avx2 (115)| cpuflags_fma3
 
 %assign cpuflags_cache32  (116)
 %assign cpuflags_cache64  (117)
@@ -801,7 +811,7 @@ BRANCH_INSTR jz, je, jnz, jne, jl, jle, jnl, jnle, jg, jge, 
jng, jnge, ja, jae,
 %endif
 %endif
 
-%if cpuflag(sse2)
+%if ARCH_X86_64 || cpuflag(sse2)
 CPUNOP amdnop
 %else
 CPUNOP basicnop
-- 
1.8.3.2

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


Re: [libav-devel] [PATCH 4/6] avcodec: delay removal of avcodec_*_frame

2015-08-11 Thread Andreas Cadhalpun
On 11.08.2015 11:34, Anton Khirnov wrote:
 This API is dangerous -- it manipulates AVFrame internals from
 libavcodec, even though AVFrame now lives in libavutil. It can break
 badly if AVFrame is extended in libavutil, but libavcodec is not
 updated. I think it also leaks side data, which cannot be fixed while
 preserving compatibility.
 
 So I really do not think keeping it is a good idea, especially since
 fixing this specific change should be very easy in most cases.

On the other hand, breaking many API users isn't good either.

However, endlessly arguing which of these is the lesser evil isn't
getting us anywhere.

The best way forward is to get API users fixed.
Thus I'll try to fix all affected packages in Debian, but I don't know
how much time that will take.

I suggest that we table the discussion until sometime closer to the
release, maybe in a month?

If most packages are fixed by then, this API could be removed,
otherwise it might be better to delay it's removal (or the release).

Best regards,
Andreas
___
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel