[FFmpeg-cvslog] [ffmpeg-web] branch master updated. 8500f0f web/consulting: Add myself.

2016-03-22 Thread ffmpeg-cvslog
The branch, master has been updated
   via  8500f0f370cb2b34efba5977798e731eb68d805a (commit)
  from  b5af63432925a84e7371ef1eb4883922bc42773a (commit)


- Log -
commit 8500f0f370cb2b34efba5977798e731eb68d805a
Author: Thilo Borgmann 
AuthorDate: Tue Mar 22 12:39:45 2016 +0100
Commit: Lou Logan 
CommitDate: Tue Mar 22 10:36:35 2016 -0800

web/consulting: Add myself.

diff --git a/src/consulting b/src/consulting
index 8990219..0b03806 100644
--- a/src/consulting
+++ b/src/consulting
@@ -157,3 +157,17 @@ E.g.:
  

  
+
+  
+
+  Thilo Borgmann
+  
+Thilo is located in Berlin, Germany and is available for contract work.
+He has worked on FFmpeg since 2009 and has been a maintainer since 
2010.
+He has special expertise with decoders, metadata, input devices and
+filters. You can contact him by email at
+mailto:thilo.borgm...@mail.de;>thilo.borgm...@mail.de.
+  
+ 
+   
+ 

---

Summary of changes:
 src/consulting | 14 ++
 1 file changed, 14 insertions(+)


hooks/post-receive
-- 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] lavc: add AudioToolbox decoders

2016-03-22 Thread Rodger Combs
ffmpeg | branch: master | Rodger Combs  | Thu Feb 18 
21:38:37 2016 -0600| [d5d328059e5195b67f7264faa431301ec584648b] | committer: 
Rodger Combs

lavc: add AudioToolbox decoders

Part of trac #4828

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d5d328059e5195b67f7264faa431301ec584648b
---

 Changelog|1 +
 configure|   24 +++
 libavcodec/Makefile  |   14 ++
 libavcodec/allcodecs.c   |   14 ++
 libavcodec/audiotoolboxdec.c |  334 ++
 libavcodec/version.h |4 +-
 6 files changed, 389 insertions(+), 2 deletions(-)

diff --git a/Changelog b/Changelog
index 20f98ed..29d2290 100644
--- a/Changelog
+++ b/Changelog
@@ -13,6 +13,7 @@ version :
 - protocol blacklisting API
 - MediaCodec H264 decoding
 - VC-2 HQ RTP payload format (draft v1) depacketizer
+- AudioToolbox audio decoders
 
 
 version 3.0:
diff --git a/configure b/configure
index 764377c..cde3096 100755
--- a/configure
+++ b/configure
@@ -194,6 +194,7 @@ Individual component options:
   --disable-filtersdisable all filters
 
 External library support:
+  --disable-audiotoolbox   enable AudioToolbox decoders and encoders 
[autodetect]
   --enable-avisynthenable reading of AviSynth script files [no]
   --disable-bzlib  disable bzlib [autodetect]
   --enable-cudaenable dynamically linked CUDA [no]
@@ -1446,6 +1447,7 @@ EXAMPLE_LIST="
 "
 
 EXTERNAL_LIBRARY_LIST="
+audiotoolbox
 avisynth
 bzlib
 chromaprint
@@ -2506,6 +2508,10 @@ zlib_encoder_select="zlib"
 zmbv_decoder_select="zlib"
 zmbv_encoder_select="zlib"
 
+# platform codecs
+audiotoolbox_deps="AudioToolbox_AudioToolbox_h"
+audiotoolbox_extralibs="-framework CoreFoundation -framework AudioToolbox 
-framework CoreMedia"
+
 # hardware accelerators
 crystalhd_deps="libcrystalhd_libcrystalhd_if_h"
 d3d11va_deps="d3d11_h dxva_h ID3D11VideoDecoder ID3D11VideoContext"
@@ -2641,6 +2647,20 @@ vc1_parser_select="vc1dsp"
 mjpeg2jpeg_bsf_select="jpegtables"
 
 # external libraries
+aac_at_decoder_deps="audiotoolbox"
+ac3_at_decoder_deps="audiotoolbox"
+adpcm_ima_qt_at_decoder_deps="audiotoolbox"
+alac_at_decoder_deps="audiotoolbox"
+amr_nb_at_decoder_deps="audiotoolbox"
+gsm_ms_at_decoder_deps="audiotoolbox"
+ilbc_at_decoder_deps="audiotoolbox"
+mp1_at_decoder_deps="audiotoolbox"
+mp2_at_decoder_deps="audiotoolbox"
+mp3_at_decoder_deps="audiotoolbox"
+pcm_alaw_at_decoder_deps="audiotoolbox"
+pcm_mulaw_at_decoder_deps="audiotoolbox"
+qdmc_at_decoder_deps="audiotoolbox"
+qdm2_at_decoder_deps="audiotoolbox"
 chromaprint_muxer_deps="chromaprint"
 h264_videotoolbox_encoder_deps="videotoolbox_encoder pthreads"
 libcelt_decoder_deps="libcelt"
@@ -3087,6 +3107,9 @@ enable valgrind_backtrace
 sws_max_filter_size_default=256
 set_default sws_max_filter_size
 
