ffmpeg.git
5 years agox86/scale: fix xmm register count for hscale*_sse2
James Almer [Mon, 9 Jun 2014 01:21:30 +0000 (22:21 -0300)]
x86/scale: fix xmm register count for hscale*_sse2

xmm6 was being clobbered in ff_hscale8to{15,19}_8_sse2 on Win64

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agox86/dct32: don't build ff_dct32_float_sse on x86_64
James Almer [Sun, 8 Jun 2014 22:39:21 +0000 (19:39 -0300)]
x86/dct32: don't build ff_dct32_float_sse on x86_64

There's an SSE2 version already, and technically the SSE version
on x86_64 was wrong (using pshufd and pshuflw, SSE2 instructions).

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/options_table: improve max/min rate help text
Michael Niedermayer [Sun, 8 Jun 2014 19:45:39 +0000 (21:45 +0200)]
avcodec/options_table: improve max/min rate help text

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agox86/float_dsp: add missing femms
James Almer [Sun, 8 Jun 2014 15:56:55 +0000 (12:56 -0300)]
x86/float_dsp: add missing femms

It was lost during the port.
Should fix fate on 3dnowext machines.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/pthread_slice: Use av_malloc(z)_array()
Michael Niedermayer [Sun, 8 Jun 2014 14:34:50 +0000 (16:34 +0200)]
avcodec/pthread_slice: Use av_malloc(z)_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/pthread_frame: Use av_mallocz_array()
Michael Niedermayer [Sun, 8 Jun 2014 14:34:20 +0000 (16:34 +0200)]
avcodec/pthread_frame: Use av_mallocz_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec: fix () in TRANSPOSE macro
Michael Niedermayer [Sun, 8 Jun 2014 13:26:18 +0000 (15:26 +0200)]
avcodec: fix () in TRANSPOSE macro

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/movenc: use av_malloc(z)_array()
Michael Niedermayer [Sun, 8 Jun 2014 13:19:46 +0000 (15:19 +0200)]
avformat/movenc: use av_malloc(z)_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/aacpsy: Use av_mallocz_array()
Michael Niedermayer [Sun, 8 Jun 2014 12:34:31 +0000 (14:34 +0200)]
avcodec/aacpsy:  Use av_mallocz_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/alsdec: Clear MPEG4AudioConfig so that no use of uninitialized memory is...
Michael Niedermayer [Sun, 8 Jun 2014 12:30:30 +0000 (14:30 +0200)]
avcodec/alsdec: Clear MPEG4AudioConfig so that no use of uninitialized memory is possible

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agox86/float_dsp: port vector_fmul_window to yasm
James Almer [Sun, 8 Jun 2014 07:05:16 +0000 (04:05 -0300)]
x86/float_dsp: port vector_fmul_window to yasm

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoconfigure: add llauddsp dependancy for wmalossless_decoder
Michael Niedermayer [Sun, 8 Jun 2014 01:10:24 +0000 (03:10 +0200)]
configure: add llauddsp dependancy for wmalossless_decoder

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agox86/vp9: inital AVX2 intra_pred
James Almer [Mon, 19 May 2014 03:02:21 +0000 (00:02 -0300)]
x86/vp9: inital AVX2 intra_pred

tos3k-vp9-b10000.webm on a Core i5-4200U @1.6GHz

1219 decicycles in ff_vp9_ipred_dc_32x32_ssse3, 131070 runs, 2 skips
439 decicycles in ff_vp9_ipred_dc_32x32_avx2, 131070 runs, 2 skips

3570 decicycles in ff_vp9_ipred_dc_top_32x32_ssse3, 4096 runs, 0 skips
2494 decicycles in ff_vp9_ipred_dc_top_32x32_avx2, 4096 runs, 0 skips

1419 decicycles in ff_vp9_ipred_dc_left_32x32_ssse3, 16384 runs, 0 skips
717 decicycles in ff_vp9_ipred_dc_left_32x32_avx2, 16384 runs, 0 skips

2737 decicycles in ff_vp9_ipred_tm_32x32_avx, 1024 runs, 0 skips
2088 decicycles in ff_vp9_ipred_tm_32x32_avx2, 1024 runs, 0 skips

3090 decicycles in ff_vp9_ipred_v_32x32_avx, 512 runs, 0 skips
2226 decicycles in ff_vp9_ipred_v_32x32_avx2, 512 runs, 0 skips

