ffmpeg.git
5 years agoMerge commit 'c0de9159a7ba5707aa0a5c2bc73ae78b7b87ec46'
Michael Niedermayer [Fri, 18 Jul 2014 19:48:31 +0000 (21:48 +0200)]
Merge commit 'c0de9159a7ba5707aa0a5c2bc73ae78b7b87ec46'

* commit 'c0de9159a7ba5707aa0a5c2bc73ae78b7b87ec46':
  avdevice: Give names to anonymously typedeffed structs

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '24af1aa0f70362a66cda04c9d7cd012e019f5572'
Michael Niedermayer [Fri, 18 Jul 2014 19:43:14 +0000 (21:43 +0200)]
Merge commit '24af1aa0f70362a66cda04c9d7cd012e019f5572'

* commit '24af1aa0f70362a66cda04c9d7cd012e019f5572':
  fft: Convert FFT/MDCT permutation type #defines to enums

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '746ad4e0df7faf93329804e412ec53c1d929a75b'
Michael Niedermayer [Fri, 18 Jul 2014 19:36:46 +0000 (21:36 +0200)]
Merge commit '746ad4e0df7faf93329804e412ec53c1d929a75b'

* commit '746ad4e0df7faf93329804e412ec53c1d929a75b':
  dct-test: Improve CPU flags struct member name

Conflicts:
libavcodec/dct-test.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'cb44b21da1f59923be577f08c267ec270529be97'
Michael Niedermayer [Fri, 18 Jul 2014 19:29:38 +0000 (21:29 +0200)]
Merge commit 'cb44b21da1f59923be577f08c267ec270529be97'

* commit 'cb44b21da1f59923be577f08c267ec270529be97':
  dct-test: Move cpu_flags variable out of global scope

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agofate: Add test for wav Peak Envelope Chunk encoder (levl chunk).
Peter B [Thu, 17 Jul 2014 16:51:38 +0000 (18:51 +0200)]
fate: Add test for wav Peak Envelope Chunk encoder (levl chunk).

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoFix make checkheaders for libavcodec/proresdsp.h.
Carl Eugen Hoyos [Fri, 18 Jul 2014 17:05:07 +0000 (19:05 +0200)]
Fix make checkheaders for libavcodec/proresdsp.h.

5 years agoavdevice: Give names to anonymously typedeffed structs
Diego Biurrun [Thu, 17 Jul 2014 15:51:27 +0000 (08:51 -0700)]
avdevice: Give names to anonymously typedeffed structs

Anonymous structs can cause trouble in header files, so try to
avoid them altogether as a matter of good style.

5 years agofft: Convert FFT/MDCT permutation type #defines to enums
Diego Biurrun [Tue, 18 Feb 2014 10:52:42 +0000 (11:52 +0100)]
fft: Convert FFT/MDCT permutation type #defines to enums

5 years agodct-test: Improve CPU flags struct member name
Diego Biurrun [Tue, 18 Feb 2014 10:58:57 +0000 (11:58 +0100)]
dct-test: Improve CPU flags struct member name

5 years agodct-test: Move cpu_flags variable out of global scope
Diego Biurrun [Tue, 18 Feb 2014 10:57:48 +0000 (11:57 +0100)]
dct-test: Move cpu_flags variable out of global scope

5 years agolavfi/drawtext: add alias "expr_int_format" to expansion function "eif"
Andrey Utkin [Thu, 17 Jul 2014 22:00:40 +0000 (01:00 +0300)]
lavfi/drawtext: add alias "expr_int_format" to expansion function "eif"

Reviewed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agosmacker: remove dead code
Timothy Gu [Fri, 18 Jul 2014 02:25:42 +0000 (19:25 -0700)]
smacker: remove dead code

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '7e18a727d2c2a19f22fcf68875d1b05fd2eafcef'
Michael Niedermayer [Fri, 18 Jul 2014 11:17:26 +0000 (13:17 +0200)]
Merge commit '7e18a727d2c2a19f22fcf68875d1b05fd2eafcef'

* commit '7e18a727d2c2a19f22fcf68875d1b05fd2eafcef':
  arm: cosmetics: Consistently use lowercase for shift operators

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'fe67f3fbb5f9f6a6b60f837f6bc5e087ac11f3bf'
Michael Niedermayer [Fri, 18 Jul 2014 10:43:59 +0000 (12:43 +0200)]
Merge commit 'fe67f3fbb5f9f6a6b60f837f6bc5e087ac11f3bf'