+# Enable platform codecs by default.
+enable audiotoolbox
+
 # Enable hwaccels by default.
 enable d3d11va dxva2 vaapi vda vdpau videotoolbox_hwaccel xvmc
 enable xlib
@@ -5365,6 +5388,7 @@ check_func_headers glob.h glob
 enabled xlib &&
 check_func_headers "X11/Xlib.h X11/extensions/Xvlib.h" XvGetPortAttribute 
-lXv -lX11 -lXext
 
+check_header AudioToolbox/AudioToolbox.h
 check_header direct.h
 check_header dirent.h
 check_header dlfcn.h
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 6bb1af1..53d3f0d 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -801,6 +801,20 @@ OBJS-$(CONFIG_WEBM_MUXER)  += mpeg4audio.o 
mpegaudiodata.o  \
 OBJS-$(CONFIG_ELBG_FILTER) += elbg.o
 
 # external codec libraries
+OBJS-$(CONFIG_AAC_AT_DECODER) += audiotoolboxdec.o
+OBJS-$(CONFIG_AC3_AT_DECODER) += audiotoolboxdec.o
+OBJS-$(CONFIG_ADPCM_IMA_QT_AT_DECODER)+= audiotoolboxdec.o
+OBJS-$(CONFIG_ALAC_AT_DECODER)+= audiotoolboxdec.o
+OBJS-$(CONFIG_AMR_NB_AT_DECODER)  += audiotoolboxdec.o
+OBJS-$(CONFIG_GSM_MS_AT_DECODER)  += audiotoolboxdec.o
+OBJS-$(CONFIG_ILBC_AT_DECODER)+= audiotoolboxdec.o
+OBJS-$(CONFIG_MP1_AT_DECODER) += audiotoolboxdec.o
+OBJS-$(CONFIG_MP2_AT_DECODER) += audiotoolboxdec.o
+OBJS-$(CONFIG_MP3_AT_DECODER) += audiotoolboxdec.o
+OBJS-$(CONFIG_PCM_MULAW_AT_DECODER)   += audiotoolboxdec.o
+OBJS-$(CONFIG_PCM_ALAW_AT_DECODER)+= audiotoolboxdec.o
+OBJS-$(CONFIG_QDMC_AT_DECODER)+= audiotoolboxdec.o
+OBJS-$(CONFIG_QDM2_AT_DECODER)+= audiotoolboxdec.o
 OBJS-$(CONFIG_LIBCELT_DECODER)+= libcelt_dec.o
 OBJS-$(CONFIG_LIBDCADEC_DECODER)  += libdcadec.o dca.o
 OBJS-$(CONFIG_LIBFAAC_ENCODER)+= libfaac.o
diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c
index 2a25d66..e9f971b 100644
--- a/libavcodec/allcodecs.c
+++ b/libavcodec/allcodecs.c
@@ -563,6 +563,20 @@ void avcodec_register_all(void)
 REGISTER_ENCDEC (XSUB,  xsub);
 
 /* external 

[FFmpeg-cvslog] lavc: add AudioToolbox encoders

2016-03-22 Thread Rodger Combs
ffmpeg | branch: master | Rodger Combs  | Tue Feb 23 
21:01:24 2016 -0600| [65cff814534cec948f255b48098ad9e543993132] | committer: 
Rodger Combs

lavc: add AudioToolbox encoders

Fixes trac #4828

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=65cff814534cec948f255b48098ad9e543993132
---

 Changelog|1 +
 configure|   10 +
 libavcodec/Makefile  |5 +
 libavcodec/allcodecs.c   |   10 +-
 libavcodec/audiotoolboxenc.c |  471 ++
 libavcodec/version.h |2 +-
 6 files changed, 493 insertions(+), 6 deletions(-)

diff --git a/Changelog b/Changelog
index 29d2290..d70f6f0 100644
--- a/Changelog
+++ b/Changelog
@@ -14,6 +14,7 @@ version :
 - MediaCodec H264 decoding
 - VC-2 HQ RTP payload format (draft v1) depacketizer
 - AudioToolbox audio decoders
+- AudioToolbox audio encoders
 
 
 version 3.0:
diff --git a/configure b/configure
index cde3096..0987bcd 100755
--- a/configure
+++ b/configure
@@ -2661,6 +2661,16 @@ pcm_alaw_at_decoder_deps="audiotoolbox"
 pcm_mulaw_at_decoder_deps="audiotoolbox"
 qdmc_at_decoder_deps="audiotoolbox"
 qdm2_at_decoder_deps="audiotoolbox"
+aac_at_encoder_deps="audiotoolbox"
+aac_at_encoder_select="audio_frame_queue"
+alac_at_encoder_deps="audiotoolbox"
+alac_at_encoder_select="audio_frame_queue"
+ilbc_at_encoder_deps="audiotoolbox"
+ilbc_at_encoder_select="audio_frame_queue"
+pcm_alaw_at_encoder_deps="audiotoolbox"
+pcm_alaw_at_encoder_select="audio_frame_queue"
+pcm_mulaw_at_encoder_deps="audiotoolbox"
+pcm_mulaw_at_encoder_select="audio_frame_queue"
 chromaprint_muxer_deps="chromaprint"
 h264_videotoolbox_encoder_deps="videotoolbox_encoder pthreads"
 libcelt_decoder_deps="libcelt"
diff --git a/libavcodec/Makefile b/libavcodec/Makefile
index 53d3f0d..ef9eb98 100644
--- a/libavcodec/Makefile
+++ b/libavcodec/Makefile
@@ -815,6 +815,11 @@ OBJS-$(CONFIG_PCM_MULAW_AT_DECODER)   += 
audiotoolboxdec.o
 OBJS-$(CONFIG_PCM_ALAW_AT_DECODER)+= audiotoolboxdec.o
 OBJS-$(CONFIG_QDMC_AT_DECODER)+= audiotoolboxdec.o
 OBJS-$(CONFIG_QDM2_AT_DECODER)+= audiotoolboxdec.o
+OBJS-$(CONFIG_AAC_AT_ENCODER) += audiotoolboxenc.o
+OBJS-$(CONFIG_ALAC_AT_ENCODER)+= audiotoolboxenc.o
+OBJS-$(CONFIG_ILBC_AT_ENCODER)+= audiotoolboxenc.o
+OBJS-$(CONFIG_PCM_ALAW_AT_ENCODER)+= audiotoolboxenc.o
+OBJS-$(CONFIG_PCM_MULAW_AT_ENCODER)   += audiotoolboxenc.o
 OBJS-$(CONFIG_LIBCELT_DECODER)+= libcelt_dec.o
 OBJS-$(CONFIG_LIBDCADEC_DECODER)  += libdcadec.o dca.o
 OBJS-$(CONFIG_LIBFAAC_ENCODER)+= libfaac.o
diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c
index e9f971b..a953a16 100644
--- a/libavcodec/allcodecs.c
+++ b/libavcodec/allcodecs.c
@@ -563,18 +563,18 @@ void avcodec_register_all(void)
 REGISTER_ENCDEC (XSUB,  xsub);
 
 /* external libraries */