1565 decicycles in ff_vp9_ipred_h_32x32_avx, 1024 runs, 0 skips
922 decicycles in ff_vp9_ipred_h_32x32_avx2, 1024 runs, 0 skips

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/hevc_sei: fix invalid get_bits() in a comment
Michael Niedermayer [Sat, 7 Jun 2014 21:37:27 +0000 (23:37 +0200)]
avcodec/hevc_sei: fix invalid get_bits() in a comment

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoffmpeg: support setting AVStream.discard
Michael Niedermayer [Sat, 31 May 2014 03:53:06 +0000 (05:53 +0200)]
ffmpeg: support setting AVStream.discard

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoffmpeg_opt: remove unused variable and undocumented and not working command line...
Michael Niedermayer [Sat, 31 May 2014 03:02:35 +0000 (05:02 +0200)]
ffmpeg_opt: remove unused variable and undocumented and not working command line option

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/tscc2: fix macro ()
Michael Niedermayer [Sat, 7 Jun 2014 15:44:23 +0000 (17:44 +0200)]
avcodec/tscc2: fix macro ()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/tta: fix macro ()
Michael Niedermayer [Sat, 7 Jun 2014 15:43:52 +0000 (17:43 +0200)]
avcodec/tta: fix macro ()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavfilter/af_amix: Use av_mallocz_array()
Michael Niedermayer [Sat, 7 Jun 2014 13:06:14 +0000 (15:06 +0200)]
avfilter/af_amix: Use av_mallocz_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavfilter/af_channelmap: Use av_mallocz_array()
Michael Niedermayer [Sat, 7 Jun 2014 13:05:51 +0000 (15:05 +0200)]
avfilter/af_channelmap: Use av_mallocz_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavfilter/af_aphaser: Use av_malloc_array()
Michael Niedermayer [Sat, 7 Jun 2014 13:05:33 +0000 (15:05 +0200)]
avfilter/af_aphaser: Use av_malloc_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavdevice/lavfi: Use av_malloc_array()
Michael Niedermayer [Sat, 7 Jun 2014 13:04:50 +0000 (15:04 +0200)]
avdevice/lavfi: Use av_malloc_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/udp: fix build on MINIX
Michael Niedermayer [Sat, 7 Jun 2014 12:43:07 +0000 (14:43 +0200)]
avformat/udp: fix build on MINIX

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/flvenc: Do not allow creating h263/mpeg4 in flv without unofficial format...
Michael Niedermayer [Sat, 7 Jun 2014 10:03:31 +0000 (12:03 +0200)]
avformat/flvenc: Do not allow creating h263/mpeg4 in flv without unofficial format extensions being enabled.

Found-by: Jean-Baptiste Kempf <jb@videolan.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/vorbisdec: Reset first_frame
Michael Niedermayer [Fri, 6 Jun 2014 23:27:40 +0000 (01:27 +0200)]
avcodec/vorbisdec: Reset first_frame

This avoids returning a initial frame after seeking which does
not match what would be received when decoding from the begin.

Suggested-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/libvpxenc: update the ranges for "cpu_used" so it matches the "speed" alias
Michael Niedermayer [Fri, 6 Jun 2014 19:21:20 +0000 (21:21 +0200)]
avcodec/libvpxenc: update the ranges for "cpu_used" so it matches the "speed" alias

Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/libvpxenc: Update the "cpu-used" options default to match the "speed" alias
Rafaël Carré [Fri, 6 Jun 2014 19:01:35 +0000 (21:01 +0200)]
avcodec/libvpxenc: Update the "cpu-used" options default to match the "speed" alias

Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '3d79d0c93e5b37a35b1b22d6c18699c233aad1ba'
Michael Niedermayer [Fri, 6 Jun 2014 21:42:15 +0000 (23:42 +0200)]
Merge commit '3d79d0c93e5b37a35b1b22d6c18699c233aad1ba'

* commit '3d79d0c93e5b37a35b1b22d6c18699c233aad1ba':
  adpcm: Avoid reading out of bounds in the IMA QT trellis encoder

See: a32765c4252eb106a2ade543026ef6f59e699bfa
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '103243ca649cc305129ed0352bf4d97e5ddf4d80'
Michael Niedermayer [Fri, 6 Jun 2014 21:35:03 +0000 (23:35 +0200)]
Merge commit '103243ca649cc305129ed0352bf4d97e5ddf4d80'