* commit 'fe67f3fbb5f9f6a6b60f837f6bc5e087ac11f3bf':
  arm: cosmetics: Fix a misaligned asm operand

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoarm: cosmetics: Consistently use lowercase for shift operators
Martin Storsjö [Thu, 17 Jul 2014 22:39:49 +0000 (01:39 +0300)]
arm: cosmetics: Consistently use lowercase for shift operators

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoarm: cosmetics: Fix a misaligned asm operand
Martin Storsjö [Sat, 12 Jul 2014 19:41:51 +0000 (22:41 +0300)]
arm: cosmetics: Fix a misaligned asm operand

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoalpha/me_cmp: move code out of dsputil
James Almer [Fri, 18 Jul 2014 02:45:35 +0000 (23:45 -0300)]
alpha/me_cmp: move code out of dsputil

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoalpha/idctdsp: move disabled cruft out of dsputil
James Almer [Fri, 18 Jul 2014 02:45:34 +0000 (23:45 -0300)]
alpha/idctdsp: move disabled cruft out of dsputil

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/a64multienc use av_freep()
Michael Niedermayer [Fri, 18 Jul 2014 02:57:00 +0000 (04:57 +0200)]
avcodec/a64multienc use av_freep()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoa64multienc: remove dead assignment
Timothy Gu [Fri, 18 Jul 2014 02:25:43 +0000 (19:25 -0700)]
a64multienc: remove dead assignment

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agokerndeint: remove dead assignments
Timothy Gu [Fri, 18 Jul 2014 02:25:41 +0000 (19:25 -0700)]
kerndeint: remove dead assignments

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '5a272190a04666f0fe41be767396b30712638c21'
Michael Niedermayer [Fri, 18 Jul 2014 01:44:06 +0000 (03:44 +0200)]
Merge commit '5a272190a04666f0fe41be767396b30712638c21'

* commit '5a272190a04666f0fe41be767396b30712638c21':
  armv6: Accelerate butterflies_float

See: 57641410d1a386937bec3fddd6c75119550916ec
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '5edad2c4a1f46bcc56be755af86ab355c2f1b37f'
Michael Niedermayer [Fri, 18 Jul 2014 01:14:02 +0000 (03:14 +0200)]
Merge commit '5edad2c4a1f46bcc56be755af86ab355c2f1b37f'

* commit '5edad2c4a1f46bcc56be755af86ab355c2f1b37f':
  armv6: Accelerate vector_fmul_window

See: 649c666137f43542b45941f42034ab3f44a31d38
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '87552d54d3337c3241e8a9e1a05df16eaa821496'
Michael Niedermayer [Fri, 18 Jul 2014 00:42:55 +0000 (02:42 +0200)]
Merge commit '87552d54d3337c3241e8a9e1a05df16eaa821496'

* commit '87552d54d3337c3241e8a9e1a05df16eaa821496':
  armv6: Accelerate ff_fft_calc for general case (nbits != 4)

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '5c22e8e4ad0852d61d5c4ba8d67d33fd72339497'
Michael Niedermayer [Fri, 18 Jul 2014 00:33:00 +0000 (02:33 +0200)]
Merge commit '5c22e8e4ad0852d61d5c4ba8d67d33fd72339497'

* commit '5c22e8e4ad0852d61d5c4ba8d67d33fd72339497':
  armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)

See: 42c1cc35b7623ce76c7b55c6bc100f135e17cd4f
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/dvenc: clear all dsp contexts
Michael Niedermayer [Thu, 17 Jul 2014 22:48:34 +0000 (00:48 +0200)]
avcodec/dvenc: clear all dsp contexts

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoarmv6: Accelerate butterflies_float
Ben Avison [Thu, 10 Jul 2014 23:12:34 +0000 (00:12 +0100)]
armv6: Accelerate butterflies_float

I benchmarked the result by measuring the number of gperftools samples that
hit anywhere in the AAC decoder (starting from aac_decode_frame()) or
specifically in butterflies_float_c() / ff_butterflies_float_vfp() for the
same sample AAC stream:

                   Before          After
                   Mean   StdDev   Mean   StdDev  Confidence  Change
Audio decode       1542.8 43.7     1470.5 41.5    100.0%      +4.9%
butterflies_float  130.0  11.9     70.2   12.1    100.0%      +85.2%

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoarmv6: Accelerate vector_fmul_window
Ben Avison [Thu, 10 Jul 2014 23:12:33 +0000 (00:12 +0100)]
armv6: Accelerate vector_fmul_window

