ffmpeg.git
4 years agoconfigure: Combine dynamicbase and nxcompat checks
Alex Smith [Sat, 26 Sep 2015 06:15:24 +0000 (02:15 -0400)]
configure: Combine dynamicbase and nxcompat checks

They were added to binutils in the same version so it's safe to combine.

Signed-off-by: Alex Smith <theryuu@warpsharp.info>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavutil/avstring: Inline some tiny functions
Henrik Gramner [Sat, 26 Sep 2015 16:04:11 +0000 (18:04 +0200)]
avutil/avstring: Inline some tiny functions

They're short enough that inlining them actually reduces code size due to
all the overhead associated with making a function call.

4 years agocheckasm/vp9dsp: add const to suppress "discards const qualifier" warnings
James Almer [Sat, 26 Sep 2015 19:08:51 +0000 (16:08 -0300)]
checkasm/vp9dsp: add const to suppress "discards const qualifier" warnings

Reviewed-by: Henrik Gramner <henrik@gramner.com>
Signed-off-by: James Almer <jamrial@gmail.com>
4 years agocheckasm/Makefile: add missing testclean target
James Almer [Sat, 26 Sep 2015 19:08:04 +0000 (16:08 -0300)]
checkasm/Makefile: add missing testclean target

Reviewed-by: Henrik Gramner <henrik@gramner.com>
Signed-off-by: James Almer <jamrial@gmail.com>
4 years agoavutil/opencl: Fix volatile pointer
Timo Rothenpieler [Thu, 24 Sep 2015 14:58:30 +0000 (16:58 +0200)]
avutil/opencl: Fix volatile pointer

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
4 years agoavformat/hls: remove unused function
Ganesh Ajjanagadde [Thu, 17 Sep 2015 00:26:42 +0000 (20:26 -0400)]
avformat/hls: remove unused function

Fixes -Wunused-function from
http://fate.ffmpeg.org/report.cgi?time=20150820031140&slot=arm64-darwin-clang-apple-5.1

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
4 years agodnxhddec: parse and print adaptive color transform
Christophe Gisquet [Fri, 25 Sep 2015 15:07:38 +0000 (17:07 +0200)]
dnxhddec: parse and print adaptive color transform

Indicates a YCbCr->RGB transform at the block level. Although nothing
explicitly states it, this would assume the actual content is planar
RGB.

Currently unsupported, but the one sequence I found using it flagged
every mb that way, actually meaning the content was YCbCr, and thus
best left to the output format to decide what to do of it.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agodnxhddec: proper rule for interlaced mb flag
Christophe Gisquet [Sat, 26 Sep 2015 12:31:55 +0000 (14:31 +0200)]
dnxhddec: proper rule for interlaced mb flag

It currently only applies to CID 1260, but this flag is dependent on
a higher-level flag located in the header.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/vf_blend: add addition128 mode
Paul B Mahol [Sat, 26 Sep 2015 13:31:36 +0000 (15:31 +0200)]
avfilter/vf_blend: add addition128 mode

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agocheckasm: Use a self-balancing tree
Henrik Gramner [Fri, 25 Sep 2015 16:56:00 +0000 (18:56 +0200)]
checkasm: Use a self-balancing tree

Tested functions are internally kept in a binary search tree for efficient
lookups. The downside of the current implementation is that the tree quickly
becomes unbalanced which causes an unneccessary amount of comparisons between
nodes. Improve this by changing the tree into a self-balancing left-leaning
red-black tree with a worst case lookup/insertion time complexity of O(log n).

Significantly reduces the recursion depth and makes the tests run around 10%
faster overall. The relative performance improvement compared to the existing
non-balanced tree will also most likely increase as more tests are added.

4 years agoavcodec/ffv1dec: Fix off by 1 error in quant_table_count check
Michael Niedermayer [Sat, 26 Sep 2015 11:20:59 +0000 (13:20 +0200)]
avcodec/ffv1dec: Fix off by 1 error in quant_table_count check

Fixes: invalid_read.nut
Found-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/ffv1dec: Explicitly check read_quant_table() return value
Michael Niedermayer [Sat, 26 Sep 2015 11:09:59 +0000 (13:09 +0200)]
avcodec/ffv1dec: Explicitly check read_quant_table() return value