* commit '103243ca649cc305129ed0352bf4d97e5ddf4d80':
  oggenc: Set the right AVOption size for the pref_duration option

See: 536baf6cc5d1db789c9f903776dccb7a41b62a6e
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'f558f0d2da9426c7f5ba346b5b8e6eb720148362'
Michael Niedermayer [Fri, 6 Jun 2014 21:29:17 +0000 (23:29 +0200)]
Merge commit 'f558f0d2da9426c7f5ba346b5b8e6eb720148362'

* commit 'f558f0d2da9426c7f5ba346b5b8e6eb720148362':
  avcodec options: add enum option for color_range

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '7c29b7229bedf0c37d09bd02dab88e563adffd3c'
Michael Niedermayer [Fri, 6 Jun 2014 21:19:41 +0000 (23:19 +0200)]
Merge commit '7c29b7229bedf0c37d09bd02dab88e563adffd3c'

* commit '7c29b7229bedf0c37d09bd02dab88e563adffd3c':
  avcodec options: add enum option for colorspace

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'efc2dfe6a0238ec08769626db899ea910be24407'
Michael Niedermayer [Fri, 6 Jun 2014 21:09:22 +0000 (23:09 +0200)]
Merge commit 'efc2dfe6a0238ec08769626db899ea910be24407'

* commit 'efc2dfe6a0238ec08769626db899ea910be24407':
  avcodec options: add enum option for color_trc

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'bd71c300f9ba7f9875bb5df17ce522e9128bae10'
Michael Niedermayer [Fri, 6 Jun 2014 21:00:09 +0000 (23:00 +0200)]
Merge commit 'bd71c300f9ba7f9875bb5df17ce522e9128bae10'

* commit 'bd71c300f9ba7f9875bb5df17ce522e9128bae10':
  avcodec options: add enum option for color_primaries

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/mpeg12enc: store sequence display extension only if we have something to...
Michael Niedermayer [Fri, 6 Jun 2014 20:38:37 +0000 (22:38 +0200)]
avcodec/mpeg12enc: store sequence display extension only if we have something to store in it

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '8a06794112d02a5707f766b8b38a5d50dfd03898'
Michael Niedermayer [Fri, 6 Jun 2014 20:36:07 +0000 (22:36 +0200)]
Merge commit '8a06794112d02a5707f766b8b38a5d50dfd03898'

* commit '8a06794112d02a5707f766b8b38a5d50dfd03898':
  mpeg2: add sequence display extension information

Conflicts:
libavcodec/mpeg12enc.c
tests/ref/lavf/gxf
tests/ref/lavf/mxf
tests/ref/lavf/mxf_d10
tests/ref/lavf/ts
tests/ref/seek/lavf-gxf
tests/ref/seek/lavf-mxf
tests/ref/seek/lavf-ts
tests/ref/seek/vsynth2-mpeg2-422
tests/ref/seek/vsynth2-mpeg2-idct-int
tests/ref/seek/vsynth2-mpeg2-ilace
tests/ref/seek/vsynth2-mpeg2-ivlc-qprd
tests/ref/seek/vsynth2-mpeg2-thread
tests/ref/seek/vsynth2-mpeg2-thread-ivlc
tests/ref/vsynth/vsynth1-mpeg2
tests/ref/vsynth/vsynth1-mpeg2-422
tests/ref/vsynth/vsynth1-mpeg2-idct-int
tests/ref/vsynth/vsynth1-mpeg2-ilace
tests/ref/vsynth/vsynth1-mpeg2-ivlc-qprd
tests/ref/vsynth/vsynth1-mpeg2-thread
tests/ref/vsynth/vsynth1-mpeg2-thread-ivlc
tests/ref/vsynth/vsynth2-mpeg2
tests/ref/vsynth/vsynth2-mpeg2-422
tests/ref/vsynth/vsynth2-mpeg2-idct-int
tests/ref/vsynth/vsynth2-mpeg2-ilace
tests/ref/vsynth/vsynth2-mpeg2-ivlc-qprd
tests/ref/vsynth/vsynth2-mpeg2-thread
tests/ref/vsynth/vsynth2-mpeg2-thread-ivlc

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agohuffyuvdec: trick for plane decoding <= 14bits
Christophe Gisquet [Thu, 5 Jun 2014 21:37:00 +0000 (23:37 +0200)]
huffyuvdec: trick for plane decoding <= 14bits

Refactor the code to minimize code duplication.