-REGISTER_DECODER(AAC_AT,aac_at);
+REGISTER_ENCDEC (AAC_AT,aac_at);
 REGISTER_DECODER(AC3_AT,ac3_at);
 REGISTER_DECODER(ADPCM_IMA_QT_AT,   adpcm_ima_qt_at);
-REGISTER_DECODER(ALAC_AT,   alac_at);
+REGISTER_ENCDEC (ALAC_AT,   alac_at);
 REGISTER_DECODER(AMR_NB_AT, amr_nb_at);
 REGISTER_DECODER(GSM_MS_AT, gsm_ms_at);
-REGISTER_DECODER(ILBC_AT,   ilbc_at);
+REGISTER_ENCDEC (ILBC_AT,   ilbc_at);
 REGISTER_DECODER(MP1_AT,mp1_at);
 REGISTER_DECODER(MP2_AT,mp2_at);
 REGISTER_DECODER(MP3_AT,mp3_at);
-REGISTER_DECODER(PCM_ALAW_AT,   pcm_alaw_at);
-REGISTER_DECODER(PCM_MULAW_AT,  pcm_mulaw_at);
+REGISTER_ENCDEC (PCM_ALAW_AT,   pcm_alaw_at);
+REGISTER_ENCDEC (PCM_MULAW_AT,  pcm_mulaw_at);
 REGISTER_DECODER(QDMC_AT,   qdmc_at);
 REGISTER_DECODER(QDM2_AT,   qdm2_at);
 REGISTER_DECODER(LIBCELT,   libcelt);
diff --git a/libavcodec/audiotoolboxenc.c b/libavcodec/audiotoolboxenc.c
new file mode 100644
index 000..cb53f2a
--- /dev/null
+++ b/libavcodec/audiotoolboxenc.c
@@ -0,0 +1,471 @@
+/*
+ * Audio Toolbox system codecs
+ *
+ * copyright (c) 2016 Rodger Combs
+ *
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 

[FFmpeg-cvslog] all: move ff_exp10, ff_exp10f, ff_fast_powf to lavu/ffmath.h

2016-03-22 Thread Ganesh Ajjanagadde
ffmpeg | branch: master | Ganesh Ajjanagadde  | Mon Mar 14 
21:28:56 2016 -0400| [db1a642cd213804ed1579a19c9f5db08407dad9b] | committer: 
Ganesh Ajjanagadde

all: move ff_exp10, ff_exp10f, ff_fast_powf to lavu/ffmath.h

The idea is to use ffmath.h for internal implementations of math functions.
Currently, it is used for variants of libm functions, but is by no means
limited to such things.

Note that this is not exported; use lavu/mathematics for such purposes.

Reviewed-by: Ronald S. Bultje 
Signed-off-by: Ganesh Ajjanagadde 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=db1a642cd213804ed1579a19c9f5db08407dad9b
---

 libavcodec/aacenc_utils.h   |2 +-
 libavcodec/aacpsy.c |3 +-
 libavcodec/acelp_pitch_delay.c  |3 +-
 libavcodec/cngdec.c |2 +-
 libavcodec/dcaenc.c |2 +-
 libavcodec/imc.c|2 +-
 libavcodec/on2avc.c |2 +-
 libavcodec/opus.c   |2 +-
 libavcodec/wmadec.c |3 +-
 libavcodec/wmaenc.c |2 +-
 libavcodec/wmaprodec.c  |2 +-
 libavfilter/af_anequalizer.c|1 +
 libavfilter/af_compand.c|1 +
 libavfilter/af_volume.c |1 +
 libavfilter/f_ebur128.c |1 +
 libavfilter/vaf_spectrumsynth.c |1 +
 libavfilter/vsrc_testsrc.c  |1 +
 libavutil/eval.c|1 +
 libavutil/ffmath.h  |   67 +++
 libavutil/internal.h|   36 -
 20 files changed, 85 insertions(+), 50 deletions(-)

diff --git a/libavcodec/aacenc_utils.h b/libavcodec/aacenc_utils.h
index 07f7337..bb1dcb4 100644
--- a/libavcodec/aacenc_utils.h
+++ b/libavcodec/aacenc_utils.h
@@ -28,7 +28,7 @@
 #ifndef AVCODEC_AACENC_UTILS_H
 #define AVCODEC_AACENC_UTILS_H
 
-#include "libavutil/internal.h"
+#include "libavutil/ffmath.h"
 #include "aac.h"
 #include "aacenctab.h"
 #include "aactab.h"
diff --git a/libavcodec/aacpsy.c b/libavcodec/aacpsy.c
index 8643fe7..0898baf 100644
--- a/libavcodec/aacpsy.c
+++ b/libavcodec/aacpsy.c
@@ -25,8 +25,7 @@
  */
 
 #include "libavutil/attributes.h"