Forwards the error code, avoids potential integer overflow

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agocheckasm: clip vp9 loopfilter test pixels inside allowed bitdepth range.
Ronald S. Bultje [Wed, 23 Sep 2015 00:48:15 +0000 (20:48 -0400)]
checkasm: clip vp9 loopfilter test pixels inside allowed bitdepth range.

4 years agoMerge commit 'b2417ee6d1ee0c5e9b170a642d73bdf68908966f'
Hendrik Leppkes [Sat, 26 Sep 2015 09:14:31 +0000 (11:14 +0200)]
Merge commit 'b2417ee6d1ee0c5e9b170a642d73bdf68908966f'

* commit 'b2417ee6d1ee0c5e9b170a642d73bdf68908966f':
  dxv: Improve error message

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit '1bcd4a476ba45a7fdf59d1701b8f0e274418cc32'
Hendrik Leppkes [Sat, 26 Sep 2015 09:14:25 +0000 (11:14 +0200)]
Merge commit '1bcd4a476ba45a7fdf59d1701b8f0e274418cc32'

* commit '1bcd4a476ba45a7fdf59d1701b8f0e274418cc32':
  dxv: Support RAW intermediate compression

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit 'bbf71d46db3417b43bcbd745cbf235e8e2ff69ae'
Hendrik Leppkes [Sat, 26 Sep 2015 09:14:01 +0000 (11:14 +0200)]
Merge commit 'bbf71d46db3417b43bcbd745cbf235e8e2ff69ae'

* commit 'bbf71d46db3417b43bcbd745cbf235e8e2ff69ae':
  dxv: Print texture information after header parsing

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit 'fb2889691cb7720d2680e188eb6036a35afa2392'
Hendrik Leppkes [Sat, 26 Sep 2015 09:13:48 +0000 (11:13 +0200)]
Merge commit 'fb2889691cb7720d2680e188eb6036a35afa2392'

* commit 'fb2889691cb7720d2680e188eb6036a35afa2392':
  dxv: Support the original first version

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit '588a5619da0d041e55b365f63d0fa9c72bdbd4d3'
Hendrik Leppkes [Sat, 26 Sep 2015 09:11:06 +0000 (11:11 +0200)]
Merge commit '588a5619da0d041e55b365f63d0fa9c72bdbd4d3'

* commit '588a5619da0d041e55b365f63d0fa9c72bdbd4d3':
  dxv: Parse ancillary encoder information

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit 'a9b8c638cfe2f82191db65e3e3a39f3b35df81f5'
Hendrik Leppkes [Sat, 26 Sep 2015 09:07:54 +0000 (11:07 +0200)]
Merge commit 'a9b8c638cfe2f82191db65e3e3a39f3b35df81f5'

* commit 'a9b8c638cfe2f82191db65e3e3a39f3b35df81f5':
  mmal: Fix AVBufferRef usage

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit '49623f531972be5dc2dd8c1b4b8748cad7c424ff'
Hendrik Leppkes [Sat, 26 Sep 2015 09:07:44 +0000 (11:07 +0200)]
Merge commit '49623f531972be5dc2dd8c1b4b8748cad7c424ff'

* commit '49623f531972be5dc2dd8c1b4b8748cad7c424ff':
  mmal: Remove setting extradata on input format

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoMerge commit 'f290e48d86e10f34b5ddc519127636bcebec7c43'
Hendrik Leppkes [Sat, 26 Sep 2015 09:07:33 +0000 (11:07 +0200)]
Merge commit 'f290e48d86e10f34b5ddc519127636bcebec7c43'

* commit 'f290e48d86e10f34b5ddc519127636bcebec7c43':
  mmal: drop the h264 BSF

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
4 years agoAAC encoder: fix OOB access in search_for_pns
Claudio Freire [Sat, 26 Sep 2015 07:49:16 +0000 (04:49 -0300)]
AAC encoder: fix OOB access in search_for_pns

Fix out of bounds access caused by wrongful usage
of swb_offset constants when computing scalefactor
positions.