Before:
130870 decicycles in g, 1048139 runs, 437 skips
10bits:  9.048
12bits: 10.733

After:
126960 decicycles in g, 1048136 runs, 440 skips
10bits:  8.642
12bits:  9.656

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavf/matroskaenc: Fix Cues on Audio for WebM DASH
Vignesh Venkatasubramanian [Fri, 6 Jun 2014 18:26:11 +0000 (11:26 -0700)]
lavf/matroskaenc: Fix Cues on Audio for WebM DASH

Fix a change that was broken by [1]. Cues must be added for audio frames
on cluster start for WebM when the DASH flag is passed. Restoring
correct functionality.

[1] http://goo.gl/xYLq7Z

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavutil/libm: fix fminf() emulation build failure due to undefined FFMIN
Michael Niedermayer [Fri, 6 Jun 2014 18:25:04 +0000 (20:25 +0200)]
avutil/libm: fix fminf() emulation build failure due to undefined FFMIN

Found-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoadpcm: Avoid reading out of bounds in the IMA QT trellis encoder
Martin Storsjö [Thu, 5 Jun 2014 08:48:53 +0000 (11:48 +0300)]
adpcm: Avoid reading out of bounds in the IMA QT trellis encoder

This was broken in 095be4fb - samples+ch (for the previous
non-planar case) equals &samples_p[ch][0]. The confusion
probably stemmed from the IMA WAV case where it originally
was &samples[avctx->channels + ch], which was correctly
changed into &samples_p[ch][1].

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agooggenc: Set the right AVOption size for the pref_duration option
Martin Storsjö [Fri, 6 Jun 2014 10:59:14 +0000 (13:59 +0300)]
oggenc: Set the right AVOption size for the pref_duration option

On big endian machines, the default value set via the faulty
AVOption ended up as 2^32 times too big.

This fixes the fate-lavf-ogg test which currently is broken on
big endian machines, broken since 3831362. Since that commit,
a final zero-sized packet is written to the ogg muxer in that test,
which caused different flushing behaviour on little and big endian
depending on whether the pref_duration option was handled as it
should or not.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoavcodec/adpcmenc: fix integer overflow / undefined behavior in STORE_NODE()
Michael Niedermayer [Fri, 6 Jun 2014 15:56:26 +0000 (17:56 +0200)]
avcodec/adpcmenc: fix integer overflow / undefined behavior in STORE_NODE()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agofate: enable fate-seek-acodec-adpcm-ima_qt-trellis
Michael Niedermayer [Fri, 6 Jun 2014 15:39:23 +0000 (17:39 +0200)]
fate: enable fate-seek-acodec-adpcm-ima_qt-trellis

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavfilter/avf_showcqt: avoid using fminf()
Michael Niedermayer [Fri, 6 Jun 2014 14:31:31 +0000 (16:31 +0200)]
avfilter/avf_showcqt: avoid using fminf()

The loop with fminf() changes from 18093856 to 17403218 dezicycles (gcc 4.6.3, sandybridge i7)

Reviewed-by: Clément Bœsch <u@pkh.me>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavutil/libm: Replace macro based fminf() by function
Michael Niedermayer [Fri, 6 Jun 2014 14:29:02 +0000 (16:29 +0200)]
avutil/libm: Replace macro based fminf() by function

This avoids issues when the FFMIN parameter evaluation has side effects

Reviewed-by: Clément Bœsch <u@pkh.me>
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoadpcm: Write the proper predictor in trellis mode in IMA QT
Martin Storsjö [Fri, 6 Jun 2014 09:03:09 +0000 (12:03 +0300)]
adpcm: Write the proper predictor in trellis mode in IMA QT

The actual predictor value, set by the trellis code, never
was written back into the variable that was written into
the block header. This was accidentally removed in b304244b.

This significantly improves the audio quality of the trellis
case, which was plain broken since b304244b.

Encoding IMA QT with trellis still actually gives a slightly
worse quality than without trellis, since the trellis encoder
doesn't use the exact same way of rounding as in
adpcm_ima_qt_compress_sample and adpcm_ima_qt_expand_nibble.

Fixes part of Ticket3701

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agofate: enable adpcm-ima_qt-trellis
Michael Niedermayer [Fri, 6 Jun 2014 13:25:51 +0000 (15:25 +0200)]
fate: enable adpcm-ima_qt-trellis

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoadpcm: Fix trellis encoding of IMA QT
Martin Storsjö [Thu, 5 Jun 2014 08:56:10 +0000 (11:56 +0300)]
adpcm: Fix trellis encoding of IMA QT

