ffmpeg.git
5 years agoupdate for FFmpeg 2.0.3 n2.0.3
Michael Niedermayer [Tue, 24 Dec 2013 02:22:00 +0000 (03:22 +0100)]
update for FFmpeg 2.0.3

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavutil/log: skip IO calls on empty strings
Michael Niedermayer [Fri, 6 Dec 2013 22:30:34 +0000 (23:30 +0100)]
avutil/log: skip IO calls on empty strings

These occur when no context is set for example, thus they are common

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit a044a183a3fb90b20a8deaa3ea1158510bcdd420)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodo O(1) instead of O(n) atomic operations in register functions
Michael Niedermayer [Fri, 6 Dec 2013 14:24:10 +0000 (15:24 +0100)]
do O(1) instead of O(n) atomic operations in register functions

about 1ms faster startup time

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 133fbfc7811ffae7b97dd129fcd0b5e646742362)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/libopusenc: change default frame duration to 20 ms
Paul B Mahol [Fri, 15 Nov 2013 01:09:06 +0000 (01:09 +0000)]
avcodec/libopusenc: change default frame duration to 20 ms

20 ms is used by libopus encoder.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
(cherry picked from commit 74906d3727ec3bd9b7b28dfa7a98ff6e8cf8b6d7)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/jpeg2000dec: Check precno before using it in JPEG2000_PGOD_CPRL
Michael Niedermayer [Sun, 24 Nov 2013 02:50:20 +0000 (03:50 +0100)]
avcodec/jpeg2000dec: Check precno before using it in JPEG2000_PGOD_CPRL

Fixes out of array reads
Fixes: asan_heap-oob_f0de57_6823_mjp2.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 3d5a5e86be2a65e33c34ab3ad7923f54e8e49c1d)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec: move end zeroing code from av_packet_split_side_data() to avcodec_decode_sub...
Michael Niedermayer [Thu, 21 Nov 2013 01:32:37 +0000 (02:32 +0100)]
avcodec: move end zeroing code from av_packet_split_side_data() to avcodec_decode_subtitle2()

This code changes the input packet, which is read only and can in
rare circumstances lead to decoder errors. (i run into one of these in
the audio decoder, which corrupted the packet during av_find_stream_info()
so that actual decoding that single packet failed later)
Until a better fix is implemented, this commit limits the problem.
A better fix might be to make the subtitle decoders not depend on
data[size] = 0 or to copy their input when this is not the case.
(cherry picked from commit 01923bab98506b1e98b4cbf08419364ce6ffea6d)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavutil: reintroduce lls1 as the 52 ABI needs it
Michael Niedermayer [Fri, 15 Nov 2013 22:32:51 +0000 (23:32 +0100)]
avutil: reintroduce lls1 as the 52 ABI needs it

lls1 taken from ff130d7

This is incompatible with libavcodec version
55.18.100 to 55.43.100 except 55.39.101
This incompatibility is caused by these libavcodec versions depending on
a libavutil 52 which is ABI incompatible with the previous ABI 52

you can avoid this incompatibility by upgrading your libavcodec so it
does no longer depend on the invalid ABI

See: 502ab21af0ca68f76d6112722c46d2f35c004053
See: cc6714bb16b1f0716ba43701d47273dbe9657b8b
See: 41578f70cf8aec8e7565fba1ca7e07f3dc46c3d2
See: Ticket3136
Tested-by: marillat
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit b382d09d29be90e0947295a70cdcbaa60b9030b8)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agorename new lls code to lls2 to avoid conflict with the old which has a different ABI
Michael Niedermayer [Sat, 16 Nov 2013 15:42:57 +0000 (16:42 +0100)]
rename new lls code to lls2 to avoid conflict with the old which has a different ABI

also remove failed attempt at a compatibility layer, the code simply cannot work

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit c3814ab654a993723b0e5f14cc252d68f233ad79)

Conflicts:

libavcodec/version.h

5 years agoavutil: rename lls to lls2
Michael Niedermayer [Fri, 15 Nov 2013 21:35:46 +0000 (22:35 +0100)]
avutil: rename lls to lls2

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit bbe66ef912470007f7cc424badde2ccec500b36b)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agompeg12dec: Remove incomplete and wrong UV swapping code for VCR2
Diego Biurrun [Wed, 13 Nov 2013 17:44:25 +0000 (18:44 +0100)]
mpeg12dec: Remove incomplete and wrong UV swapping code for VCR2

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 321514042534a2501a9f6223b88f0d2b8060f858)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agompegvideo: Fix swapping of UV planes for VCR2
Kostya Shishkov [Wed, 13 Nov 2013 17:44:26 +0000 (18:44 +0100)]
mpegvideo: Fix swapping of UV planes for VCR2

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit bae14f38d992f326c94d93f01197ccd84ea62053)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoh264: Do not treat the initial frame special in handling of frame gaps
Michael Niedermayer [Thu, 14 Nov 2013 10:27:45 +0000 (11:27 +0100)]
h264: Do not treat the initial frame special in handling of frame gaps