4 years agotests/checkasm: make randomize_buffers a function for easier debugging
Rodger Combs [Mon, 21 Sep 2015 02:55:33 +0000 (21:55 -0500)]
tests/checkasm: make randomize_buffers a function for easier debugging

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoffserver: drop unneeded branching
Reynaldo H. Verdejo Pinochet [Fri, 25 Sep 2015 18:04:25 +0000 (11:04 -0700)]
ffserver: drop unneeded branching

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
4 years agoffserver: drop error counting when parsing ACL row
Reynaldo H. Verdejo Pinochet [Fri, 25 Sep 2015 18:02:12 +0000 (11:02 -0700)]
ffserver: drop error counting when parsing ACL row

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
4 years agoffserver: rm whitespace c&p leftovers from macro
Reynaldo H. Verdejo Pinochet [Thu, 24 Sep 2015 21:12:08 +0000 (14:12 -0700)]
ffserver: rm whitespace c&p leftovers from macro

Signed-off-by: Reynaldo H. Verdejo Pinochet <reynaldo@osg.samsung.com>
4 years agodnxhddec: indicate colorspace
Christophe Gisquet [Fri, 25 Sep 2015 21:25:07 +0000 (23:25 +0200)]
dnxhddec: indicate colorspace

It is supposed to only old BT.709 colorspaces.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/iff: check for possible overflow in 2nd argument of av_new_packet
Paul B Mahol [Fri, 25 Sep 2015 19:21:24 +0000 (21:21 +0200)]
avformat/iff: check for possible overflow in 2nd argument of av_new_packet

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agodnxhddata: correct weight tables
Jeremy James [Fri, 25 Sep 2015 16:57:18 +0000 (18:57 +0200)]
dnxhddata: correct weight tables

CID 1260 (as evidenced by incorrect decoding of a sample from ticket
4876) seems to use incorrect weight tables. It appears those tables
were not zigzag-scanned.

Apply zigzag on weight tables for new CIDs 1258, 1259, and 1260, and
fix an incorrect chroma table for CID 1256.

Fixes last issue from ticket #4876.

Found-by: Christophe Gisquet <christophe.gisquet@gmail.com>
Signed-off-by: Christophe Gisquet <christophe.gisquet@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agodnxhddec: decode and use interlace mb flag
Christophe Gisquet [Fri, 25 Sep 2015 16:57:17 +0000 (18:57 +0200)]
dnxhddec: decode and use interlace mb flag

This bit is 1 in some samples, and seems to coincide with interlaced
mbs and CID1260. 2008 specs do not know about it, and maintain qscale
is 11 bits. This looks oversized, but may help larger bitdepths.

Currently, it leads to an obviously incorrect qscale value, meaning
its syntax is shifted by 1. However, reading 11 bits also leads to
obviously incorrect decoding: qscale seems to be 10 bits.

However, as most profiles still have 11bits qscale, the feature is
restricted to the CID1260 profile.

The encoder writes 12 bits of syntax, last and first bits always 0,
which is now somewhat inconsistent with the decoder, but ends up with
the same effect (progressive + reserved bit).

Partially fixes ticket #4876.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/hls: Update Cookies response with Setcookie
Lucas de Andrade [Fri, 25 Sep 2015 15:11:52 +0000 (12:11 -0300)]
avformat/hls: Update Cookies response with Setcookie

Context cookies must be updated when a playlist response return Setcookie header.

Signed-off-by: wm4 <nfxjfg@googlemail.com>
4 years agoswscale: fix ticket #4877
Pedro Arthur [Fri, 25 Sep 2015 15:17:43 +0000 (12:17 -0300)]
swscale: fix ticket #4877

4 years agoavcodec/ffv1dec: Fix >8bps error concealment
Michael Niedermayer [Fri, 25 Sep 2015 14:44:46 +0000 (16:44 +0200)]
avcodec/ffv1dec: Fix >8bps error concealment

Fixes: 03_cave_girls_h264_slc24_slicecrc1_fuzzed.avi

Found-by: Dinah Handel <dinahrhandel@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/rangecoder: Check e
Michael Niedermayer [Fri, 25 Sep 2015 12:26:14 +0000 (14:26 +0200)]
avcodec/rangecoder: Check e

Fixes hang.nut

Found-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoAAC encoder: tweak PNS usage to be more aggressive
Claudio Freire [Fri, 25 Sep 2015 06:56:32 +0000 (03:56 -0300)]
AAC encoder: tweak PNS usage to be more aggressive