This was broken in 095be4fb - samples+ch (for the previous
non-planar case) equals &samples_p[ch][0]. The confusion
probably stemmed from the IMA WAV case where it originally
was &samples[avctx->channels + ch], which was correctly
changed into &samples_p[ch][1].

Fixes part of Ticket3701

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec options: add enum option for color_range
Marc-Antoine Arnaud [Wed, 4 Jun 2014 08:32:19 +0000 (10:32 +0200)]
avcodec options: add enum option for color_range

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
5 years agoavcodec options: add enum option for colorspace
Marc-Antoine Arnaud [Tue, 3 Jun 2014 09:52:11 +0000 (11:52 +0200)]
avcodec options: add enum option for colorspace

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
5 years agoavcodec options: add enum option for color_trc
Marc-Antoine Arnaud [Tue, 3 Jun 2014 09:53:21 +0000 (11:53 +0200)]
avcodec options: add enum option for color_trc

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
5 years agoavcodec options: add enum option for color_primaries
Marc-Antoine Arnaud [Tue, 3 Jun 2014 09:51:34 +0000 (11:51 +0200)]
avcodec options: add enum option for color_primaries

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
5 years agompeg2: add sequence display extension information
Marc-Antoine Arnaud [Wed, 4 Jun 2014 07:26:55 +0000 (09:26 +0200)]
mpeg2: add sequence display extension information

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
5 years agoavutil/libm: use FFMIN instead of fmin()
Michael Niedermayer [Fri, 6 Jun 2014 14:02:53 +0000 (16:02 +0200)]
avutil/libm: use FFMIN instead of fmin()

MSVC apparently doesnt support fmin() either

Suggested/Found-by: ubitux, Daemon404, nevcairiel
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/mov: fix "warning: variable altitude set but not used" warning
Michael Niedermayer [Fri, 6 Jun 2014 13:05:11 +0000 (15:05 +0200)]
avformat/mov: fix "warning: variable altitude set but not used" warning

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavutil/libm: fix fminf typo
Michael Niedermayer [Fri, 6 Jun 2014 13:45:09 +0000 (15:45 +0200)]
avutil/libm: fix fminf typo

Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agobuild: add fminf() emulation
Michael Niedermayer [Fri, 6 Jun 2014 12:54:57 +0000 (14:54 +0200)]
build: add fminf() emulation

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge remote-tracking branch 'cehoyos/master'
Michael Niedermayer [Fri, 6 Jun 2014 12:01:17 +0000 (14:01 +0200)]
Merge remote-tracking branch 'cehoyos/master'

* cehoyos/master:
  Allow >2G for skip_initial_bytes.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agowma lossless: reuse scalarproduct_and_madd_int16
Christophe Gisquet [Sat, 24 Nov 2012 14:55:49 +0000 (15:55 +0100)]
wma lossless: reuse scalarproduct_and_madd_int16

This is done by padding the coefficient buffer with 0s, because the order
may be only a multiple of 4, and the DSP function requires batches of 8.

However, no sample with such a case was found, so request one if it uses
that kind of order.

Approximate relative speedup depending on instruction set:
plain C: -6%
mmxext:  51%
sse2:    54%

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '2f7065190ad48744014a02288799d03adfa613e0'
Michael Niedermayer [Fri, 6 Jun 2014 11:33:14 +0000 (13:33 +0200)]
Merge commit '2f7065190ad48744014a02288799d03adfa613e0'

* commit '2f7065190ad48744014a02288799d03adfa613e0':
  libfdk-aac: Relicense the library wrappers to the ISC license

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'e7d6d0bf3c5cc1bc048b0ddbc169a91862568e0c'
Michael Niedermayer [Fri, 6 Jun 2014 11:24:30 +0000 (13:24 +0200)]
Merge commit 'e7d6d0bf3c5cc1bc048b0ddbc169a91862568e0c'

* commit 'e7d6d0bf3c5cc1bc048b0ddbc169a91862568e0c':
  mov: Export geotag metadata fields

Conflicts:
libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolibfdk-aac: Relicense the library wrappers to the ISC license
Martin Storsjö [Fri, 6 Jun 2014 07:48:27 +0000 (10:48 +0300)]
libfdk-aac: Relicense the library wrappers to the ISC license