-#include "libavutil/internal.h"
-#include "libavutil/libm.h"
+#include "libavutil/ffmath.h"
 
 #include "avcodec.h"
 #include "aactab.h"
diff --git a/libavcodec/acelp_pitch_delay.c b/libavcodec/acelp_pitch_delay.c
index c2533b1..8ec1ba3 100644
--- a/libavcodec/acelp_pitch_delay.c
+++ b/libavcodec/acelp_pitch_delay.c
@@ -21,9 +21,8 @@
  */
 
 #include "libavutil/common.h"
+#include "libavutil/ffmath.h"
 #include "libavutil/float_dsp.h"
-#include "libavutil/internal.h"
-#include "libavutil/libm.h"
 #include "libavutil/mathematics.h"
 #include "avcodec.h"
 #include "acelp_pitch_delay.h"
diff --git a/libavcodec/cngdec.c b/libavcodec/cngdec.c
index 0251086..34f8814 100644
--- a/libavcodec/cngdec.c
+++ b/libavcodec/cngdec.c
@@ -22,7 +22,7 @@
 #include 
 
 #include "libavutil/common.h"
-#include "libavutil/internal.h"
+#include "libavutil/ffmath.h"
 #include "avcodec.h"
 #include "celp_filters.h"
 #include "internal.h"
diff --git a/libavcodec/dcaenc.c b/libavcodec/dcaenc.c
index 70e9230..ab40e37 100644
--- a/libavcodec/dcaenc.c
+++ b/libavcodec/dcaenc.c
@@ -24,7 +24,7 @@
 #include "libavutil/avassert.h"
 #include "libavutil/channel_layout.h"
 #include "libavutil/common.h"
-#include "libavutil/internal.h"
+#include "libavutil/ffmath.h"
 #include "avcodec.h"
 #include "dca.h"
 #include "dcadata.h"
diff --git a/libavcodec/imc.c b/libavcodec/imc.c
index 085ec09..850bc9d 100644
--- a/libavcodec/imc.c
+++ b/libavcodec/imc.c
@@ -35,9 +35,9 @@
 #include 
 
 #include "libavutil/channel_layout.h"
+#include "libavutil/ffmath.h"
 #include "libavutil/float_dsp.h"
 #include "libavutil/internal.h"
-#include "libavutil/libm.h"
 #include "avcodec.h"
 #include "bswapdsp.h"
 #include "get_bits.h"
diff --git a/libavcodec/on2avc.c b/libavcodec/on2avc.c
index 62c71cc..3064c6f 100644
--- a/libavcodec/on2avc.c
+++ b/libavcodec/on2avc.c
@@ -21,8 +21,8 @@
  */
 
 #include "libavutil/channel_layout.h"
+#include "libavutil/ffmath.h"
 #include "libavutil/float_dsp.h"
-#include "libavutil/internal.h"
 #include "avcodec.h"
 #include "bytestream.h"
 #include "fft.h"
diff --git a/libavcodec/opus.c b/libavcodec/opus.c
index f2b8ecc..47f2657 100644
--- a/libavcodec/opus.c
+++ b/libavcodec/opus.c
@@ -27,7 +27,7 @@
 #include 
 
 #include "libavutil/error.h"
-#include "libavutil/internal.h"
+#include "libavutil/ffmath.h"
 
 #include "opus.h"
 #include "vorbis.h"
diff --git a/libavcodec/wmadec.c b/libavcodec/wmadec.c
index 1a84323..7130bf6 100644
--- a/libavcodec/wmadec.c
+++ b/libavcodec/wmadec.c
@@ -34,8 +34,7 @@
  */
 
 #include "libavutil/attributes.h"
-#include "libavutil/internal.h"
-#include "libavutil/libm.h"
+#include "libavutil/ffmath.h"
 
 #include "avcodec.h"
 #include "internal.h"
diff --git a/libavcodec/wmaenc.c b/libavcodec/wmaenc.c
index 

[FFmpeg-cvslog] Added a selftest to libavutil/display.c