I benchmarked the result by measuring the number of gperftools samples that
hit anywhere in the AAC decoder (starting from aac_decode_frame()) or
specifically in vector_fmul_window_c() / ff_vector_fmul_window_vfp() for the
same sample AAC stream:

                    Before          After
                    Mean   StdDev   Mean   StdDev  Confidence  Change
Audio decode        1598.2 47.4     1529.2 25.4    100.0%      +4.5%
vector_fmul_window  244.0  22.1     188.9  22.3    100.0%      +29.2%

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoarmv6: Accelerate ff_fft_calc for general case (nbits != 4)
Ben Avison [Wed, 16 Jul 2014 15:02:01 +0000 (16:02 +0100)]
armv6: Accelerate ff_fft_calc for general case (nbits != 4)

The previous implementation targeted DTS Coherent Acoustics, which only
requires nbits == 4 (fft16()). This case was (and still is) linked directly
rather than being indirected through ff_fft_calc_vfp(), but now the full
range from radix-4 up to radix-65536 is available. This benefits other codecs
such as AAC and AC3.

The implementaion is based upon the C version, with each routine larger than
radix-16 calling a hierarchy of smaller FFT functions, then performing a
post-processing pass. This pass benefits a lot from loop unrolling to
counter the long pipelines in the VFP. A relaxed calling standard also
reduces the overhead of the call hierarchy, and avoiding the excessive
inlining performed by GCC probably helps with I-cache utilisation too.

I benchmarked the result by measuring the number of gperftools samples that
hit anywhere in the AAC decoder (starting from aac_decode_frame()) or
specifically in the FFT routines (fft4() to fft512() and pass()) for the
same sample AAC stream:

              Before          After
              Mean   StdDev   Mean   StdDev  Confidence  Change
Audio decode  2245.5 53.1     1599.6 43.8    100.0%      +40.4%
FFT routines  940.6  22.0     348.1  20.8    100.0%      +170.2%

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoarmv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)
Ben Avison [Thu, 10 Jul 2014 23:12:31 +0000 (00:12 +0100)]
armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)

The previous implementation targeted DTS Coherent Acoustics, which only
requires mdct_bits == 6. This relatively small size lent itself to
unrolling the loops a small number of times, and encoding offsets
calculated at assembly time within the load/store instructions of each
iteration.

In the more general case (codecs such as AAC and AC3) much larger arrays
are used - mdct_bits == [8, 9, 11]. The old method does not scale for
these cases, so more integer registers are used with non-unrolled versions
of the loops (and with some stack spillage). The postrotation filter loop
is still unrolled by a factor of 2 to permit the double-buffering of some
VFP registers to facilitate overlap of neighbouring iterations.

I benchmarked the result by measuring the number of gperftools samples
that hit anywhere in the AAC decoder (starting from aac_decode_frame())
or specifically in ff_imdct_half_c / ff_imdct_half_vfp, for the same
example AAC stream:

                  Before          After
                  Mean   StdDev   Mean   StdDev  Confidence  Change
aac_decode_frame  2368.1 35.8     2117.2 35.3    100.0%      +11.8%
ff_imdct_half_*   457.5  22.4     251.2  16.2    100.0%      +82.1%

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoavcodec/me_cmp: restore author attribution and copyrights
Michael Niedermayer [Thu, 17 Jul 2014 21:57:38 +0000 (23:57 +0200)]
avcodec/me_cmp: restore author attribution and copyrights

These where removed by libav in