This patch tweaks search_for_pns to be both more
aggressive and more careful when applying PNS. On
the one side, it will again try to use PNS on zero
(or effectively zero) bands. For this, both zeroes
and band_type have to be checked (some ZERO bands
aren't marked in zeroes). On the other side, a more
accurate rate-distortion measure avoids using PNS
where it would cause audible distortion.

Also fixed a small bug in the computation of freq
that caused PNS usage on low-frequency bands during
8-short windows. This allows re-enabling PNS during
8-short.

4 years agoavcodec/ffv1: seperate slice_count from max_slice_count
Michael Niedermayer [Thu, 24 Sep 2015 21:49:30 +0000 (23:49 +0200)]
avcodec/ffv1: seperate slice_count from max_slice_count

Fix segfault with too large slice_count
Fixes Ticket4879

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoReturn EOF for ICO when the end is reached
Michael Bradshaw [Fri, 21 Aug 2015 14:46:16 +0000 (07:46 -0700)]
Return EOF for ICO when the end is reached

4 years agotests/checkasm/vp9dsp: Revert first hunk of bddcf758d3a68ac0bcc3bc4fc4aa7156e05245d4
Michael Niedermayer [Thu, 24 Sep 2015 16:33:11 +0000 (18:33 +0200)]
tests/checkasm/vp9dsp: Revert first hunk of bddcf758d3a68ac0bcc3bc4fc4aa7156e05245d4

The change was wrong, also add a comment explaining it

Found-by: BBB
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/generate_wave_table: clean up extra newlines
Kyle Swanson [Thu, 24 Sep 2015 14:34:42 +0000 (09:34 -0500)]
avfilter/generate_wave_table: clean up extra newlines

Signed-off-by: Kyle Swanson <k@ylo.ph>
4 years agodxv: Improve error message
Vittorio Giovara [Tue, 22 Sep 2015 11:58:00 +0000 (13:58 +0200)]
dxv: Improve error message

4 years agodxv: Support RAW intermediate compression
Vittorio Giovara [Tue, 22 Sep 2015 11:57:59 +0000 (13:57 +0200)]
dxv: Support RAW intermediate compression

Sample-Id: boombox64.mov
Reported-by: Aarni Koskela
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
4 years agodxv: Print texture information after header parsing
Vittorio Giovara [Tue, 22 Sep 2015 11:57:58 +0000 (13:57 +0200)]
dxv: Print texture information after header parsing

4 years agodxv: Support the original first version
Vittorio Giovara [Tue, 22 Sep 2015 11:57:57 +0000 (13:57 +0200)]
dxv: Support the original first version

DXV 1.0 provided DXT1 with LZF only.

Sample-Id: Orange-Strings-07_640_DXV.mov
Reported-by: Carl Eugen Hoyos
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
4 years agodxv: Parse ancillary encoder information
Vittorio Giovara [Tue, 22 Sep 2015 11:57:56 +0000 (13:57 +0200)]
dxv: Parse ancillary encoder information

Header does not contain the number of channels, but rather the encoder
version, so rename the variable, and read the additional byte.

4 years agommal: Fix AVBufferRef usage
wm4 [Thu, 24 Sep 2015 06:49:41 +0000 (08:49 +0200)]
mmal: Fix AVBufferRef usage

AVBufferRef.data and AVPacket.data don't need to have the same value.
AVPacket could point anywhere into the buffer. Likewise, the sizes
don't need to be the same.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agommal: Remove setting extradata on input format
wm4 [Thu, 24 Sep 2015 06:49:41 +0000 (08:49 +0200)]
mmal: Remove setting extradata on input format

This works only for extradata sizes up to 128 bytes. Additionally, I
could never actually see it doing anything. The new code using
MMAL_BUFFER_HEADER_FLAG_CONFIG now takes care of this.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agommal: drop the h264 BSF
wm4 [Thu, 24 Sep 2015 06:49:41 +0000 (08:49 +0200)]
mmal: drop the h264 BSF

We can send mp4-style data directly. But for some reason, this requires
sending the extradata as buffer with MMAL_BUFFER_HEADER_FLAG_CONFIG
set. Reuse the infrastructure for sending AVPackets to do this.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoavfilter/af_tremolo: make it bit-exact with sox effect of same name
Paul B Mahol [Wed, 23 Sep 2015 21:03:35 +0000 (23:03 +0200)]
avfilter/af_tremolo: make it bit-exact with sox effect of same name

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavcodec/ac3enc: use long long after switch to 64 bit bitrate
Ganesh Ajjanagadde [Sat, 19 Sep 2015 13:57:56 +0000 (09:57 -0400)]
avcodec/ac3enc: use long long after switch to 64 bit bitrate

Commit 7404f3bdb switched bitrate to 64 bits.
This triggers -Wabsolute-value on clang, e.g
http://fate.ffmpeg.org/log.cgi?time=20150917122742&log=compile&slot=x86_64-darwin-clang-3.7-O3.
Therefore, usage of abs is changed to llabs, which is available on all of the platforms.
Unfortunately, LLONG_MAX is not always available, so INT64_MAX is used instead.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/x86/cavsdsp: silence -Wunused-variable on --disable-mmx
Ganesh Ajjanagadde [Sat, 19 Sep 2015 14:34:22 +0000 (10:34 -0400)]
avcodec/x86/cavsdsp: silence -Wunused-variable on --disable-mmx

This silences -Wunused-variable when compiled with --disable-mmx, e.g
http://fate.ffmpeg.org/log.cgi?time=20150919094617&log=compile&slot=x86_64-archlinux-gcc-disable-mmx.
The alternative of header guards will make it far too ugly.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agofate: add chroma position scale test
Christophe Gisquet [Wed, 23 Sep 2015 13:06:02 +0000 (15:06 +0200)]
fate: add chroma position scale test

The sample position is made weird and non-nominal to force catching
such issues as default values or specialized operations hiding
issues in corner cases.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agovf_scale: conditionally override chroma position
Christophe Gisquet [Wed, 23 Sep 2015 13:06:01 +0000 (15:06 +0200)]
vf_scale: conditionally override chroma position

For yuv420p, the chroma position is unilaterally overriden, even
if ffmpeg's command-line explicitly set it. To fix this, override
only if the value is the default one.

Regression since 1515bfb3.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/brstm: fix overflow
Paul B Mahol [Wed, 23 Sep 2015 17:07:48 +0000 (19:07 +0200)]
avformat/brstm: fix overflow

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_chromakey: Add chromakey video filter
Timo Rothenpieler [Wed, 23 Sep 2015 16:06:46 +0000 (18:06 +0200)]
avfilter/vf_chromakey: Add chromakey video filter

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
4 years agoavcodec/aacenctab: Make aac_maxval_cb const
Michael Niedermayer [Wed, 23 Sep 2015 10:46:52 +0000 (12:46 +0200)]
avcodec/aacenctab: Make aac_maxval_cb const

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/libstagefright: fix Stagefright_decode_frame() failing to exit when the sourc...
zylthinking [Wed, 23 Sep 2015 05:01:44 +0000 (13:01 +0800)]
avcodec/libstagefright: fix Stagefright_decode_frame() failing to exit when the source is done

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agodoc/filters.texi: add rubberband documentation
Paul B Mahol [Wed, 23 Sep 2015 07:47:29 +0000 (09:47 +0200)]
doc/filters.texi: add rubberband documentation

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/af_rubberband: rename duplicate option name
Paul B Mahol [Wed, 23 Sep 2015 07:33:52 +0000 (09:33 +0200)]
avfilter/af_rubberband: rename duplicate option name

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoAAC encoder: tweak rate-distortion logic
Claudio Freire [Wed, 23 Sep 2015 05:13:56 +0000 (02:13 -0300)]
AAC encoder: tweak rate-distortion logic

This patch modifies the encode frame function to
retry encoding the frame when the resulting bit count
is too far off target, but only adjusting lambda
in small, incremental step. It also makes the logic
more conservative - otherwise it will contend with
bit reservoir-related variations in bit allocation,
and result in artifacts when frame have to be truncated
(usually at high bit rates transitioning from low
complexity to high complexity).

4 years agoAAC encoder: simplify and speed up find_min_book
Claudio Freire [Mon, 21 Sep 2015 06:41:26 +0000 (03:41 -0300)]
AAC encoder: simplify and speed up find_min_book

Trivial change to simplify the small but hot
find_min_book function. The new form is easier to
understand and faster.

4 years agoconfigure: Force mingw's ld to keep the reloc section
Alex Smith [Mon, 21 Sep 2015 04:41:36 +0000 (00:41 -0400)]
configure: Force mingw's ld to keep the reloc section

Binutils will always strip the relocation information from executable
files even if it needs it (dynamicbase/ASLR).  We can work around this
by using the pic-executable flag combined with setting the correct entry
point since apparently ld forgets what that should be.  This problem
affects both 32 and 64-bit mingw-w64.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/x86/mpegaudiodsp: silence -Wunused-variable on --disable-mmx
Ganesh Ajjanagadde [Sat, 19 Sep 2015 14:47:38 +0000 (10:47 -0400)]
avcodec/x86/mpegaudiodsp: silence -Wunused-variable on --disable-mmx

This silences -Wunused-variable when compiled with --disable-mmx, e.g
http://fate.ffmpeg.org/log.cgi?time=20150919094617&log=compile&slot=x86_64-archlinux-gcc-disable-mmx.
The alternative of header guards will make it far too ugly.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/x86/rv40dsp_init: silence -Wunused-variable on --disable-mmx
Ganesh Ajjanagadde [Sat, 19 Sep 2015 14:43:37 +0000 (10:43 -0400)]
avcodec/x86/rv40dsp_init: silence -Wunused-variable on --disable-mmx

This silences -Wunused-variable when compiled with --disable-mmx, e.g
http://fate.ffmpeg.org/log.cgi?time=20150919094617&log=compile&slot=x86_64-archlinux-gcc-disable-mmx.
The alternative of header guards will make it far too ugly.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/hermite: fix "libavfilter/hermite.h:19:15: error: no previous prototype...
Michael Niedermayer [Tue, 22 Sep 2015 21:41:44 +0000 (23:41 +0200)]
avfilter/hermite: fix "libavfilter/hermite.h:19:15: error: no previous prototype for hermite_interpolation"

Fix build

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter: add agate filter
Paul B Mahol [Thu, 17 Sep 2015 09:38:23 +0000 (09:38 +0000)]
avfilter: add agate filter

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavcodec/mpegvideo_enc: Avoid fine lambda steps in VBV retry code when RD is not in use
Michael Niedermayer [Tue, 22 Sep 2015 18:17:40 +0000 (20:17 +0200)]
avcodec/mpegvideo_enc: Avoid fine lambda steps in VBV retry code when RD is not in use

Reduces the number of times the vbv retry code is used and should have no
effect on quality

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agohls: only seek if there is an offset
Andreas Cadhalpun [Tue, 22 Sep 2015 11:40:20 +0000 (13:40 +0200)]
hls: only seek if there is an offset

If there is no #EXT-X-BYTERANGE specified, there is no need to seek.
Seeking fails anyway for rtmp, because this protocol does not support
url_seek.

This fixes CNN.m3u from trac ticket 4797 (i.e. Debian bug #798189).

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
4 years agoavcodec/dvdsubdec: don't use a NULL log context
wm4 [Tue, 22 Sep 2015 15:40:06 +0000 (17:40 +0200)]
avcodec/dvdsubdec: don't use a NULL log context

4 years agoavcodec/dvdsubdec: reject some broken packets
wm4 [Mon, 21 Sep 2015 16:22:35 +0000 (18:22 +0200)]
avcodec/dvdsubdec: reject some broken packets

If cmd_pos is broken, this would just keep accumulating packets in the
reassembly buffer, until it fails and flushes the buffer on overflow.
Since packets are usually rather small, this will take a lot of subtitle
packets. The perceived effect is that subtitles are not displayed
anymore after the faulty packet was passed to the decoder.

I'm not terribly sure about this, but on the other hand this code is
active only when fragmented packets need to be reassembled.

Fixes sample file in trac issue #4872.

4 years agoavcodec/dvdsub: fix partial packet assembly
wm4 [Mon, 21 Sep 2015 16:16:35 +0000 (18:16 +0200)]
avcodec/dvdsub: fix partial packet assembly

Assuming the first and second packets are partial, this would append the
reassembly buffer (ctx->buf) to itself with the second
append_to_cached_buf() call, because buf is set to ctx->buf.

I do not know a valid sample file which triggers this, and do not know
if packets can be split into more than 2 sub-packets, but it triggered
with a (differently) broken sample file in trac issue #4872.

4 years agoavformat/hls: fix some cases of HLS streams which require cookies
wm4 [Mon, 21 Sep 2015 12:43:06 +0000 (14:43 +0200)]
avformat/hls: fix some cases of HLS streams which require cookies

Broken by commit ba12ba859aabfa7153ba397d869db13acdaba340. This only
happens with HLS streams which use encryption and require preserving
cookies sent by the server.

Fixes trac issue #4846.

4 years agoavfilter: add tremolo filter
Kyle Swanson [Mon, 21 Sep 2015 15:16:43 +0000 (10:16 -0500)]
avfilter: add tremolo filter

Signed-off-by: Kyle Swanson <k@ylo.ph>
4 years agoUpdate my email address
Jean Delvare [Tue, 22 Sep 2015 08:43:27 +0000 (10:43 +0200)]
Update my email address

My old address no longer works.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agohevc: fix wpp threading deadlock.
Ronald S. Bultje [Sun, 20 Sep 2015 10:39:14 +0000 (12:39 +0200)]
hevc: fix wpp threading deadlock.

Fixes ticket 4258.

4 years agovp9: fix loopfilter test code to address Hendrik's comments.
Ronald S. Bultje [Sun, 20 Sep 2015 10:20:39 +0000 (12:20 +0200)]
vp9: fix loopfilter test code to address Hendrik's comments.

(I forgot to actually merge them into the patch I just pushed.)

4 years agox86/vp9dsp: fix local header include
James Almer [Mon, 21 Sep 2015 17:37:32 +0000 (14:37 -0300)]
x86/vp9dsp: fix local header include

Signed-off-by: James Almer <jamrial@gmail.com>
4 years agox86/vp9dsp: add missing header include
James Almer [Mon, 21 Sep 2015 17:34:08 +0000 (14:34 -0300)]
x86/vp9dsp: add missing header include

Fixes make checkheaders

Signed-off-by: James Almer <jamrial@gmail.com>
4 years agoavcodec/dvdsubdec: fix indentation
wm4 [Mon, 21 Sep 2015 11:46:34 +0000 (13:46 +0200)]
avcodec/dvdsubdec: fix indentation

4 years agoavformat/assdec: do not drop duplicate subtitles
wm4 [Mon, 21 Sep 2015 11:44:37 +0000 (13:44 +0200)]
avformat/assdec: do not drop duplicate subtitles

Duplicates are perfectly legitimate with this format. A correct
renderer will typically show them stacked.

4 years agoavformat/vobsub: do not attempt to check duplicate subtitles
wm4 [Mon, 21 Sep 2015 11:43:32 +0000 (13:43 +0200)]
avformat/vobsub: do not attempt to check duplicate subtitles

Some .idx files actually contain duplicate subtitle events:

timestamp: 00:07:52:600, filepos: 00004e800
timestamp: 00:07:52:600, filepos: 00004f800

The second will be dropped, because it has same pts, duration, and text
(the text is just a dummy empty string; the real data is retrieved when
actually reading vobsub subtitle packets).

Dropping this is probably not intended/safe, so avoid it.

See trac issue #4872 for a sample. This patch doesn't fix decoding of
the sample, though.

4 years agoavformat/subtitles: make dropping duplicate events optional
wm4 [Mon, 21 Sep 2015 11:42:48 +0000 (13:42 +0200)]
avformat/subtitles: make dropping duplicate events optional

4 years agoavformat/vobsub: compare correct packet stream IDs
wm4 [Mon, 21 Sep 2015 10:09:08 +0000 (12:09 +0200)]
avformat/vobsub: compare correct packet stream IDs

The stream ID is essentially an arbitrary number defined by the .idx
file headers. They have to match the IDs in the .sub stream. The vobsub
demuxer assumed the IDs would just start from 0, increassing by 1 for
each stream. This is not correct. In the sample I had, the IDs were
starting from 1, leading to no subtitles being displayed at all.

Fix this by using the correct stream ID.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoconfigure: silence error if tput not found
Ganesh Ajjanagadde [Mon, 21 Sep 2015 01:50:17 +0000 (21:50 -0400)]
configure: silence error if tput not found

If tput is not found for colorizing, error message should be squashed.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agodoc: mention libavcodec can decode Opus natively
James Almer [Mon, 21 Sep 2015 02:20:43 +0000 (23:20 -0300)]
doc: mention libavcodec can decode Opus natively

Signed-off-by: James Almer <jamrial@gmail.com>
4 years agompjpeg: CRLF terminating a sequence of MIME headers should not cause an error
Alex Agranovsky [Sat, 12 Sep 2015 23:04:26 +0000 (19:04 -0400)]
mpjpeg: CRLF terminating a sequence of MIME headers should not cause an error

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/snowenc: Do not write into const AVFrame
Michael Niedermayer [Sun, 20 Sep 2015 20:55:15 +0000 (22:55 +0200)]
avcodec/snowenc: Do not write into const AVFrame

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/snowenc: Remove unused new_picture field
Michael Niedermayer [Sun, 20 Sep 2015 20:52:33 +0000 (22:52 +0200)]
avcodec/snowenc: Remove unused new_picture field

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoswscale: fix ticket 4850
Pedro Arthur [Sun, 20 Sep 2015 21:03:49 +0000 (18:03 -0300)]
swscale: fix ticket 4850

4 years agoavdevice/libdc1394: add const to suppress "assignment discards const qualifier from...
Michael Niedermayer [Sun, 20 Sep 2015 20:11:59 +0000 (22:11 +0200)]
avdevice/libdc1394: add const to suppress "assignment discards const qualifier from pointer target type" warnings

See: http://fate.ffmpeg.org/log.cgi?time=20150919100330&log=compile&slot=x86_64-archlinux-gcc-enableshared

Found-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/hevc_mp4toannexb_bsf: silence -Wdiscarded-qualifiers
Ganesh Ajjanagadde [Sun, 20 Sep 2015 13:10:51 +0000 (09:10 -0400)]
avcodec/hevc_mp4toannexb_bsf: silence -Wdiscarded-qualifiers

*poutbuf is non-const, so this casts it explicitly.
This suppresses -Wdiscarded-qualifiers seen in e.g
http://fate.ffmpeg.org/log.cgi?time=20150919100330&log=compile&slot=x86_64-archlinux-gcc-enableshared.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agotests/checkasm: fix stack smash in check_loopfilter
Rodger Combs [Sun, 20 Sep 2015 17:29:32 +0000 (12:29 -0500)]
tests/checkasm: fix stack smash in check_loopfilter

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavf/matroska: ignore ChapCountry ID for now
Rodger Combs [Sun, 20 Sep 2015 14:34:05 +0000 (09:34 -0500)]
lavf/matroska: ignore ChapCountry ID for now

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter: add rubberband wrapper
Paul B Mahol [Fri, 18 Sep 2015 20:22:05 +0000 (20:22 +0000)]
avfilter: add rubberband wrapper

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agolavfi: remove FF_LINK_FLAG_REQUEST_LOOP.
Nicolas George [Wed, 26 Aug 2015 10:11:26 +0000 (12:11 +0200)]
lavfi: remove FF_LINK_FLAG_REQUEST_LOOP.

It has no longer any effect.

4 years agolavfi: drop the requirement that request_frame returns a frame.
Nicolas George [Tue, 25 Aug 2015 18:33:48 +0000 (20:33 +0200)]
lavfi: drop the requirement that request_frame returns a frame.

It requires a loop in filters or the framework,
that makes the scheduling less efficient and more complex.
This is purely an internal change since the loop is now
present in buffersink.
Note that no filter except buffersink did rely on the requirement.

4 years agolavfi/vf_idet: reindent after last commit.
Nicolas George [Wed, 26 Aug 2015 10:21:27 +0000 (12:21 +0200)]
lavfi/vf_idet: reindent after last commit.

4 years agolavfi/vf_idet: remove the loop in request_frame().
Nicolas George [Tue, 25 Aug 2015 18:31:50 +0000 (20:31 +0200)]
lavfi/vf_idet: remove the loop in request_frame().

It is not necessary due to the use of FF_LINK_FLAG_REQUEST_LOOP.

4 years agolavfi/buffersink: loop over ff_request_frame().
Nicolas George [Tue, 25 Aug 2015 22:15:22 +0000 (00:15 +0200)]
lavfi/buffersink: loop over ff_request_frame().

Do not assume that ff_request_frame() returning success
implies a frame has arrived in the FIFO.
Instead, just loop until a frame is in the FIFO.
It does not change anything since the same loop is present
in ff_request_frame(), confirmed by an assertion.

4 years agox86/vp9mc: fix string concatenation of fullpel function names
James Almer [Sat, 19 Sep 2015 23:27:03 +0000 (20:27 -0300)]
x86/vp9mc: fix string concatenation of fullpel function names

Fixes compilation with NASM

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
4 years agoavcodec/internal: Use do {} while() for ff_tlog()
Michael Niedermayer [Sun, 20 Sep 2015 10:55:10 +0000 (12:55 +0200)]
avcodec/internal: Use do {} while() for ff_tlog()

Avoids problems when used without braces

Found-by: Clément Bœsch <u@pkh.me>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>