2016-03-22 Thread Petru Rares Sincraian
ffmpeg | branch: master | Petru Rares Sincraian  | Sun 
Mar 20 09:54:07 2016 +0100| [124526ba1aee5b616b9f6cf2da6b5db85d05711d] | 
committer: Michael Niedermayer

Added a selftest to libavutil/display.c

- Check if av_display_rotation_get() gets the correct degrees
- Check if av_display_rotation_set() sets the correct matrix
- Check if av_display_matrix_flip() changes correct the matrix

Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=124526ba1aee5b616b9f6cf2da6b5db85d05711d
---

 libavutil/Makefile   |1 +
 libavutil/display.c  |   43 +++
 libavutil/display.h  |1 +
 tests/fate/libavutil.mak |4 
 tests/ref/fate/display   |   16 
 5 files changed, 65 insertions(+)

diff --git a/libavutil/Makefile b/libavutil/Makefile
index 58df75a..7a3076f 100644
--- a/libavutil/Makefile
+++ b/libavutil/Makefile
@@ -181,6 +181,7 @@ TESTPROGS = adler32 
\
 crc \
 des \
 dict\
+display \
 error   \
 eval\
 file\
diff --git a/libavutil/display.c b/libavutil/display.c
index a0076e0..ceed492 100644
--- a/libavutil/display.c
+++ b/libavutil/display.c
@@ -71,3 +71,46 @@ void av_display_matrix_flip(int32_t matrix[9], int hflip, 
int vflip)
 for (i = 0; i < 9; i++)
 matrix[i] *= flip[i % 3];
 }
+
+#ifdef TEST
+
+static void print_matrix(int32_t matrix[9])
+{
+int i, j;
+
+for (i = 0; i < 3; ++i) {
+for (j = 0; j < 3 - 1; ++j)
+printf("%d ", matrix[i*3 + j]);
+
+printf("%d\n", matrix[i*3 + j]);
+}
+}
+
+int main(void)
+{
+int32_t matrix[9];
+
+// Set the matrix to 90 degrees
+av_display_rotation_set(matrix, 90);
+print_matrix(matrix);
+printf("degrees: %f\n", av_display_rotation_get(matrix));
+
+// Set the matrix to -45 degrees
+av_display_rotation_set(matrix, -45);
+print_matrix(matrix);
+printf("degrees: %f\n", av_display_rotation_get(matrix));
+
+// flip horizontal
+av_display_matrix_flip(matrix, 1, 0);
+print_matrix(matrix);
+printf("degrees: %f\n", av_display_rotation_get(matrix));
+
+// flip vertical
+av_display_matrix_flip(matrix, 0, 1);
+print_matrix(matrix);
+printf("degrees: %f\n", av_display_rotation_get(matrix));
+
+return 0;
+
+}
+#endif
diff --git a/libavutil/display.h b/libavutil/display.h
index c0cfee3..39c15ee 100644
--- a/libavutil/display.h
+++ b/libavutil/display.h
@@ -22,6 +22,7 @@
 #define AVUTIL_DISPLAY_H
 
 #include 
+#include "common.h"
 
 /**
  * The display transformation matrix specifies an affine transformation that
diff --git a/tests/fate/libavutil.mak b/tests/fate/libavutil.mak
index 5d8e0e2..7f4fb7a 100644
--- a/tests/fate/libavutil.mak
+++ b/tests/fate/libavutil.mak
@@ -99,6 +99,10 @@ FATE_LIBAVUTIL-$(CONFIG_PIXELUTILS) += fate-pixelutils
 fate-pixelutils: libavutil/pixelutils-test$(EXESUF)
 fate-pixelutils: CMD = run libavutil/pixelutils-test
 
+FATE_LIBAVUTIL += fate-display
+fate-display: libavutil/display-test$(EXESUF)
+fate-display: CMD = run libavutil/display-test
+
 FATE_LIBAVUTIL += fate-random_seed
 fate-random_seed: libavutil/random_seed-test$(EXESUF)
 fate-random_seed: CMD = run libavutil/random_seed-test
diff --git a/tests/ref/fate/display b/tests/ref/fate/display
new file mode 100644
index 000..251e7e0
--- /dev/null
+++ b/tests/ref/fate/display
@@ -0,0 +1,16 @@
+0 65536 0
+-65536 0 0
+0 0 1073741824
+degrees: -90.00
+46340 -46340 0
+46340 46340 0
+0 0 1073741824
+degrees: 45.00
+-46340 -46340 0
+-46340 46340 0
+0 0 1073741824
+degrees: 135.00
+-46340 46340 0
+-46340 -46340 0
+0 0 1073741824
+degrees: -135.00

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] vc2enc: add non-experimental support for all video formats from spec

2016-03-22 Thread Rostislav Pehlivanov
ffmpeg | branch: master | Rostislav Pehlivanov  | Mon Mar 
21 17:32:55 2016 +| [2aebdfb451bb01165473f9b4d8e6a2c4997e3bf2] | committer: 
Rostislav Pehlivanov

vc2enc: add non-experimental support for all video formats from spec

Until now, for formats which were in the spec but not in the encoder's
list of supported formats required the -strict -1 flag. This enables
support for all video formats which are specified, all the way from
QSIF525 to 8K.

Signed-off-by: Rostislav Pehlivanov 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=2aebdfb451bb01165473f9b4d8e6a2c4997e3bf2
---

 libavcodec/vc2enc.c |   94 ---
 1 file changed, 59 insertions(+), 35 deletions(-)

diff --git a/libavcodec/vc2enc.c b/libavcodec/vc2enc.c
index 16e4110..209413f 100644
--- a/libavcodec/vc2enc.c
+++ b/libavcodec/vc2enc.c
@@ -39,6 +39,46 @@
 /* Decides the cutoff point in # of slices to distribute the leftover bytes */
 #define SLICE_REDIST_TOTAL 150
 