See: git show -C 2d60444331fca1910510038dd3817bea885c2367
diff --git a/libavcodec/dsputil.c b/libavcodec/me_cmp.c
similarity index 98%
rename from libavcodec/dsputil.c
rename to libavcodec/me_cmp.c
index ba71a99..9fcc937 100644
--- a/libavcodec/dsputil.c
+++ b/libavcodec/me_cmp.c
@@ -1,8 +1,4 @@
 /*
- * DSP utils
- * Copyright (c) 2000, 2001 Fabrice Bellard
- * Copyright (c) 2002-2004 Michael Niedermayer <michaelni@gmx.at>
- *
  * This file is part of Libav.
  *
  * Libav is free software; you can redistribute it and/or

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '2d60444331fca1910510038dd3817bea885c2367'
Michael Niedermayer [Thu, 17 Jul 2014 21:27:40 +0000 (23:27 +0200)]
Merge commit '2d60444331fca1910510038dd3817bea885c2367'

* commit '2d60444331fca1910510038dd3817bea885c2367':
  dsputil: Split motion estimation compare bits off into their own context

Conflicts:
configure
libavcodec/Makefile
libavcodec/arm/Makefile
libavcodec/dvenc.c
libavcodec/error_resilience.c
libavcodec/h264.h
libavcodec/h264_slice.c
libavcodec/me_cmp.c
libavcodec/me_cmp.h
libavcodec/motion_est.c
libavcodec/motion_est_template.c
libavcodec/mpeg4videoenc.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/x86/Makefile
libavcodec/x86/me_cmp_init.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'a578b0407dc983aecd72028e1127062689b67089'
Michael Niedermayer [Thu, 17 Jul 2014 20:19:47 +0000 (22:19 +0200)]
Merge commit 'a578b0407dc983aecd72028e1127062689b67089'

* commit 'a578b0407dc983aecd72028e1127062689b67089':
  configure: Assume runtime cpu detection on arm on --target-os=android as well

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'c23ce454b3e33634a188d6facfd2b7182af5af93'
Michael Niedermayer [Thu, 17 Jul 2014 19:55:37 +0000 (21:55 +0200)]
Merge commit 'c23ce454b3e33634a188d6facfd2b7182af5af93'

* commit 'c23ce454b3e33634a188d6facfd2b7182af5af93':
  x86: dsputil: Coalesce all init files

Conflicts:
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputil_x86.h
libavcodec/x86/motion_est.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavd/x11grab: reindent after last commit.
Nicolas George [Thu, 17 Jul 2014 16:28:58 +0000 (18:28 +0200)]
lavd/x11grab: reindent after last commit.

5 years agolavfi: check refcount before merging.
Nicolas George [Tue, 15 Jul 2014 17:26:52 +0000 (19:26 +0200)]
lavfi: check refcount before merging.

When merging the formats around the automatically inserted
convert filters, the refcount of the format lists can not be 0.
Coverity does not detect it, and suspects a memory leak,
because if refcount is 0 the newly allocated lists are not
stored anywhere. That gives CIDs 1224282, 1224283 and 1224284.
Lists with refcount 0 are used in can_merge_formats(), so the
asserts can not be moved inside the merge functions.

5 years agolavd/x11grab: add an option to disable MIT-SHM.
Nicolas George [Tue, 15 Jul 2014 09:37:47 +0000 (11:37 +0200)]
lavd/x11grab: add an option to disable MIT-SHM.

With remote displays supporting the MIT-SHM extension,
the extension is detected and used, but attaching fails
asynchronously.

5 years agolavd/x11grab: check 32-bits color masks.
Nicolas George [Tue, 15 Jul 2014 14:04:49 +0000 (16:04 +0200)]
lavd/x11grab: check 32-bits color masks.

The X11 servers by VNC, at 32-bits depths, has the following masks:
R:0x000007ff G:0x003ff800 B:0xffc00000
This is not compatible with AV_PIX_FMT_0RGB32, and the result
is success with completely wrong colors.

5 years agolavd/x11grab: change error code for unsupported visuals.
Nicolas George [Tue, 15 Jul 2014 14:08:18 +0000 (16:08 +0200)]
lavd/x11grab: change error code for unsupported visuals.

5 years agolavd/x11grab: disable drawing mouse without XFixes.
Nicolas George [Tue, 15 Jul 2014 13:37:00 +0000 (15:37 +0200)]
lavd/x11grab: disable drawing mouse without XFixes.

Fix a segfault if the XFixes extension is not available on
the X11 server.
Can be reproduced using the VNC server.

5 years agodsputil: Split motion estimation compare bits off into their own context
Diego Biurrun [Sat, 8 Feb 2014 01:59:58 +0000 (02:59 +0100)]
dsputil: Split motion estimation compare bits off into their own context

5 years agoavcodec/resample: Use av_m/realloc_array()
Michael Niedermayer [Thu, 17 Jul 2014 14:33:17 +0000 (16:33 +0200)]
avcodec/resample: Use av_m/realloc_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/resample2: Use av_malloc(z)_array()
Michael Niedermayer [Thu, 17 Jul 2014 14:32:48 +0000 (16:32 +0200)]
avcodec/resample2: Use av_malloc(z)_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoffserver: use av_mallocz_array()
Michael Niedermayer [Thu, 17 Jul 2014 14:30:34 +0000 (16:30 +0200)]
ffserver: use av_mallocz_array()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavf/segment: set segment end time when the first packet arrives
Stefano Sabatini [Thu, 17 Jul 2014 14:36:27 +0000 (16:36 +0200)]
lavf/segment: set segment end time when the first packet arrives

Avoid negative durations in case there is a single packet in the current
segment, since in that case the end time is still set to the previous
segment end time.

5 years agolavf/segment: fix weird indent
Stefano Sabatini [Thu, 17 Jul 2014 14:36:11 +0000 (16:36 +0200)]
lavf/segment: fix weird indent

5 years agolavf/segment: show incoming packet duration in debug message
Stefano Sabatini [Thu, 17 Jul 2014 14:35:36 +0000 (16:35 +0200)]
lavf/segment: show incoming packet duration in debug message

5 years agolavf/segment: only use reference frames for computing the segment end time
Stefano Sabatini [Thu, 17 Jul 2014 12:49:20 +0000 (14:49 +0200)]
lavf/segment: only use reference frames for computing the segment end time

This avoids a systematic overestimate of the segments duration when there
are several streams.

Fix trac ticket #3724.

5 years agoconfigure: Assume runtime cpu detection on arm on --target-os=android as well
Martin Storsjö [Wed, 16 Jul 2014 16:43:12 +0000 (19:43 +0300)]
configure: Assume runtime cpu detection on arm on --target-os=android as well

Signed-off-by: Martin Storsjö <martin@martin.st>
5 years agoavformat/dv: implement fallback in dv_extract_pack()
Michael Niedermayer [Thu, 17 Jul 2014 02:25:21 +0000 (04:25 +0200)]
avformat/dv: implement fallback in dv_extract_pack()

Fixes Ticket2340
Fixes Ticket2341

Based-on mail from Dave Rice <dave@dericed.com>
Tested-by: Dave Rice <dave@dericed.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '324ff59444ff5470bb325ff1e2be7c4b054fc944'
Michael Niedermayer [Thu, 17 Jul 2014 12:18:20 +0000 (14:18 +0200)]
Merge commit '324ff59444ff5470bb325ff1e2be7c4b054fc944'

* commit '324ff59444ff5470bb325ff1e2be7c4b054fc944':
  avpacket: Check for and return errors in ff_interleave_add_packet()

Conflicts:
libavformat/audiointerleave.c
libavformat/internal.h
libavformat/mux.c

See: 4d7c71c36467331f1e0c0f17af9f371d33308a9c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '2db953f84671997e936f91140ffb5143c1537844'
Michael Niedermayer [Thu, 17 Jul 2014 12:00:01 +0000 (14:00 +0200)]
Merge commit '2db953f84671997e936f91140ffb5143c1537844'

* commit '2db953f84671997e936f91140ffb5143c1537844':
  h264: K&R formatting cosmetics

Conflicts:
libavcodec/h264.c
libavcodec/h264_direct.c
libavcodec/h264_slice.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2'
Michael Niedermayer [Thu, 17 Jul 2014 11:50:09 +0000 (13:50 +0200)]
Merge commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2'

* commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2':
  h264: Remove some commented-out, broken cruft

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodoc/filters/drawtext: simplify example, use clip() eval function
Stefano Sabatini [Thu, 17 Jul 2014 10:44:36 +0000 (12:44 +0200)]
doc/filters/drawtext: simplify example, use clip() eval function

5 years agolavfi/drawtext: add fontcolor_expr option
Andrey Utkin [Fri, 4 Jul 2014 18:54:53 +0000 (21:54 +0300)]
lavfi/drawtext: add fontcolor_expr option

Allow to dynamically evaluate the font color.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
5 years agox86: dsputil: Coalesce all init files
Diego Biurrun [Sat, 4 Jan 2014 14:23:15 +0000 (15:23 +0100)]
x86: dsputil: Coalesce all init files

This makes the init files match the structure of the dsputil split.

5 years agoavpacket: Check for and return errors in ff_interleave_add_packet()
Nidhi Makhijani [Mon, 14 Jul 2014 06:22:44 +0000 (11:52 +0530)]
avpacket: Check for and return errors in ff_interleave_add_packet()

Signed-off-by: Diego Biurrun <diego@biurrun.de>
5 years agoh264: K&R formatting cosmetics
Luca Barbato [Wed, 16 Jul 2014 22:31:06 +0000 (18:31 -0400)]
h264: K&R formatting cosmetics

Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
5 years agolavfi/drawtext: add expansion function eif()
Andrey Utkin [Fri, 4 Jul 2014 09:16:16 +0000 (12:16 +0300)]
lavfi/drawtext: add expansion function eif()

It evaluates expression and outputs it as integer value, using specified
format.

Address trac ticket #3699.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
5 years agolavu/eval: add clip function
Stefano Sabatini [Fri, 4 Jul 2014 12:13:11 +0000 (14:13 +0200)]
lavu/eval: add clip function

5 years agoavutil/opt: try to fix the case where src==dst in av_opt_copy()
Michael Niedermayer [Thu, 17 Jul 2014 03:56:40 +0000 (05:56 +0200)]
avutil/opt: try to fix the case where src==dst in av_opt_copy()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolibavformat/segment: change segment_list_size behavior to match hls_list_size behavior.
Simon Thelen [Wed, 9 Jul 2014 19:40:43 +0000 (21:40 +0200)]
libavformat/segment: change segment_list_size behavior to match hls_list_size behavior.

Make the segment muxer keep segment_list_size segments instead of
segment_list_size + 1 segments. This patch also changes the
documentation for segment_list_size to reduce possible confusion over
how many segments are kept.

this allows the segment list to
be limited to containing only one segment which used to be impossible
because a segment_list_size of 0 kept all the segments and a
segment_list_size of 1 kept 2 segments.

Signed-off-by: Simon Thelen <ffmpeg-dev@c-14.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat: Micro bump for "md5enc: add format_version, to allow selecting which versio...
Michael Niedermayer [Wed, 16 Jul 2014 20:58:29 +0000 (22:58 +0200)]
avformat: Micro bump for "md5enc: add format_version, to allow selecting which version to use"

Suggested-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/md5enc: add format_version, to allow selecting which version to use
Michael Niedermayer [Wed, 16 Jul 2014 20:34:56 +0000 (22:34 +0200)]
avformat/md5enc: add format_version, to allow selecting which version to use

Currently there is just version 1
Fixes remaining part of Ticket2280

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoarmv6: Accelerate butterflies_float
Ben Avison [Thu, 10 Jul 2014 23:14:31 +0000 (00:14 +0100)]
armv6: Accelerate butterflies_float

I benchmarked the result by measuring the number of gperftools samples that
hit anywhere in the AAC decoder (starting from aac_decode_frame()) or
specifically in butterflies_float_c() / ff_butterflies_float_vfp() for the
same sample AAC stream:

                   Before          After
                   Mean   StdDev   Mean   StdDev  Confidence  Change
Audio decode       1542.8 43.7     1470.5 41.5    100.0%      +4.9%
butterflies_float  130.0  11.9     70.2   12.1    100.0%      +85.2%

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoarmv6: Accelerate vector_fmul_window
Ben Avison [Thu, 10 Jul 2014 23:14:30 +0000 (00:14 +0100)]
armv6: Accelerate vector_fmul_window

I benchmarked the result by measuring the number of gperftools samples that
hit anywhere in the AAC decoder (starting from aac_decode_frame()) or
specifically in vector_fmul_window_c() / ff_vector_fmul_window_vfp() for the
same sample AAC stream:

                    Before          After
                    Mean   StdDev   Mean   StdDev  Confidence  Change
Audio decode        1598.2 47.4     1529.2 25.4    100.0%      +4.5%
vector_fmul_window  244.0  22.1     188.9  22.3    100.0%      +29.2%

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoh264: Remove some commented-out, broken cruft
Diego Biurrun [Wed, 16 Jul 2014 19:26:34 +0000 (12:26 -0700)]
h264: Remove some commented-out, broken cruft

5 years agoavcodec/snow: remove unused variables
Michael Niedermayer [Wed, 16 Jul 2014 19:24:11 +0000 (21:24 +0200)]
avcodec/snow: remove unused variables

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoaaccoder: remove unused assignment
Timothy Gu [Wed, 16 Jul 2014 03:56:30 +0000 (20:56 -0700)]
aaccoder: remove unused assignment

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit 'adff0a8166345bb9513f0f658043fb6387e90122'
Michael Niedermayer [Wed, 16 Jul 2014 18:09:25 +0000 (20:09 +0200)]
Merge commit 'adff0a8166345bb9513f0f658043fb6387e90122'

* commit 'adff0a8166345bb9513f0f658043fb6387e90122':
  arm: dsputil: Coalesce all init files

Conflicts:
libavcodec/arm/Makefile
libavcodec/arm/dsputil_arm.h
libavcodec/arm/dsputil_init_arm.c
libavcodec/arm/dsputil_init_armv6.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoarm: dsputil: Coalesce all init files
Diego Biurrun [Tue, 8 Jul 2014 15:47:52 +0000 (08:47 -0700)]
arm: dsputil: Coalesce all init files

5 years agovp9: remove unused assignment
Timothy Gu [Wed, 16 Jul 2014 03:56:29 +0000 (20:56 -0700)]
vp9: remove unused assignment

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: BBB
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoget_bits: remove unused assignment
Timothy Gu [Wed, 16 Jul 2014 03:56:28 +0000 (20:56 -0700)]
get_bits: remove unused assignment

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/snow: only allocate space for edges when encoding
Michael Niedermayer [Wed, 16 Jul 2014 02:57:42 +0000 (04:57 +0200)]
avcodec/snow: only allocate space for edges when encoding

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/snowdec: remove mpegvideoencdsp dependency
Michael Niedermayer [Wed, 16 Jul 2014 02:10:25 +0000 (04:10 +0200)]
avcodec/snowdec: remove mpegvideoencdsp dependency

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodiracdec: don't call ff_emulated_edge_mc_8 directly
James Almer [Wed, 16 Jul 2014 01:37:25 +0000 (22:37 -0300)]
diracdec: don't call ff_emulated_edge_mc_8 directly

Use the videodsp function pointer instead.

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b'
Michael Niedermayer [Wed, 16 Jul 2014 01:40:13 +0000 (03:40 +0200)]
Merge commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b'

* commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b':
  g2meet: allow size changes within original sizes

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoChangelog: change "version <next>" to "version 2.3"
Michael Niedermayer [Wed, 16 Jul 2014 00:09:06 +0000 (02:09 +0200)]
Changelog: change  "version <next>" to "version 2.3"

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agog2meet: allow size changes within original sizes
Vittorio Giovara [Tue, 15 Jul 2014 19:22:11 +0000 (15:22 -0400)]
g2meet: allow size changes within original sizes

5 years agodoc/APIchanges: update n2.4-dev
Michael Niedermayer [Wed, 16 Jul 2014 00:06:44 +0000 (02:06 +0200)]
doc/APIchanges: update

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/hevc: clear HEVClcList[i] on allocation
Michael Niedermayer [Tue, 15 Jul 2014 23:33:50 +0000 (01:33 +0200)]
avcodec/hevc: clear HEVClcList[i] on allocation

Fixes fate failure with --enable-memory-poisoning && make THREAD_TYPE=slice THREADS=7  fate-hevc-conformance-ENTP_C_Qualcomm_1

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavfilter/drawtext: Add basic text shaping using libfribidi
Marc Jeffreys [Sat, 21 Jun 2014 04:41:45 +0000 (05:41 +0100)]
avfilter/drawtext: Add basic text shaping using libfribidi

Fixes ticket #3758

Reviewed-by: Andrey Utkin <andrey.krieger.utkin@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavdevice/avfoundation: kCVPixelFormatType_OneComponent8 only exists from 10.8 onward
Hanspeter Niederstrasser [Mon, 14 Jul 2014 02:49:24 +0000 (21:49 -0500)]
avdevice/avfoundation: kCVPixelFormatType_OneComponent8 only exists from 10.8 onward

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodiracdec: remove unused dsputil context
James Almer [Tue, 15 Jul 2014 22:10:09 +0000 (19:10 -0300)]
diracdec: remove unused dsputil context

Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/matroskadec: fix declaration after statement
Michael Niedermayer [Tue, 15 Jul 2014 22:06:15 +0000 (00:06 +0200)]
avformat/matroskadec: fix declaration after statement

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavf: Add WebM DASH Manifest Muxer
Vignesh Venkatasubramanian [Mon, 14 Jul 2014 16:52:23 +0000 (09:52 -0700)]
lavf: Add WebM DASH Manifest Muxer

This patch adds the ability to generate WebM DASH manifest XML using
ffmpeg. A sample command line would be as follows:

ffmpeg \
  -f webm_dash_manifest -i video1.webm \
  -f webm_dash_manifest -i video2.webm \
  -f webm_dash_manifest -i audio1.webm \
  -f webm_dash_manifest -i audio2.webm \
  -map 0 -map 1 -map 2 -map 3 \
  -c copy \
  -f webm_dash_manifest \
  -adaptation_sets “id=0,streams=0,1 id=1,streams=2,3” \
  manifest.xml

It works by exporting necessary fields as metadata tags in matroskadec
and use those values to write the appropriate XML fields as per the WebM
DASH Specification [1]. Some ideas are adopted from webm-tools project
[2].

[1]
https://sites.google.com/a/webmproject.org/wiki/adaptive-streaming/webm-dash-specification
[2]
https://chromium.googlesource.com/webm/webm-tools/+/master/webm_dash_manifest/

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agolavf/matroska: Add functions for WebM DASH Manifest
Vignesh Venkatasubramanian [Mon, 7 Jul 2014 19:52:37 +0000 (12:52 -0700)]
lavf/matroska: Add functions for WebM DASH Manifest

Add functions and logic to matroskadec for use by the WebM DASH Manifest
XML Muxer. The actual muxer is added in a future patch.

Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoBlackframe video filter now sets metadata accordingly.
Stepan Bujnak [Fri, 11 Jul 2014 21:40:07 +0000 (23:40 +0200)]
Blackframe video filter now sets metadata accordingly.

the libavfilter/vf_blackframe.c filter now not only logs detected
values, but also sets frame metadata. Currently, only `pblack` value is set
but `SET_META` macro has been introduced to ease development in the future.

Signed-off-by: Stepan Bujnak <stepan.bujnak@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/hevc: treat current_sps like sps_list
Michael Niedermayer [Tue, 15 Jul 2014 19:43:30 +0000 (21:43 +0200)]
avcodec/hevc: treat current_sps like sps_list

This simplifies the management of current_sps
Fixes Ticket3458

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/hevc_ps: prevent stale pointer in malloc failure case
Michael Niedermayer [Tue, 15 Jul 2014 19:43:04 +0000 (21:43 +0200)]
avcodec/hevc_ps: prevent stale pointer in malloc failure case

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavutil & avdevice: remove av_bprint_fd_contents()
Michael Niedermayer [Sun, 13 Jul 2014 13:56:06 +0000 (15:56 +0200)]
avutil & avdevice: remove av_bprint_fd_contents()

MSVC does not allow passing file pointers between libs
This API can thus not work with MSVC and as it was very recently added
and its it was in no release its removial should not cause any problems

A better API will be implemented, but its not finished yet, this revert is
to avoid potentially blocking the release

Found-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agobuild: fix build with --disable-encoders
Clément Bœsch [Tue, 15 Jul 2014 19:26:14 +0000 (21:26 +0200)]
build: fix build with --disable-encoders

draw_edges() should probably be moved somewhere else to avoid
mpegvideo*enc* dependency to decoders.

5 years agoffmpeg_opt: remove intra_dc_precision, its handled by AVOptions
Michael Niedermayer [Tue, 15 Jul 2014 18:18:19 +0000 (20:18 +0200)]
ffmpeg_opt: remove intra_dc_precision, its handled by AVOptions

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/mpegvideo_enc: make edge for interlaced mpeg2 encoding smaller
Michael Niedermayer [Tue, 15 Jul 2014 17:51:02 +0000 (19:51 +0200)]
avcodec/mpegvideo_enc: make edge for interlaced mpeg2 encoding smaller

Fixes segfault
the size can probably be reduced further for the mpeg2 case

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/mpegvideo_enc: check intra dc precission
Michael Niedermayer [Tue, 15 Jul 2014 17:12:55 +0000 (19:12 +0200)]
avcodec/mpegvideo_enc: check intra dc precission

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/mpegvideo_enc: workaround applications specifying intra dc level based on...
Michael Niedermayer [Tue, 15 Jul 2014 17:12:00 +0000 (19:12 +0200)]
avcodec/mpegvideo_enc: workaround applications specifying intra dc level based on 8 and othes based on 0bit

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/options_table: add liberal limits to intra dc precission
Michael Niedermayer [Tue, 15 Jul 2014 17:04:51 +0000 (19:04 +0200)]
avcodec/options_table: add liberal limits to intra dc precission

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/mpegvideo_enc: return proper error instead of failing assertion when max...
Michael Niedermayer [Tue, 15 Jul 2014 16:49:18 +0000 (18:49 +0200)]
avcodec/mpegvideo_enc: return proper error instead of failing assertion when max rate is not set

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoffmpeg: Fix copying timebase to muxer context
Michael Niedermayer [Tue, 15 Jul 2014 13:45:06 +0000 (15:45 +0200)]
ffmpeg: Fix copying timebase to muxer context

Fixes Ticket3741

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodoc/utils: add missing `@c man end` title
Timothy Gu [Mon, 14 Jul 2014 23:21:15 +0000 (16:21 -0700)]
doc/utils: add missing `@c man end` title

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>