This reduces the number of different licenses used within libav,
and is preferrable since it has less ambiguous wordings than
the BSD license with respect to the duties of the user of the code.

Fraunhofer have now indicated that they're allowed to contribute
code under this license as well.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agomov: Export geotag metadata fields
Martin Storsjö [Tue, 3 Jun 2014 11:48:19 +0000 (14:48 +0300)]
mov: Export geotag metadata fields

The '?xyz' form is used by android devices (and according to apple
mailing list archives, also by older iOS devices). The 'loci' field
(defined in 3GPP 26.244) is used by recent iOS devices.

Even though the loci field can contain an altitude, it was plain
0 in my sample. Just export longitude and latitude, in a string
format matching the one used by the '?xyz' metadata field.

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoAllow >2G for skip_initial_bytes.
Carl Eugen Hoyos [Thu, 5 Jun 2014 22:05:31 +0000 (00:05 +0200)]
Allow >2G for skip_initial_bytes.

5 years agox86/dsputil: move some mmx init code inside dsputil_init_mmx()
James Almer [Fri, 6 Jun 2014 01:01:46 +0000 (22:01 -0300)]
x86/dsputil: move some mmx init code inside dsputil_init_mmx()

This reduces differences with the fork

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/mjpegdec: Improve intel jpeg flip heuristic
Michael Niedermayer [Thu, 5 Jun 2014 23:32:22 +0000 (01:32 +0200)]
avcodec/mjpegdec: Improve intel jpeg flip heuristic

Fixes Ticket3698

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/aic: fix quantization table permutation
Michael Niedermayer [Thu, 5 Jun 2014 21:21:15 +0000 (23:21 +0200)]
avcodec/aic: fix quantization table permutation

Fixes Ticket3700

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/mpegaudiodec: Reset dither and mdct state
Michael Niedermayer [Thu, 5 Jun 2014 19:23:31 +0000 (21:23 +0200)]
avcodec/mpegaudiodec: Reset dither and mdct state

This makes the mp3 decoder produce the same result when repeatly flushing and decoding

Suggested-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoapedsp: move to llauddsp
Christophe Gisquet [Fri, 30 May 2014 14:28:49 +0000 (16:28 +0200)]
apedsp: move to llauddsp

APE is not the sole codec using scalarproduct_and_madd_int16.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'd816e125fe1fa5c909b706d47904a4d6c1799996'
Michael Niedermayer [Thu, 5 Jun 2014 16:55:44 +0000 (18:55 +0200)]
Merge commit 'd816e125fe1fa5c909b706d47904a4d6c1799996'

* commit 'd816e125fe1fa5c909b706d47904a4d6c1799996':
  dict: const correctness for av_dict_get() and av_dict_copy()

Conflicts:
libavutil/dict.c
libavutil/dict.h

See: e12a73246d8ce7d0fc4036522688934e26de4bb1
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoffmpeg: prevent pts < dts to be passed through to the muxer on stream copy
Michael Niedermayer [Thu, 5 Jun 2014 16:37:32 +0000 (18:37 +0200)]
ffmpeg: prevent pts < dts to be passed through to the muxer on stream copy

Fixes Ticket3658

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodict: const correctness for av_dict_get() and av_dict_copy()
Diego Biurrun [Wed, 4 Jun 2014 11:58:33 +0000 (04:58 -0700)]
dict: const correctness for av_dict_get() and av_dict_copy()

5 years agoavfilter: new multimedia filter avf_showcqt.c
Muhammad Faiz [Thu, 5 Jun 2014 04:42:38 +0000 (11:42 +0700)]
avfilter: new multimedia filter avf_showcqt.c

this filter is the same as showspectrum but with constant Q transform,
so frequency is spaced logarithmically

5 years agotests: add adpcm trellis tests
Timothy Gu [Thu, 5 Jun 2014 02:21:29 +0000 (19:21 -0700)]
tests: add adpcm trellis tests