+typedef struct VC2BaseVideoFormat {
+enum AVPixelFormat pix_fmt;
+AVRational time_base;
+int width, height, interlaced, level;
+const char *name;
+} VC2BaseVideoFormat;
+
+static const VC2BaseVideoFormat base_video_fmts[] = {
+{ 0 }, /* Custom format, here just to make indexing equal to base_vf */
+{ AV_PIX_FMT_YUV420P,   { 1001, 15000 },  176,  120, 0, 1, "QSIF525" },
+{ AV_PIX_FMT_YUV420P,   {2,25 },  176,  144, 0, 1, "QCIF"},
+{ AV_PIX_FMT_YUV420P,   { 1001, 15000 },  352,  240, 0, 1, "SIF525"  },
+{ AV_PIX_FMT_YUV420P,   {2,25 },  352,  288, 0, 1, "CIF" },
+{ AV_PIX_FMT_YUV420P,   { 1001, 15000 },  704,  480, 0, 1, "4SIF525" },
+{ AV_PIX_FMT_YUV420P,   {2,25 },  704,  576, 0, 1, "4CIF"},
+
+{ AV_PIX_FMT_YUV422P10, { 1001, 3 },  720,  480, 1, 2,   "SD480I-60" },
+{ AV_PIX_FMT_YUV422P10, {1,25 },  720,  576, 1, 2,   "SD576I-50" },
+
+{ AV_PIX_FMT_YUV422P10, { 1001, 6 }, 1280,  720, 0, 3,  "HD720P-60"  },
+{ AV_PIX_FMT_YUV422P10, {1,50 }, 1280,  720, 0, 3,  "HD720P-50"  },
+{ AV_PIX_FMT_YUV422P10, { 1001, 3 }, 1920, 1080, 1, 3,  "HD1080I-60" },
+{ AV_PIX_FMT_YUV422P10, {1,25 }, 1920, 1080, 1, 3,  "HD1080I-50" },
+{ AV_PIX_FMT_YUV422P10, { 1001, 6 }, 1920, 1080, 1, 3,  "HD1080P-60" },
+{ AV_PIX_FMT_YUV422P10, {1,50 }, 1920, 1080, 1, 3,  "HD1080P-50" },
+
+{ AV_PIX_FMT_YUV444P12, {1,24 }, 2048, 1080, 0, 4,"DC2K" },
+{ AV_PIX_FMT_YUV444P12, {1,24 }, 4096, 2160, 0, 5,"DC4K" },
+
+{ AV_PIX_FMT_YUV422P10, { 1001, 6 }, 3840, 2160, 0, 6, "UHDTV 4K-60" },
+{ AV_PIX_FMT_YUV422P10, {1,50 }, 3840, 2160, 0, 6, "UHDTV 4K-50" },
+
+{ AV_PIX_FMT_YUV422P10, { 1001, 6 }, 7680, 4320, 0, 7, "UHDTV 8K-60" },
+{ AV_PIX_FMT_YUV422P10, {1,50 }, 7680, 4320, 0, 7, "UHDTV 8K-50" },
+
+{ AV_PIX_FMT_YUV422P10, { 1001, 24000 }, 1920, 1080, 0, 3,  "HD1080P-24" },
+{ AV_PIX_FMT_YUV422P10, { 1001, 3 },  720,  486, 1, 2,  "SD Pro486"  },
+};
+static const int base_video_fmts_len = FF_ARRAY_ELEMS(base_video_fmts);
+
 enum VC2_QM {
 VC2_QM_DEF = 0,
 VC2_QM_COL,
@@ -1054,40 +1094,23 @@ static av_cold int vc2_encode_init(AVCodecContext 
*avctx)
 s->interlaced = !((avctx->field_order == AV_FIELD_UNKNOWN) ||
   (avctx->field_order == AV_FIELD_PROGRESSIVE));
 
-if (avctx->pix_fmt == AV_PIX_FMT_YUV422P10) {
-if (avctx->width == 1280 && avctx->height == 720) {
-s->level = 3;
-if (avctx->time_base.num == 1001 && avctx->time_base.den == 6)
-s->base_vf = 9;
-if (avctx->time_base.num == 1 && avctx->time_base.den == 50)
-s->base_vf = 10;
-} else if (avctx->width == 1920 && avctx->height == 1080) {
-s->level = 3;
-if (s->interlaced) {
-if (avctx->time_base.num == 1001 && avctx->time_base.den == 
3)
-s->base_vf = 11;
-if (avctx->time_base.num == 1 && avctx->time_base.den == 50)
-s->base_vf = 12;
-} else {
-if (avctx->time_base.num == 1001 && avctx->time_base.den == 
6)
-s->base_vf = 13;
-if (avctx->time_base.num == 1 && avctx->time_base.den == 50)
-s->base_vf = 14;
-if (avctx->time_base.num == 1001 && avctx->time_base.den == 
24000)
-s->base_vf = 21;
-}
-} else if (avctx->width == 3840 && avctx->height == 2160) {
-s->level = 6;
-if (avctx->time_base.num == 1001 && avctx->time_base.den == 6)
-s->base_vf = 17;
-if (avctx->time_base.num == 1 && avctx->time_base.den == 50)
-s->base_vf = 18;
-}
-}
-
-if 

[FFmpeg-cvslog] swresample/swresample: Remove "less than" comparissions of enums

2016-03-22 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Tue 
Mar 22 14:11:03 2016 +0100| [914ad90eddce785592dd7fbe4c1b513c0025a383] | 
committer: Michael Niedermayer

swresample/swresample: Remove "less than" comparissions of enums

Found-by: wm4
Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=914ad90eddce785592dd7fbe4c1b513c0025a383
---

 libswresample/swresample.c |8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/libswresample/swresample.c b/libswresample/swresample.c
index 8e23899..e02ec81 100644
--- a/libswresample/swresample.c
+++ b/libswresample/swresample.c
@@ -213,10 +213,10 @@ av_cold int swr_init(struct SwrContext *s){
  s->rematrix_custom;
 
 if(s->int_sample_fmt == AV_SAMPLE_FMT_NONE){
-if(   av_get_planar_sample_fmt(s-> in_sample_fmt) <= AV_SAMPLE_FMT_S16P
-   && av_get_planar_sample_fmt(s->out_sample_fmt) <= 
AV_SAMPLE_FMT_S16P){
+if(   av_get_bytes_per_sample(s-> in_sample_fmt) <= 2
+   && av_get_bytes_per_sample(s->out_sample_fmt) <= 2){
 s->int_sample_fmt= AV_SAMPLE_FMT_S16P;
-}else if(   av_get_planar_sample_fmt(s-> in_sample_fmt) <= 
AV_SAMPLE_FMT_S16P
+}else if(   av_get_bytes_per_sample(s-> in_sample_fmt) <= 2
&& !s->rematrix
&& s->out_sample_rate==s->in_sample_rate
&& !(s->flags & SWR_FLAG_RESAMPLE)){
@@ -226,7 +226,7 @@ av_cold int swr_init(struct SwrContext *s){
  && !s->rematrix
  && s->engine != SWR_ENGINE_SOXR){
 s->int_sample_fmt= AV_SAMPLE_FMT_S32P;
-}else if(av_get_planar_sample_fmt(s->in_sample_fmt) <= 
AV_SAMPLE_FMT_FLTP){
+}else if(av_get_bytes_per_sample(s->in_sample_fmt) <= 4){
 s->int_sample_fmt= AV_SAMPLE_FMT_FLTP;
 }else{
 s->int_sample_fmt= AV_SAMPLE_FMT_DBLP;

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] lavf/img2dec: Skip COM when auto-detecting jpeg.

2016-03-22 Thread Carl Eugen Hoyos
ffmpeg | branch: master | Carl Eugen Hoyos  | Tue Mar 22 
11:13:24 2016 +0100| [ef888de1c1d2581d45c1917d8f9081b35ea07a72] | committer: 
Carl Eugen Hoyos

lavf/img2dec: Skip COM when auto-detecting jpeg.

It could theoretically contain invalid data that gets ignored by decoders.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ef888de1c1d2581d45c1917d8f9081b35ea07a72
---

 libavformat/img2dec.c |1 +
 1 file changed, 1 insertion(+)

diff --git a/libavformat/img2dec.c b/libavformat/img2dec.c
index fe0e346..6864374 100644
--- a/libavformat/img2dec.c
+++ b/libavformat/img2dec.c
@@ -742,6 +742,7 @@ static int jpeg_probe(AVProbeData *p)
 case APP13:
 case APP14:
 case APP15:
+case COM:
 i += AV_RB16([i + 2]) + 1;
 break;
 default:

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] fate: add audiomatch

2016-03-22 Thread Michael Niedermayer
ffmpeg | branch: master | Michael Niedermayer  | Mon 
Mar 21 04:18:48 2016 +0100| [14478b6c3820339442d8c96b701d021499de0827] | 
committer: Michael Niedermayer

fate: add audiomatch

Testset provided by Justin Greer 
Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=14478b6c3820339442d8c96b701d021499de0827
---

 .gitignore |1 +
 Makefile   |2 +-
 tests/Makefile |2 +-
 tests/audiomatch.c |  110 
 tests/fate-run.sh  |   12 +++
 tests/fate/gapless.mak |   92 
 .../fate/audiomatch-afconvert-16000-mono-he-adts   |1 +
 .../fate/audiomatch-afconvert-16000-mono-he-m4a|1 +
 .../fate/audiomatch-afconvert-16000-mono-lc-adts   |1 +
 .../fate/audiomatch-afconvert-16000-mono-lc-m4a|1 +
 .../fate/audiomatch-afconvert-16000-stereo-he-adts |1 +
 .../fate/audiomatch-afconvert-16000-stereo-he-m4a  |1 +
 .../audiomatch-afconvert-16000-stereo-he2-adts |1 +
 .../fate/audiomatch-afconvert-16000-stereo-he2-m4a |1 +
 .../fate/audiomatch-afconvert-16000-stereo-lc-adts |1 +
 .../fate/audiomatch-afconvert-16000-stereo-lc-m4a  |1 +
 .../fate/audiomatch-afconvert-44100-mono-he-adts   |1 +
 .../fate/audiomatch-afconvert-44100-mono-he-m4a|1 +
 .../fate/audiomatch-afconvert-44100-mono-lc-adts   |1 +
 .../fate/audiomatch-afconvert-44100-mono-lc-m4a|1 +
 .../fate/audiomatch-afconvert-44100-stereo-he-adts |1 +
 .../fate/audiomatch-afconvert-44100-stereo-he-m4a  |1 +
 .../audiomatch-afconvert-44100-stereo-he2-adts |1 +
 .../fate/audiomatch-afconvert-44100-stereo-he2-m4a |1 +
 .../fate/audiomatch-afconvert-44100-stereo-lc-adts |1 +
 .../fate/audiomatch-afconvert-44100-stereo-lc-m4a  |1 +
 tests/ref/fate/audiomatch-dolby-44100-mono-he-mp4  |1 +
 tests/ref/fate/audiomatch-dolby-44100-mono-lc-mp4  |1 +
 .../ref/fate/audiomatch-dolby-44100-stereo-he-mp4  |1 +
 .../ref/fate/audiomatch-dolby-44100-stereo-he2-mp4 |1 +
 .../ref/fate/audiomatch-dolby-44100-stereo-lc-mp4  |1 +
 tests/ref/fate/audiomatch-faac-16000-mono-lc-adts  |1 +
 tests/ref/fate/audiomatch-faac-16000-mono-lc-m4a   |1 +
 .../ref/fate/audiomatch-faac-16000-stereo-lc-adts  |1 +
 tests/ref/fate/audiomatch-faac-16000-stereo-lc-m4a |1 +
 tests/ref/fate/audiomatch-faac-44100-mono-lc-adts  |1 +
 tests/ref/fate/audiomatch-faac-44100-mono-lc-m4a   |1 +
 .../ref/fate/audiomatch-faac-44100-stereo-lc-adts  |1 +
 tests/ref/fate/audiomatch-faac-44100-stereo-lc-m4a |1 +
 tests/ref/fate/audiomatch-nero-16000-mono-he-m4a   |1 +
 tests/ref/fate/audiomatch-nero-16000-mono-lc-m4a   |1 +
 tests/ref/fate/audiomatch-nero-16000-stereo-he-m4a |1 +
 .../ref/fate/audiomatch-nero-16000-stereo-he2-m4a  |1 +
 tests/ref/fate/audiomatch-nero-16000-stereo-lc-m4a |1 +
 tests/ref/fate/audiomatch-nero-44100-mono-he-m4a   |1 +
 tests/ref/fate/audiomatch-nero-44100-mono-lc-m4a   |1 +
 tests/ref/fate/audiomatch-nero-44100-stereo-he-m4a |1 +
 .../ref/fate/audiomatch-nero-44100-stereo-he2-m4a  |1 +
 tests/ref/fate/audiomatch-nero-44100-stereo-lc-m4a |1 +
 .../fate/audiomatch-quicktime7-44100-stereo-lc-mp4 |1 +
 .../fate/audiomatch-quicktimeX-44100-stereo-lc-m4a |1 +
 tests/ref/fate/audiomatch-square-aac   |1 +
 tests/ref/fate/audiomatch-square-mp3   |1 +
 53 files changed, 264 insertions(+), 2 deletions(-)

diff --git a/.gitignore b/.gitignore
index 9fc0ac2..3e6e18c 100644
--- a/.gitignore
+++ b/.gitignore
@@ -66,6 +66,7 @@
 /libavutil/ffversion.h
 /src
 /tests/audiogen
+/tests/audiomatch
 /tests/base64
 /tests/checkasm/checkasm
 /tests/data/
diff --git a/Makefile b/Makefile
index 87a9869..d881fcc 100644
--- a/Makefile
+++ b/Makefile
@@ -39,7 +39,7 @@ OBJS-ffmpeg-$(CONFIG_VIDEOTOOLBOX) += ffmpeg_videotoolbox.o
 OBJS-ffmpeg-$(CONFIG_LIBMFX)  += ffmpeg_qsv.o
 OBJS-ffserver += ffserver_config.o
 
-TESTTOOLS   = audiogen videogen rotozoom tiny_psnr tiny_ssim base64
+TESTTOOLS   = audiogen videogen rotozoom tiny_psnr tiny_ssim base64 audiomatch
 HOSTPROGS  := $(TESTTOOLS:%=tests/%) doc/print_options
 TOOLS   = qt-faststart trasher uncoded_frame
 TOOLS-$(CONFIG_ZLIB) += cws2fws
diff --git a/tests/Makefile b/tests/Makefile
index 6e5dfa6..6fef0cd 100644
--- a/tests/Makefile
+++ b/tests/Makefile
@@ -200,7 +200,7 @@ $(FATE_EXTERN):
@echo "$@ requires external samples and SAMPLES not specified"; false
 endif
 
-FATE_UTILS = base64 tiny_psnr tiny_ssim
+FATE_UTILS = base64 tiny_psnr tiny_ssim audiomatch
 
 TOOL = ffmpeg
 
diff --git a/tests/audiomatch.c b/tests/audiomatch.c
new file mode 100644
index