The not handling of frame gaps has lead to the lack of a dummy reference
frame, which has lead to the failure of decode_slice_header() which has
lead to one SEI recovery message being skiped which had introduced a
slightly suboptimal recovery point for at least 1 h264 file compared to
JM.

Found-by: Carl & BugMaster
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 9e5ef1c5c37208326c59d642e2dc7afd3f10b09b)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/jpeg2000dec: non zero image offsets are not supported
Michael Niedermayer [Sat, 26 Oct 2013 00:19:13 +0000 (02:19 +0200)]
avcodec/jpeg2000dec: non zero image offsets are not supported

Fixes out of array accesses
Fixes Ticket3080
Found-by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 780669ef7c23c00836a24921fcc6b03be2b8ca4a)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/thp: force moving forward
Michael Niedermayer [Thu, 31 Oct 2013 01:26:07 +0000 (02:26 +0100)]
avformat/thp: force moving forward

Fixes infinite loop
Fixes Ticket3098

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 6c4b87d3d6ae08a6da16b4616626b4d2a726afbf)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavformat/thp: fix variable types to avoid overflows
Michael Niedermayer [Thu, 31 Oct 2013 01:19:40 +0000 (02:19 +0100)]
avformat/thp: fix variable types to avoid overflows

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 2b1056e4e27b046af3777e8bd65a5145abff878f)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/jpeglsdec: check err value for ls_get_code_runterm()
Michael Niedermayer [Wed, 30 Oct 2013 22:27:28 +0000 (23:27 +0100)]
avcodec/jpeglsdec: check err value for ls_get_code_runterm()

Fixes infinite loop
Fixes Ticket3086

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit cc0e47b55096361723b364afa43b79a3f5619cdc)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavutil/opt: initialize ret
Michael Niedermayer [Sun, 20 Oct 2013 16:38:48 +0000 (18:38 +0200)]
avutil/opt: initialize ret

Fixes CID1108610
Fixes use of uninitialized variable

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 2d8ccf0adcae09cb9e14b01cfe20e4d77c3bbf5d)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/utils: add some saftey checks to add_metadata_from_side_data()
Michael Niedermayer [Sat, 19 Oct 2013 15:52:47 +0000 (17:52 +0200)]
avcodec/utils: add some saftey checks to add_metadata_from_side_data()

This fixes potential overreads with crafted files.

Found-by: wm4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 838f461b0716393a1b5c70efd03de1e8bc197380)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/avpacket/av_packet_split_side_data: ensure that side data padding is initialized
Michael Niedermayer [Sat, 19 Oct 2013 15:45:54 +0000 (17:45 +0200)]
avcodec/avpacket/av_packet_split_side_data: ensure that side data padding is initialized

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 240fd8c96f59ebe9dcfc4152a1086cd3f63400c0)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavfilter/ff_insert_pad: fix order of operations
Michael Niedermayer [Mon, 21 Oct 2013 14:21:14 +0000 (16:21 +0200)]
avfilter/ff_insert_pad: fix order of operations

Fixes out of bounds access
Fixes CID732170
Fixes CID732169

No filter is known to use this function in a way so the issue can be reproduced.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit ab2bfb85d49b2f8aa505816f93e75fd18ad0a361)

Conflicts:

libavfilter/avfilter.c

5 years agoavcodec/jpeg2000dec: fix context consistency with too large lowres
Michael Niedermayer [Tue, 15 Oct 2013 11:15:47 +0000 (13:15 +0200)]
avcodec/jpeg2000dec: fix context consistency with too large lowres

Fixes out of array accesses
Fixes Ticket2898

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit a1b9004b768bef606ee98d417bceb9392ceb788d)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/jpeg2000dec: prevent out of array accesses in pixel addressing
Michael Niedermayer [Sun, 13 Oct 2013 19:18:23 +0000 (21:18 +0200)]
avcodec/jpeg2000dec: prevent out of array accesses in pixel addressing

Fixes Ticket2921

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit fe448cd28d674c3eff3072552eae366d0b659ce9)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/jpeg2000dec: check transform equality in MCT
Michael Niedermayer [Mon, 19 Aug 2013 01:33:40 +0000 (03:33 +0200)]
avcodec/jpeg2000dec: check transform equality in MCT

Fixes null pointer dereference
Fixes Ticket2843

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit ac3b01a9c0607961f4540fe62040833870f5deb1)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoffserver: strip odd chars from html error messages before sending them back
Michael Niedermayer [Tue, 8 Oct 2013 22:30:46 +0000 (00:30 +0200)]
ffserver: strip odd chars from html error messages before sending them back

Fixes Ticket3034

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 885739f3b4ca3fb60abf417120845e3fcfb99b53)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoVC1: Fix intensity compensation performance regression
Mason Carter [Sun, 22 Dec 2013 01:27:18 +0000 (17:27 -0800)]
VC1: Fix intensity compensation performance regression

Fix https://trac.ffmpeg.org/ticket/3204

The problem was that intensity compensation was always used once it was
encountered. This is because v->next_use_ic was never set back to zero.
To fix this, when resetting v->next_luty/uv, also reset v->next_use_ic.