adpcm_ima_qt does not produce reproducible results, so it is temporarily
disabled (see #3701).

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agotests: Add ac3_fixed decoder test
Timothy Gu [Thu, 5 Jun 2014 02:21:28 +0000 (19:21 -0700)]
tests: Add ac3_fixed decoder test

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agotests/swr: move the results out of the functions
Timothy Gu [Thu, 5 Jun 2014 02:21:27 +0000 (19:21 -0700)]
tests/swr: move the results out of the functions

This prevents all results from being declared whenever the function is called.

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavutil/ppc/intreadwrite: try to fix intreadwrite for ppc64le
Michael Niedermayer [Thu, 5 Jun 2014 01:21:32 +0000 (03:21 +0200)]
avutil/ppc/intreadwrite: try to fix intreadwrite for ppc64le

Untested due to lack of hardware

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agohuffyuvdec: remove superfluous check in BGR code
Christophe Gisquet [Wed, 4 Jun 2014 20:48:59 +0000 (20:48 +0000)]
huffyuvdec: remove superfluous check in BGR code

Before: 154861 decicycles
After:  152912 decicycles

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agohuffyuvdec: remove superfluous check
Christophe Gisquet [Wed, 4 Jun 2014 20:48:58 +0000 (20:48 +0000)]
huffyuvdec: remove superfluous check

An invalid entry already has the property of having a negative number
of bits, so remove the check on the reserved value, and rearrange the
code as a consequence.

346800 decicycles in 422, 262079 runs, 65 skips
168197 decicycles in gray, 262077 runs, 67 skips
Overall time: 7.878s

319076 decicycles in 422, 262096 runs, 48 skips
159875 decicycles in gray, 262057 runs, 87 skips
Overall time: 7.394s

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agohuffyuvdec: trick for plane decoding, 8bits
Christophe Gisquet [Wed, 4 Jun 2014 20:48:57 +0000 (20:48 +0000)]
huffyuvdec: trick for plane decoding, 8bits

10496 -> 9105 cycles.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agohuffyuvdec: clean up macro
Christophe Gisquet [Wed, 4 Jun 2014 20:48:56 +0000 (20:48 +0000)]
huffyuvdec: clean up macro

It's no longer used inside another specific macro, so rename it.
Also remove duplicated definition and realign code.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/dcadec: Check dca_dmixtable index
Michael Niedermayer [Wed, 4 Jun 2014 20:13:39 +0000 (22:13 +0200)]
avcodec/dcadec: Check dca_dmixtable index

Found-by: Niels Möller <nisse@lysator.liu.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/dcadec: remove fishy FFMAX()
Michael Niedermayer [Wed, 4 Jun 2014 19:44:49 +0000 (21:44 +0200)]
avcodec/dcadec: remove fishy FFMAX()

These where intended to maintain the previous behavior before dca_dmix_code()
but it is unclear (to me) which way is correct and no sample seem to trigger
the case, also they are incomplete for the purprose of error checking

Found-by: Niels Möller <nisse@lysator.liu.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge remote-tracking branch 'cehoyos/master'
Michael Niedermayer [Wed, 4 Jun 2014 18:21:01 +0000 (20:21 +0200)]
Merge remote-tracking branch 'cehoyos/master'

* cehoyos/master:
  Fix rc_max_rate documentation.
  Fix some fate filter tests with --target-path.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoFix rc_max_rate documentation.
Carl Eugen Hoyos [Wed, 4 Jun 2014 18:13:55 +0000 (20:13 +0200)]
Fix rc_max_rate documentation.

The mpegvideo decoder sets rc_max_rate since 25b7aa98.

5 years agoFix some fate filter tests with --target-path.
Carl Eugen Hoyos [Wed, 4 Jun 2014 18:13:40 +0000 (20:13 +0200)]
Fix some fate filter tests with --target-path.

5 years agoMerge commit '39ec5e1cf8444f827c42effb76e5694e091bbff3'
Michael Niedermayer [Wed, 4 Jun 2014 18:07:59 +0000 (20:07 +0200)]
Merge commit '39ec5e1cf8444f827c42effb76e5694e091bbff3'

* commit '39ec5e1cf8444f827c42effb76e5694e091bbff3':
  avconv: Report the codec and the encoder separately

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavfilter/bufferqueue: Increase buffer queue size
Tobias Rapp [Tue, 3 Jun 2014 06:43:24 +0000 (08:43 +0200)]
avfilter/bufferqueue: Increase buffer queue size

Avoid buffer overruns when processing some MOV files with the amerge
filter. Files produced by Adobe Premiere Pro CC have up to one second of audio
not interleaved. With common settings (<= 48kHz) that makes up to 47 frames so
a queue length of 64 makes sense.

Fixes ticket #3510.

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/dvbsubdec: add some basic av_log debuging support
Michael Niedermayer [Wed, 4 Jun 2014 16:09:18 +0000 (18:09 +0200)]
avcodec/dvbsubdec: add some basic av_log debuging support

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agohuffyuvdec: implement trick for BGR
Christophe Gisquet [Tue, 3 Jun 2014 19:51:52 +0000 (19:51 +0000)]
huffyuvdec: implement trick for BGR

Before:
179436 decicycles in rgb, 32735 runs, 33 skips
Stripped object size: 23188

After:
154861 decicycles in rgb, 32738 runs, 30 skips
Stripped object size: 22736

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agohuffyuvdec: implement trick
Christophe Gisquet [Tue, 3 Jun 2014 14:38:36 +0000 (16:38 +0200)]
huffyuvdec: implement trick

When the joint table does not contain a valid entry, the decoding restarts
from scratch. By implementing the trick of jumping to the 2nd level of the
individual table (and inlining the whole), a speed improvement of 5-10%
is possible.

On a 1000-frames YUV4:2:0 video, before:
362851 decicycles in 422, 262094 runs, 50 skips
182488 decicycles in gray, 262087 runs, 57 skips
Object size: 23584
Overall time: 8.377

After:
346800 decicycles in 422, 262079 runs, 65 skips
168197 decicycles in gray, 262077 runs, 67 skips
Object size: 23188
Overall time: 7.878

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavconv: Report the codec and the encoder separately
Luca Barbato [Sat, 31 May 2014 13:49:30 +0000 (15:49 +0200)]
avconv: Report the codec and the encoder separately

Bug-Id: 694

5 years agoMerge commit '95b7fa1729b93bbb3f4fb85a5c0cb53cf970c3c7'
Michael Niedermayer [Wed, 4 Jun 2014 10:54:15 +0000 (12:54 +0200)]
Merge commit '95b7fa1729b93bbb3f4fb85a5c0cb53cf970c3c7'

* commit '95b7fa1729b93bbb3f4fb85a5c0cb53cf970c3c7':
  oggenc: Support flushing the muxer

Conflicts:
libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'd5a55981986ac5d1a31aef3a8d16eaff8534a412'
Michael Niedermayer [Wed, 4 Jun 2014 10:45:29 +0000 (12:45 +0200)]
Merge commit 'd5a55981986ac5d1a31aef3a8d16eaff8534a412'

* commit 'd5a55981986ac5d1a31aef3a8d16eaff8534a412':
  build: check if AS supports the '.func' directive

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agooggenc: Support flushing the muxer
Martin Storsjö [Thu, 29 May 2014 14:39:28 +0000 (17:39 +0300)]
oggenc: Support flushing the muxer

This allows the caller to write all buffered data to disk, allowing
the caller to know at what byte position in the file a certain
packet starts (any packet written after the flush will be located
after that byte position).

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoavcodec/x86/dsputilenc_mmx: fix build without yasm
Michael Niedermayer [Wed, 4 Jun 2014 03:39:03 +0000 (05:39 +0200)]
avcodec/x86/dsputilenc_mmx: fix build without yasm

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/avidec: allow rounding errors between scale/rate and timebase
Michael Niedermayer [Wed, 4 Jun 2014 03:04:13 +0000 (05:04 +0200)]
avformat/avidec: allow rounding errors between scale/rate and timebase

Fixes Ticket3670

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/h264: in the absence of recovery points, be more tolerant on accepting plain...
Michael Niedermayer [Wed, 4 Jun 2014 02:25:14 +0000 (04:25 +0200)]
avcodec/h264: in the absence of recovery points, be more tolerant on accepting plain I frames

Fixes: Ticket3652
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/lagarithrac: lag_get_rac: use normal division
Michael Niedermayer [Mon, 26 May 2014 23:36:23 +0000 (01:36 +0200)]
avcodec/lagarithrac: lag_get_rac: use normal division

maybe 0.3% faster and simpler code

5 years agoavcodec/lagarithrac: increase LUT from 256 to 1024 bytes
Michael Niedermayer [Mon, 26 May 2014 23:33:59 +0000 (01:33 +0200)]
avcodec/lagarithrac: increase LUT from 256 to 1024 bytes

about 2 cycles (~1%) faster lag_get_rac()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/lagarithrac.h/lag_get_rac: drop apparently unneeded operations
Michael Niedermayer [Mon, 26 May 2014 23:33:12 +0000 (01:33 +0200)]
avcodec/lagarithrac.h/lag_get_rac: drop apparently unneeded operations