This improved (restored) performance by 85% when decoding
http://bit.ly/bbbwmv

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit ed5bed4152203aed8cce01a679bed67bbda8903f)

5 years agoarm: Don't clobber callee saved registers in scalarproduct
Martin Storsjö [Fri, 20 Dec 2013 13:02:35 +0000 (15:02 +0200)]
arm: Don't clobber callee saved registers in scalarproduct

q4-q7/d8-d15 are supposed to not be clobbered by the callee.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit d307e408d4a9ada22df443cc38be77cc5e492694)

5 years agoswscale/utils: check chroma width for fast bilinear scaler
Michael Niedermayer [Sun, 15 Dec 2013 13:13:55 +0000 (14:13 +0100)]
swscale/utils: check chroma width for fast bilinear scaler

Fixes artifacts where fast bilinear was used for downscaling chroma

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 037fc3b054b10aee0f11fdbe835e5dffa8e95b37)

5 years agoswscale/utils: remove useless ()
Michael Niedermayer [Sun, 15 Dec 2013 13:10:02 +0000 (14:10 +0100)]
swscale/utils: remove useless ()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 554e913fd7acc9da02ddac2c5ce9487f7f633c92)

5 years agoavcodec/cabac: force get_cabac to be not inlined
Michael Niedermayer [Thu, 5 Dec 2013 00:41:10 +0000 (01:41 +0100)]
avcodec/cabac: force get_cabac to be not inlined

works around bug in gccs inline asm register assignment
Fixes Ticket3177

gcc from 4.4 to 4.6 is affected at least, no non affected gccs known
clang seems not affected

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 0538b29ae8002c44f27bae8a1a6fc6e646998be5)

5 years agoavcodec/error_resilience: check that er is supported before attempting to read the...
Michael Niedermayer [Fri, 6 Dec 2013 15:49:35 +0000 (16:49 +0100)]
avcodec/error_resilience: check that er is supported before attempting to read the status of the previous slice

Fixes incorrectly set error_occured and improves speed

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 90539cea336fd513c47295a03c164cb4a851166f)

5 years agoavcodec/error_resilience: factor er_supported() check out
Michael Niedermayer [Fri, 6 Dec 2013 15:49:00 +0000 (16:49 +0100)]
avcodec/error_resilience: factor er_supported() check out

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit afb18c55783362546b5e512ce01b7fe7bf5744d9)

5 years agolavfi/af_pan: support unknown layouts on input.
Nicolas George [Fri, 25 Oct 2013 14:12:06 +0000 (16:12 +0200)]
lavfi/af_pan: support unknown layouts on input.

Fix trac ticket #2899.
(cherry picked from commit 7b0a587393e03dab552d66450d43ab82bda0a5a1)

5 years agolavfi/af_pan: support unknown layouts on output.
Nicolas George [Fri, 25 Oct 2013 14:02:04 +0000 (16:02 +0200)]
lavfi/af_pan: support unknown layouts on output.
(cherry picked from commit 4e9adc9b7363cc336e3d47c98455e1508902fd29)

5 years agolswr: fix assert failure on unknown layouts.
Nicolas George [Fri, 25 Oct 2013 14:11:30 +0000 (16:11 +0200)]
lswr: fix assert failure on unknown layouts.
(cherry picked from commit 4a640a6ac89099bfb02d6d3d3ada04e321a37476)

5 years agolavfi: parsing helper for unknown channel layouts.
Nicolas George [Fri, 25 Oct 2013 13:07:40 +0000 (15:07 +0200)]
lavfi: parsing helper for unknown channel layouts.

Make ff_parse_channel_layout() accept unknown layouts too.
(cherry picked from commit 6e2473edfda26a556c615ebc04d8aeba800bef7e)

5 years agolavfi/avfiltergraph: do not reduce incompatible lists.
Nicolas George [Tue, 3 Sep 2013 20:13:49 +0000 (22:13 +0200)]
lavfi/avfiltergraph: do not reduce incompatible lists.

A list of "all channel layouts" but not "all channel counts"
can not be reduced to a single unknown channel count.
(cherry picked from commit d300f5f6f570659e4b58567b35c9e8600c9f2956)

5 years agolavfi/avfiltergraph: suggest a solution when format selection fails.
Nicolas George [Tue, 3 Sep 2013 20:12:54 +0000 (22:12 +0200)]
lavfi/avfiltergraph: suggest a solution when format selection fails.

Format selection can fail if unknown channel layouts are used
with filters that do not support it.
(cherry picked from commit f775eb3fb4c7b716107355e428e40cb63f71ee7a)

5 years agolavd/lavfi: support unknown channel layouts.
Nicolas George [Mon, 28 Oct 2013 10:50:09 +0000 (11:50 +0100)]
lavd/lavfi: support unknown channel layouts.
(cherry picked from commit 863fb11f63f7f60feec390f3c54dd13606e07d05)

5 years agoavformat/image2: allow muxing gif files.
Clément Bœsch [Sat, 19 Oct 2013 17:39:28 +0000 (19:39 +0200)]
avformat/image2: allow muxing gif files.

Fixes Ticket #2936.
(cherry picked from commit f70db22999d713da3306bf29ec763d670b9bf1ea)

Conflicts:
libavformat/img2enc.c

5 years agobuild: avoid stdin stall with GNU AS probing.
Clément Bœsch [Fri, 8 Nov 2013 22:55:06 +0000 (23:55 +0100)]
build: avoid stdin stall with GNU AS probing.

a758c5e added probing for various tools, such as AS. Unfortunately, GNU
AS is reading stdin with -v, and thus configure is stalled with
configure arguments such as --as=as.

Fixes Ticket #1898.
(cherry picked from commit dbb41f93c16cbc65a899a75723c95da51c851cd5)

5 years agoavformat/utils: dont count attached pics toward the probesize
Michael Niedermayer [Mon, 18 Nov 2013 02:02:36 +0000 (03:02 +0100)]
avformat/utils: dont count attached pics toward the probesize

Such pics behave more like headers which we also dont count.
Fixes Ticket3146

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit a8dec360c5db15e8da4b44ff3c0f02a6c57e8ac0)

5 years agoavcodec/bink: fix seeking to frame 0
Michael Niedermayer [Wed, 30 Oct 2013 22:56:52 +0000 (23:56 +0100)]
avcodec/bink: fix seeking to frame 0

Fixes Ticket3088

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit cb52d6da0a9c88c584a38a9a7a94825565854b7e)

Conflicts:
libavcodec/bink.c

5 years agoffmpeg_filter: Fix non jpeg yuv in jpeg support
Michael Niedermayer [Wed, 2 Oct 2013 12:16:12 +0000 (14:16 +0200)]
ffmpeg_filter: Fix non jpeg yuv in jpeg support

This is a regression, did not bisect so dont know what caused it but
likely some changes to the command line handling code.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit d9bc251d3978cf0b9722991f7c23edebca7abb18)

5 years agoavformat/utils: do not override pts in h264 when they are provided from the demuxer
Michael Niedermayer [Sat, 26 Oct 2013 23:03:19 +0000 (01:03 +0200)]
avformat/utils: do not override pts in h264 when they are provided from the demuxer

Fixes Ticket2143

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 1e5271a9fd6ddcceb083f2185a4bbd8d44c9a813)

5 years agoh264: make flush_change() set mmco_reset
Michael Niedermayer [Fri, 25 Oct 2013 23:22:38 +0000 (01:22 +0200)]
h264: make flush_change() set mmco_reset

This ensures that frames do not get mixed on context reinits

Fixes Ticket2836

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 3c9dd93faa9f3c250428dd0548c075583aa07cc3)

5 years agoavcodec/h264: reduce noisiness of "mmco: unref short failure"
Michael Niedermayer [Fri, 25 Oct 2013 18:03:29 +0000 (20:03 +0200)]
avcodec/h264: reduce noisiness of "mmco: unref short failure"

Do not consider it an error if we have no frames and should discard one.
This condition can easily happen when decoding is started from an I frame

Fixes Ticket2811

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 08a89761964bdd0a023eff6d37a1131fb7e1d7a0)

5 years agoavformat/mp3dec: perform seek resync in the correct direction
Michael Niedermayer [Fri, 25 Oct 2013 17:35:55 +0000 (19:35 +0200)]
avformat/mp3dec: perform seek resync in the correct direction

Fixes seeking to the last frame in CBR files
Fixes Ticket2773

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit ba8716df7fb541fb690d1a898cda0e12f9011faf)

5 years agoavformat/wavdec: Fix smv packet interleaving
Michael Niedermayer [Fri, 25 Oct 2013 10:50:26 +0000 (12:50 +0200)]
avformat/wavdec: Fix smv packet interleaving

This strips the relative timestamp "flag" off.

Fixes Ticket2849

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 6abb9eb525239f954ec12e52fc209e6dfce2a6d4)

5 years agoavcodec/h264: do not trust last_pic_droppable when marking pictures as done
Michael Niedermayer [Thu, 24 Oct 2013 21:11:41 +0000 (23:11 +0200)]
avcodec/h264: do not trust last_pic_droppable when marking pictures as done

This simplifies the code and fixes a deadlock

Fixes Ticket2927
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 29ffeef5e73b8f41ff3a3f2242d356759c66f91f)

5 years agodoc/Makefile: fix man pages uninstall path
Stefano Sabatini [Thu, 24 Oct 2013 19:14:55 +0000 (21:14 +0200)]
doc/Makefile: fix man pages uninstall path

Fix trac ticket #3054.
(cherry picked from commit af1c5388501e80e6d92704bb70610998226e5e51)

5 years agoavformat/mov: force parsing of headers if stts is absent
Michael Niedermayer [Fri, 4 Oct 2013 15:39:19 +0000 (17:39 +0200)]
avformat/mov: force parsing of headers if stts is absent

Fixes Ticket2991

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit e41ea866fc26f38d770bbc1ad67703e7f4400ae1)

5 years agoavformat/gifdec: make GIF_APP_EXT_LABEL parsing more robust
Michael Niedermayer [Fri, 4 Oct 2013 20:56:02 +0000 (22:56 +0200)]
avformat/gifdec: make GIF_APP_EXT_LABEL parsing more robust

Fixes Ticket3021

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit e1f8184a1a973fd7de1bf53578d09661ec7bad75)

5 years agoavformat/matroskadec: only set r_frame_rate if the value is within reasonable limits
Michael Niedermayer [Sat, 5 Oct 2013 22:07:28 +0000 (00:07 +0200)]
avformat/matroskadec: only set r_frame_rate if the value is within reasonable limits

Fixes Ticket2451

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 6853e40106cac769f0641183ea0bdd530ae9a0a1)

5 years agoavformat/wavdec: Dont trust the fact chunk for PCM
Michael Niedermayer [Wed, 9 Oct 2013 19:43:06 +0000 (21:43 +0200)]
avformat/wavdec: Dont trust the fact chunk for PCM

Fixes Ticket3033

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 83fc6c822b06688e572333299927d93eb3c6c426)

5 years agoavcodec/h264_refs: modify key frame detection heuristic to detect more cases
Michael Niedermayer [Wed, 9 Oct 2013 21:52:54 +0000 (23:52 +0200)]
avcodec/h264_refs: modify key frame detection heuristic to detect more cases

Fixes Ticket2968

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 5ac6b6028f17b64723884c9fa72cfcbd369a1ba2)

5 years agolavd/v4l2: do not fail when VIDIOC_ENUMSTD returns EINVAL without a valid match
mrlika [Mon, 2 Sep 2013 12:10:22 +0000 (15:10 +0300)]
lavd/v4l2: do not fail when VIDIOC_ENUMSTD returns EINVAL without a valid match

With some (buggy) drivers, the VIDIOC_G_STD ioctl returns a std_id that cannot
be matched with any of the enumerated v4l2_standard structures (for example
std_id = 0 or std_id = 0xffffff). Do not fail when we reach the end of the
enumeration without a valid match.

Fixes ticket #2370

Note: This commit message has been modified by Giorgio Vazzana, the original
commit message was:

"Fixed regression for mandatory VIDIOC_ENUMSTD support by v4l2"

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit ed72542539fb61dc3a6d6280d8a6a956ac04a071)

5 years agodoc/codecs: fix dangling reference to codec-options chapter n2.0.2
Stefano Sabatini [Sat, 27 Jul 2013 14:50:19 +0000 (16:50 +0200)]
doc/codecs: fix dangling reference to codec-options chapter
(cherry picked from commit b4bd21b7fe2ad8be59b16538448586814e5db65b)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoupdate for 2.0.2
Michael Niedermayer [Tue, 8 Oct 2013 17:39:58 +0000 (19:39 +0200)]
update for 2.0.2

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/ffv1dec: fix format detection
Paul B Mahol [Mon, 9 Sep 2013 10:44:27 +0000 (10:44 +0000)]
avcodec/ffv1dec: fix format detection

Fixes crash with carefuly designed files.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
(cherry picked from commit a27227d401adf12534dc7a26d72e43e2f35f8944)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/parser: reset indexes on realloc failure
Michael Niedermayer [Thu, 26 Sep 2013 19:03:48 +0000 (21:03 +0200)]
avcodec/parser: reset indexes on realloc failure

Fixes Ticket2982

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit f31011e9abfb2ae75bb32bc44e2c34194c8dc40a)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/imgconvert/get_color_type: fix type for PAL8
Michael Niedermayer [Wed, 2 Oct 2013 16:11:28 +0000 (18:11 +0200)]
avcodec/imgconvert/get_color_type: fix type for PAL8

Fixes Ticket3008

Fate changes as PAL8 gets used instead of BGR8

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 95666b22989b9b9f91a27da01b2bdbf4ee8022d3)

5 years agoconfigure: fix logic for threads in case of OpenCL is enabled.
Thilo Borgmann [Tue, 1 Oct 2013 14:49:39 +0000 (16:49 +0200)]
configure: fix logic for threads in case of OpenCL is enabled.

Fixes ticket 3004.

Signed-off-by: Thilo Borgmann <thilo.borgmann@mail.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit d3a03d90a3d57cdc6f915a05f5f28ee4bb470d00)

5 years agoMerge remote-tracking branch 'TimothyGu/release/2.0' into release/2.0
Michael Niedermayer [Mon, 23 Sep 2013 20:31:41 +0000 (22:31 +0200)]
Merge remote-tracking branch 'TimothyGu/release/2.0' into release/2.0

* TimothyGu/release/2.0:
  doc/encoders: add doc for AAC encoder
  doc/formats: Add documentation for 3 parameters that have been missing
  doc/encoders: improve libvo-aacenc doc
  doc/encoders: reformat and add some clarification in libtwolame doc
  doc/encoders: reformat libmp3lame doc
  doc/encoders: add libxvid doc
  doc/encoders: partially rewrite and reformat libx264 docs

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoMerge remote-tracking branch 'jamrial/release/2.0' into release/2.0
Michael Niedermayer [Mon, 23 Sep 2013 20:30:42 +0000 (22:30 +0200)]
Merge remote-tracking branch 'jamrial/release/2.0' into release/2.0

* jamrial/release/2.0:
  avformat/matroskadec: check out_samplerate before using it in av_rescale()
  matroskadec: Improve TTA duration calculation
  avformat/oggparsevorbis: fix leak of tt
  avformat/oggparsevorbis: fix leak of ct

Merged-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/g2meet: Fix framebuf size
Michael Niedermayer [Sat, 21 Sep 2013 21:34:11 +0000 (23:34 +0200)]
avcodec/g2meet: Fix framebuf size

Currently the code can in some cases draw tiles that hang outside the
allocated buffer. This patch increases the buffer size to avoid out
of array accesses. An alternative would be to fail if such tiles are
encountered.
I do not know if any valid files use such hanging tiles.

Fixes Ticket2971
Found-by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit e07ac727c1cc9eed39e7f9117c97006f719864bd)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/g2meet: Fix order of align and pixel size multiplication.
Michael Niedermayer [Sun, 15 Sep 2013 14:33:27 +0000 (16:33 +0200)]
avcodec/g2meet: Fix order of align and pixel size multiplication.

Fixes out of array accesses
Fixes Ticket2922

Found-by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 821a5938d100458f4d09d634041b05c860554ce0)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/ffv1enc: update buffer check for 16bps
Michael Niedermayer [Mon, 9 Sep 2013 15:58:18 +0000 (17:58 +0200)]
avcodec/ffv1enc: update buffer check for 16bps

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 3728603f1854b5c79d1a64dd3b41b80640ef1e7f)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/truemotion2: Fix av_freep arguments
Michael Niedermayer [Sun, 8 Sep 2013 18:27:54 +0000 (20:27 +0200)]
avcodec/truemotion2: Fix av_freep arguments

Fixes null pointer dereference
Fixes Ticket2944

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit c54aa2fb0f869ec025933944cbd1634fffe95d09)

Conflicts:

libavcodec/truemotion2.c

5 years agoavcodec/mjpegdec: Add some sanity checks to ljpeg_decode_rgb_scan()
Michael Niedermayer [Wed, 4 Sep 2013 22:36:44 +0000 (00:36 +0200)]
avcodec/mjpegdec: Add some sanity checks to ljpeg_decode_rgb_scan()

These prevent the rgb ljpeg code from being run on parameters that it doesnt
support. No testcase available but it seems possible to trigger these.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 61c68000eda643dfce96dc46b488d39fd5c4e309)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavfilter/vf_fps: make sure the fifo is not empty before using it
Michael Niedermayer [Mon, 2 Sep 2013 02:32:23 +0000 (04:32 +0200)]
avfilter/vf_fps: make sure the fifo is not empty before using it

Fixes Ticket2905

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit cdd5df8189ff1537f7abe8defe971f80602cc2d2)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/dsputil: fix signedness in sizeof() comparissions
Michael Niedermayer [Fri, 30 Aug 2013 21:40:47 +0000 (23:40 +0200)]
avcodec/dsputil: fix signedness in sizeof() comparissions

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 454a11a1c9c686c78aa97954306fb63453299760)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoffv1dec: Check bits_per_raw_sample and colorspace for equality in ver 0/1 headers
Michael Niedermayer [Fri, 30 Aug 2013 04:08:32 +0000 (06:08 +0200)]
ffv1dec: Check bits_per_raw_sample and colorspace for equality in ver 0/1 headers

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit b05cd1ea7e45a836f7f6071a716c38bb30326e0f)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agoavcodec/ffv1dec: check global header version
Michael Niedermayer [Fri, 30 Aug 2013 01:43:49 +0000 (03:43 +0200)]
avcodec/ffv1dec: check global header version

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 20b965a1a43ae88b7ae95635d5a3570e7dc2bbd4)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
5 years agodoc/encoders: add doc for AAC encoder
Timothy Gu [Sun, 8 Sep 2013 23:32:22 +0000 (16:32 -0700)]
doc/encoders: add doc for AAC encoder

Thanks-to: Kostya Shishkov <kostya.shishkov@gmail.com>
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
(cherry picked from commit 0e11790cf7eef3b0f38a64486da1e3fb8c7f14b8)

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
5 years agodoc/formats: Add documentation for 3 parameters that have been missing
Timothy Gu [Mon, 16 Sep 2013 02:08:58 +0000 (19:08 -0700)]
doc/formats: Add documentation for 3 parameters that have been missing

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit b7dd4598630fb1f890ae060f21a9ec92a103f22d)

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
5 years agodoc/encoders: improve libvo-aacenc doc
Timothy Gu [Sun, 8 Sep 2013 03:13:11 +0000 (20:13 -0700)]
doc/encoders: improve libvo-aacenc doc

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
(cherry picked from commit 81bbe49a0e588aa899f37a567808ba8926d798d6)

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
5 years agodoc/encoders: reformat and add some clarification in libtwolame doc
Timothy Gu [Sat, 3 Aug 2013 23:55:40 +0000 (16:55 -0700)]
doc/encoders: reformat and add some clarification in libtwolame doc

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
(cherry picked from commit e45e72f5f89ef5a5791562cfcb935028b46ecd0a)

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
5 years agodoc/encoders: reformat libmp3lame doc
Timothy Gu [Sat, 3 Aug 2013 23:51:26 +0000 (16:51 -0700)]
doc/encoders: reformat libmp3lame doc

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
(cherry picked from commit 40b8350b57adaa9aaf6731bac5130d4fec1639c3)

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
5 years agodoc/encoders: add libxvid doc
Timothy Gu [Tue, 30 Jul 2013 02:12:10 +0000 (19:12 -0700)]
doc/encoders: add libxvid doc

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
(cherry picked from commit 6b255e5e70c72aa59ff7aed74b4ee976223eb140)

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
5 years agodoc/encoders: partially rewrite and reformat libx264 docs
Timothy Gu [Mon, 22 Jul 2013 23:44:11 +0000 (16:44 -0700)]
doc/encoders: partially rewrite and reformat libx264 docs

Format is based on the thread:
"[PATCH] doc/encoders: Add libopus encoder doc" (06-28-2013)
http://thread.gmane.org/gmane.comp.video.ffmpeg.devel/165368/

Also merge the two option sections (Mapping and Private options).

Patch partially edited by Stefano Sabatini.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
(cherry picked from commit 11cb697501edf6447a718d6194f0e63ec2310d39)

Signed-off-by: Timothy Gu <timothygu99@gmail.com>
5 years agoavformat/matroskadec: check out_samplerate before using it in av_rescale()
Michael Niedermayer [Sun, 18 Aug 2013 00:20:54 +0000 (02:20 +0200)]
avformat/matroskadec: check out_samplerate before using it in av_rescale()

Prevent assertion failure with damaged input

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 338f8b2eaf36f078eb5cc26ac10e651dc4c48243)

5 years agomatroskadec: Improve TTA duration calculation
James Almer [Sat, 17 Aug 2013 17:48:33 +0000 (14:48 -0300)]
matroskadec: Improve TTA duration calculation

Calculate the duration as accurately as possible to improve decoding of samples
where the last frame is smaller than the rest.

Signed-off-by: James Almer <jamrial@gmail.com>
Approved-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit af248fa1174200acb537a6ab1198bb2fed38e884)

5 years agoavformat/oggparsevorbis: fix leak of tt
Michael Niedermayer [Wed, 7 Aug 2013 15:20:39 +0000 (17:20 +0200)]
avformat/oggparsevorbis: fix leak of tt

Fixes CID1061059
Fixes fate
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit f3b7f470701224086d06012f1d9a31864abe9300)

5 years agoavformat/oggparsevorbis: fix leak of ct
Michael Niedermayer [Wed, 7 Aug 2013 15:18:19 +0000 (17:18 +0200)]
avformat/oggparsevorbis: fix leak of ct

Fixes CID1061058
Fixes fate

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit d0a882ab1d2a4197da1edd77450af30e2da3460e)

5 years agoavcodec/assenc: fix potential overread.
Clément Bœsch [Sun, 8 Sep 2013 16:23:44 +0000 (18:23 +0200)]
avcodec/assenc: fix potential overread.

(cherry picked from commit 860a0810583f54ccbde912aebda8711f18eab8eb)

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
5 years agoavcodec/srtdec: fix potential overread.
Clément Bœsch [Sun, 8 Sep 2013 16:28:11 +0000 (18:28 +0200)]
avcodec/srtdec: fix potential overread.

(cherry picked from commit 3a54c221d574ec944db1eddf9df895808f32bf9e)

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
5 years agoavformat/subtitles: add a next line jumper and use it.
Clément Bœsch [Sun, 8 Sep 2013 16:02:45 +0000 (18:02 +0200)]
avformat/subtitles: add a next line jumper and use it.

This fixes a bunch of possible overread in avformat with the idiom p +=
strcspn(p, "\n") + 1 (strcspn() can focus on the trailing '\0' if no
'\n' is found, so the +1 leads to an overread).

Note on lavf/matroskaenc: no extra subtitles.o Makefile dependency is
added because only the header is required for ff_subtitles_next_line().

Note on lavf/mpsubdec: code gets slightly complex to avoid an infinite
loop in the probing since there is no more forced increment.

NOTE:
Code of function ff_subtitles_next_line fixed by Alexander Strasser.

The original code from master did test the wrong character, but was
corrected by a subsequent commit. That commit however is not backported,
so it had to be fixed in this commit for the backport.

Conflicts:
libavformat/mpl2dec.c

(cherry picked from commit 90fc00a623de44e137fe1601b91356e8cd8bdd54)

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
5 years agoavformat/srtdec: skip initial random line breaks.
Clément Bœsch [Sun, 8 Sep 2013 14:17:46 +0000 (16:17 +0200)]
avformat/srtdec: skip initial random line breaks.

I found a bunch of (recent) SRT files in the wild with 3 to 10 line
breaks at the beginning.

(cherry picked from commit cfcd55db164e0acc0c30b2cf084e6eebe9741d34)

Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
5 years agoUse rc_max_rate if no video bit_rate was specified when muxing mxf_d10.
Carl Eugen Hoyos [Mon, 9 Sep 2013 08:03:14 +0000 (10:03 +0200)]
Use rc_max_rate if no video bit_rate was specified when muxing mxf_d10.

Fixes ticket #2945.

Reviewed-by: Matthieu Bouron
(cherry picked from commit d73565d5ddf41d4b7805327cdb271c59d8c3fc59)

5 years agoStore the video bit_rate in the context when muxing mxf.
Carl Eugen Hoyos [Mon, 9 Sep 2013 08:02:12 +0000 (10:02 +0200)]
Store the video bit_rate in the context when muxing mxf.

This will allow using rc_max_rate if no bit_rate is specified (on remuxing).

Reviewed-by: Matthieu Bouron
(cherry picked from commit 52cf08b4c8859f7cac010a7a59f7aa369384ad85)

5 years agoavformat/subtitles: check lower bound for duration overlap seeking.
Clément Bœsch [Sun, 8 Sep 2013 07:55:02 +0000 (09:55 +0200)]
avformat/subtitles: check lower bound for duration overlap seeking.

(cherry picked from commit 1ca4bf930bab681a79fb591330043675c7cfd798)

5 years agoavformat/vobsub: fix seeking.
Clément Bœsch [Sun, 8 Sep 2013 07:43:53 +0000 (09:43 +0200)]
avformat/vobsub: fix seeking.

(cherry picked from commit f8678dcef3c5b0ea82e898e1f419863409fa135f)

5 years agoavformat/matroskaenc: remove bogus prores tag
Paul B Mahol [Sun, 8 Sep 2013 12:35:31 +0000 (12:35 +0000)]
avformat/matroskaenc: remove bogus prores tag

Fixes: ffmpeg -i input -c:v prores output.mkv

Signed-off-by: Paul B Mahol <onemda@gmail.com>
(cherry picked from commit 14851ca5f5a3af140085e82589e28e06c7cdefdc)

Conflicts:
libavformat/matroskaenc.c

5 years agoRead h264 headers from v4l2 to allow stream-copying.
Carl Eugen Hoyos [Sun, 1 Sep 2013 18:20:47 +0000 (20:20 +0200)]
Read h264 headers from v4l2 to allow stream-copying.

Fixes ticket #2882.
Analyzed and tested by William C Bonner.
(cherry picked from commit e337c9d56408dc00a15887309488a1ff5cb06ba3)

5 years agow64dec: fix end position of summarylist guid
Paul B Mahol [Tue, 3 Sep 2013 01:03:10 +0000 (01:03 +0000)]
w64dec: fix end position of summarylist guid

Noticed-by: James Almer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
(cherry picked from commit 3e36dc8626f4721ea749286dae40169ee5cb7d04)

5 years agow64dec: fix skipping of unknown guids
Paul B Mahol [Mon, 2 Sep 2013 22:50:00 +0000 (22:50 +0000)]
w64dec: fix skipping of unknown guids

Regression since 14d50c1.
Fixes #2932.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
(cherry picked from commit 79b70e47a463057a3a48353ee1dd58671c11f86c)

5 years agoAvoid a deadlock when decoding wma.
Carl Eugen Hoyos [Mon, 2 Sep 2013 06:32:24 +0000 (08:32 +0200)]
Avoid a deadlock when decoding wma.

Fixes ticket #2925.
(cherry picked from commit ec8a4841f7e81040f9a2757f23e70dff5e6b33a4)

5 years agoavcodec/ffv1dec: reorganize thread init/update
Carl Eugen Hoyos [Mon, 2 Sep 2013 06:49:59 +0000 (08:49 +0200)]
avcodec/ffv1dec: reorganize thread init/update

This moves some allocations to init, reducing possible failure modes in update.
Always copies from the previous context instead of just during init

Fixes Ticket2923

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 21dc3a3cc23c624630a4379f08a6efe0230de37a)

5 years agoavcodec/ffv1dec: move initial_states init to init_thread_copy()
Michael Niedermayer [Sun, 1 Sep 2013 17:29:38 +0000 (19:29 +0200)]
avcodec/ffv1dec: move initial_states init to init_thread_copy()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit c72cca5a44d8a83e097a97a13990d421ba7a4c5d)

5 years agoavformat/lxfdec: use a parser to parse video frame headers
Michael Niedermayer [Sat, 31 Aug 2013 22:21:37 +0000 (00:21 +0200)]
avformat/lxfdec: use a parser to parse video frame headers

lxf needs a parser (or would need to set a few fields explicitly).
Fixes Ticket2917

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 8349be852be7f68fe0590584fd46c4d5f1c16b3d)