ffmpeg.git
4 years agomips/acelp_filters: fix incorrect register constraint
James Cowgill [Thu, 26 Feb 2015 13:42:52 +0000 (13:42 +0000)]
mips/acelp_filters: fix incorrect register constraint

Change register constraint on the v variable from = to +. This was causing GCC
to think that the v variable was never read and therefore not initialize it.

This fixes about 20 fate failures on mips64el.

Signed-off-by: James Cowgill <james410@cowgill.org.uk>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agomips/aacdec: refactor out duplicated assembly code
James Cowgill [Thu, 26 Feb 2015 13:42:47 +0000 (13:42 +0000)]
mips/aacdec: refactor out duplicated assembly code

The float_copy and fmul_and_reverse functions are refactored out from the
multiple copies in this file.

Signed-off-by: James Cowgill <james410@cowgill.org.uk>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agomips/sbrdsp: remove sbr_neg_odd_64_mips
James Cowgill [Thu, 26 Feb 2015 13:42:46 +0000 (13:42 +0000)]
mips/sbrdsp: remove sbr_neg_odd_64_mips

The optimized C version of this code actually runs faster than this
version, so remove it.

Signed-off-by: James Cowgill <james410@cowgill.org.uk>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agomips/fft: remove some useless assembly
James Cowgill [Thu, 26 Feb 2015 13:42:45 +0000 (13:42 +0000)]
mips/fft: remove some useless assembly

Remove some assembly that the compiler can easily handle optimally on its own.
GCC produces almost identical assembly.

Signed-off-by: James Cowgill <james410@cowgill.org.uk>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agomips/aacpsdsp: fix definition of ps_decorrelate_mips
James Cowgill [Thu, 26 Feb 2015 13:42:44 +0000 (13:42 +0000)]
mips/aacpsdsp: fix definition of ps_decorrelate_mips

Q_fract should have be declared as 'const float*'.
Also fix the constness of some local variables affected by this.

Signed-off-by: James Cowgill <james410@cowgill.org.uk>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agomips/mathops: remove 64-bit code
James Cowgill [Thu, 26 Feb 2015 13:42:42 +0000 (13:42 +0000)]
mips/mathops: remove 64-bit code

GCC is perfectly happy generating optimized multiplication code on its own for
64-bit arches. GCC refuses to optimize the loongson code when in 32-bit mode,
so I've left that.

Signed-off-by: James Cowgill <james410@cowgill.org.uk>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agotests: add paletteuse test
Clément Bœsch [Mon, 23 Feb 2015 12:51:15 +0000 (13:51 +0100)]
tests: add paletteuse test

4 years agotests: add palettegen test
Clément Bœsch [Mon, 23 Feb 2015 12:51:06 +0000 (13:51 +0100)]
tests: add palettegen test

4 years agoavfilter/paletteuse: use AV_QSORT()
Clément Bœsch [Thu, 26 Feb 2015 10:31:09 +0000 (11:31 +0100)]
avfilter/paletteuse: use AV_QSORT()

See previous commit for a rationale.

4 years agoavfilter/palettegen: use AV_QSORT()
Clément Bœsch [Wed, 25 Feb 2015 15:06:34 +0000 (16:06 +0100)]
avfilter/palettegen: use AV_QSORT()

This makes the sorting of the colors along an axis (r, g or b)
predictible, and thus testable under FATE. The performance is not really
an issue here since the function is called only once at the end and will
need to sort very small number of entries, so an alternative would be to
make the sorting functions (see DECLARE_CMP_FUNC()) fallback on another
axis in case of equality. This approach was actually simpler.

I don't know if there is any advantage in using a multidimensional sort,
but it will affect the final palette one way or another.

4 years agoavfilter/palettegen: consistently use the same frame for dimensions
Clément Bœsch [Thu, 26 Feb 2015 09:25:53 +0000 (10:25 +0100)]
avfilter/palettegen: consistently use the same frame for dimensions

4 years agoavfilter/palettegen: use a logging context for the dupped color warning
Clément Bœsch [Thu, 26 Feb 2015 09:19:45 +0000 (10:19 +0100)]
avfilter/palettegen: use a logging context for the dupped color warning

4 years agoavfilter/palettegen: export color quantization ratio
Clément Bœsch [Wed, 25 Feb 2015 14:34:13 +0000 (15:34 +0100)]
avfilter/palettegen: export color quantization ratio

4 years agoavformat/adxdec: check avctx->channels for invalid values
Andreas Cadhalpun [Wed, 25 Feb 2015 21:55:44 +0000 (22:55 +0100)]
avformat/adxdec: check avctx->channels for invalid values

This avoids a null pointer dereference of pkt->data.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/adxdec: set avctx->channels in adx_read_header
Andreas Cadhalpun [Thu, 26 Feb 2015 00:06:57 +0000 (01:06 +0100)]
avformat/adxdec: set avctx->channels in adx_read_header

It is used in adx_read_packet, which currently depends on the decoder/parser setting this value between reading the file header and demuxing the first packet.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/dss: implement seeking
Michael Niedermayer [Tue, 24 Feb 2015 13:58:17 +0000 (14:58 +0100)]
avformat/dss: implement seeking

This assumes CBR (which is true for all samples i have)

Previous version reviewed by: Oleksij Rempel <linux@rempel-privat.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/dss: set bitrate
Michael Niedermayer [Tue, 24 Feb 2015 13:57:39 +0000 (14:57 +0100)]
avformat/dss: set bitrate

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/dss: set packet duration
Michael Niedermayer [Tue, 24 Feb 2015 13:51:16 +0000 (14:51 +0100)]
avformat/dss: set packet duration

Value taken from the decoder implementation

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/dss: correct sample rate
Michael Niedermayer [Tue, 24 Feb 2015 14:22:37 +0000 (15:22 +0100)]
avformat/dss: correct sample rate

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agolibavutil: add x86 optimized av_popcount
James Almer [Wed, 25 Feb 2015 22:52:33 +0000 (19:52 -0300)]
libavutil: add x86 optimized av_popcount

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
4 years agoavcodec/hevc_ps: Check that log2_ctb_size is not smaller than the bounds of all profiles
Michael Niedermayer [Wed, 25 Feb 2015 21:10:41 +0000 (22:10 +0100)]
avcodec/hevc_ps: Check that log2_ctb_size is not smaller than the bounds of all profiles

Fixes: unaligned memory access
Fixes: signal_sigsegv_3344165_576_cov_3406448105_DBLK_A_MAIN10_VIXS_2.bit

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Suggested-by: Christophe Gisquet <christophe.gisquet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/snow: Initialize spatial_decomposition_count to a valid value
Michael Niedermayer [Wed, 25 Feb 2015 20:18:13 +0000 (21:18 +0100)]
avcodec/snow: Initialize spatial_decomposition_count to a valid value

Fixes undefined behavior
Fixes: signal_sigsegv_24169e6_3445_cov_3778346427_snow_chroma_bug.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavutil/common: Fix integer overflow in av_clip_int8/16_c
Michael Niedermayer [Wed, 25 Feb 2015 19:55:02 +0000 (20:55 +0100)]
avutil/common: Fix integer overflow in av_clip_int8/16_c

Fixes: signal_sigsegv_30420a5_2388_cov_1489993561_integra_lavf.mp4

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/hevcdsp: ARM NEON optimized qpel functions
Seppo Tomperi [Wed, 25 Feb 2015 09:44:55 +0000 (09:44 +0000)]
avcodec/hevcdsp: ARM NEON optimized qpel functions

uses comma as macro parameter separator

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge remote-tracking branch 'cehoyos/master'
Michael Niedermayer [Wed, 25 Feb 2015 16:49:33 +0000 (17:49 +0100)]
Merge remote-tracking branch 'cehoyos/master'

* cehoyos/master:
  Allow muxing h264 into ts with startcode "001" instead of "0001".
  lavfi/fade: Do not overread input buffer.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/hevc_ps: Sanity checks for some log2_* values
Michael Niedermayer [Wed, 25 Feb 2015 14:51:28 +0000 (15:51 +0100)]
avcodec/hevc_ps: Sanity checks for some log2_* values

log2 values which imply numeric overflow are not supported

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavfilter/palettegen: move longest variable to a local scope
Clément Bœsch [Wed, 25 Feb 2015 16:25:10 +0000 (17:25 +0100)]
avfilter/palettegen: move longest variable to a local scope

Also drop initialization since it is initialized later on before any
usage.

4 years agoAllow muxing h264 into ts with startcode "001" instead of "0001".
Carl Eugen Hoyos [Wed, 25 Feb 2015 14:08:33 +0000 (15:08 +0100)]
Allow muxing h264 into ts with startcode "001" instead of "0001".

Fixes ticket #2220.
Fixes ticket #4324.

4 years agolavfi/fade: Do not overread input buffer.
Carl Eugen Hoyos [Wed, 25 Feb 2015 14:07:18 +0000 (15:07 +0100)]
lavfi/fade: Do not overread input buffer.

4 years agoavformat/mov: Check ctts_count before use
Michael Niedermayer [Wed, 25 Feb 2015 12:00:51 +0000 (13:00 +0100)]
avformat/mov: Check ctts_count before use

Fixes out of array read
Fixes: asan_heap-oob_ae74b5_3610_cov_1739568095_test.3g2

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/zmbv: Check len before reading in decode_frame()
Michael Niedermayer [Wed, 25 Feb 2015 11:29:10 +0000 (12:29 +0100)]
avcodec/zmbv: Check len before reading in decode_frame()

Fixes out of array read
Fixes: asan_heap-oob_4d4eb0_3994_cov_3169972261_zmbv_15bit.avi

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/h264: Clear last_pic_for_ec on seeks and reinits
Michael Niedermayer [Wed, 25 Feb 2015 02:22:13 +0000 (03:22 +0100)]
avcodec/h264: Clear last_pic_for_ec on seeks and reinits

Fixes out of array read
Fixes: asan_heap-oob_2ff30d2_3479_cov_3803648058_src13_hrc7_525_420_2.264

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/arm/hevcdsp_idct_neon: drop ".code 32"
Michael Niedermayer [Tue, 24 Feb 2015 18:01:25 +0000 (19:01 +0100)]
avcodec/arm/hevcdsp_idct_neon: drop ".code 32"

gas-preprocessor and armasm fail otherwise

Tested-by: Timotius Margo
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '85b3b1c4ba7af9c2658442b0aafd27d613e1854b'
Michael Niedermayer [Wed, 25 Feb 2015 00:33:18 +0000 (01:33 +0100)]
Merge commit '85b3b1c4ba7af9c2658442b0aafd27d613e1854b'

* commit '85b3b1c4ba7af9c2658442b0aafd27d613e1854b':
  xcbgrab: Unbreak parsing filename options

Conflicts:
libavdevice/xcbgrab.c

See: db442c873631065e8719df6da91c016d25501084
Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'b31328d008985f87f0a7c83c700847cef1a4f08c'
Michael Niedermayer [Wed, 25 Feb 2015 00:12:50 +0000 (01:12 +0100)]
Merge commit 'b31328d008985f87f0a7c83c700847cef1a4f08c'

* commit 'b31328d008985f87f0a7c83c700847cef1a4f08c':
  xcbgrab: Provide better names for the y and x option

Conflicts:
doc/indevs.texi
libavdevice/x11grab.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'da7e561964ee833678dc24fae0b0265358126d1e'
Michael Niedermayer [Wed, 25 Feb 2015 00:05:10 +0000 (01:05 +0100)]
Merge commit 'da7e561964ee833678dc24fae0b0265358126d1e'

* commit 'da7e561964ee833678dc24fae0b0265358126d1e':
  matroskaenc: Allow writing track "forced" flag

See: d88d0b6db6bd77269e3c2d3b4894c072f3860671
Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'd594dbecce5f3af7f80bbf5bb1b516d740b69ccd'
Michael Niedermayer [Tue, 24 Feb 2015 23:58:35 +0000 (00:58 +0100)]
Merge commit 'd594dbecce5f3af7f80bbf5bb1b516d740b69ccd'

* commit 'd594dbecce5f3af7f80bbf5bb1b516d740b69ccd':
  rtpdec: Rename the free method to close

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '8e32b1f0963d01d4f5d4803eb721f162e0d58d9a'
Michael Niedermayer [Tue, 24 Feb 2015 23:48:46 +0000 (00:48 +0100)]
Merge commit '8e32b1f0963d01d4f5d4803eb721f162e0d58d9a'

* commit '8e32b1f0963d01d4f5d4803eb721f162e0d58d9a':
  libavformat: Use ffio_free_dyn_buf where applicable

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '199fb40278146c5bb162990c66ad3cd561abc780'
Michael Niedermayer [Tue, 24 Feb 2015 23:40:58 +0000 (00:40 +0100)]
Merge commit '199fb40278146c5bb162990c66ad3cd561abc780'

* commit '199fb40278146c5bb162990c66ad3cd561abc780':
  rtpdec: Use ffio_free_dyn_buf

Conflicts:
libavformat/rtpdec_latm.c
libavformat/rtpdec_svq3.c
libavformat/rtpdec_xiph.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '8a273a746061a112e5e35066a8fd8e146d821a62'
Michael Niedermayer [Tue, 24 Feb 2015 23:32:57 +0000 (00:32 +0100)]
Merge commit '8a273a746061a112e5e35066a8fd8e146d821a62'

* commit '8a273a746061a112e5e35066a8fd8e146d821a62':
  avio: Add an internal utility function for freeing dynamic buffers

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '078d43e23a7a3d64aafee8a58b380d3e139b3020'
Michael Niedermayer [Tue, 24 Feb 2015 23:31:39 +0000 (00:31 +0100)]
Merge commit '078d43e23a7a3d64aafee8a58b380d3e139b3020'

* commit '078d43e23a7a3d64aafee8a58b380d3e139b3020':
  rtpdec: Free depacketizers if the init function failed

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'bb4a310bb85f43e62240145a656b1e5285b14239'
Michael Niedermayer [Tue, 24 Feb 2015 23:25:12 +0000 (00:25 +0100)]
Merge commit 'bb4a310bb85f43e62240145a656b1e5285b14239'

* commit 'bb4a310bb85f43e62240145a656b1e5285b14239':
  rtpdec: Don't free the payload context in the .free function

Conflicts:
libavformat/rtpdec_latm.c
libavformat/rtpdec_mpeg4.c
libavformat/rtpdec_mpegts.c
libavformat/rtpdec_xiph.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'f4b59334bd898c47c9ac30999a346176548630a8'
Michael Niedermayer [Tue, 24 Feb 2015 23:17:44 +0000 (00:17 +0100)]
Merge commit 'f4b59334bd898c47c9ac30999a346176548630a8'

* commit 'f4b59334bd898c47c9ac30999a346176548630a8':
  rtpdec: Remove the now unused .alloc field

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/rtpdec_vp9: remove alloc/free functions
Michael Niedermayer [Tue, 24 Feb 2015 23:15:17 +0000 (00:15 +0100)]
avformat/rtpdec_vp9: remove alloc/free functions

Simplify code

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '78791c086bcaf9eb084c27555b31fea8bbb7624a'
Michael Niedermayer [Tue, 24 Feb 2015 23:03:52 +0000 (00:03 +0100)]
Merge commit '78791c086bcaf9eb084c27555b31fea8bbb7624a'

* commit '78791c086bcaf9eb084c27555b31fea8bbb7624a':
  rtpdec: Use .init instead of .alloc to set default values

Conflicts:
libavformat/rdt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '88434f9725e7c9484dcbcf323566ae88a2904f32'
Michael Niedermayer [Tue, 24 Feb 2015 22:44:41 +0000 (23:44 +0100)]
Merge commit '88434f9725e7c9484dcbcf323566ae88a2904f32'

* commit '88434f9725e7c9484dcbcf323566ae88a2904f32':
  rtpdec: Remove unnecessary inline attributes

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'ec96a89c3e507cf0fb1f2b159b28a53f2bad9a74'
Michael Niedermayer [Tue, 24 Feb 2015 22:44:20 +0000 (23:44 +0100)]
Merge commit 'ec96a89c3e507cf0fb1f2b159b28a53f2bad9a74'

* commit 'ec96a89c3e507cf0fb1f2b159b28a53f2bad9a74':
  rtpdec: Don't pass non-const pointers to fmtp attribute parsing functions

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'ac0e54fda9305cc7d149007f5b512bb8619f7c78'
Michael Niedermayer [Tue, 24 Feb 2015 22:38:14 +0000 (23:38 +0100)]
Merge commit 'ac0e54fda9305cc7d149007f5b512bb8619f7c78'

* commit 'ac0e54fda9305cc7d149007f5b512bb8619f7c78':
  rtpdec: Add const to string parameters in internal fmtp parsing functions

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '12251f997bbc0abb93be39c51021e6d404ca385f'
Michael Niedermayer [Tue, 24 Feb 2015 22:37:50 +0000 (23:37 +0100)]
Merge commit '12251f997bbc0abb93be39c51021e6d404ca385f'

* commit '12251f997bbc0abb93be39c51021e6d404ca385f':
  rtpdec: Remove unnecessary checks

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'c82bf15dca00f67a701d126e47ea9075fc9459cb'
Michael Niedermayer [Tue, 24 Feb 2015 22:30:51 +0000 (23:30 +0100)]
Merge commit 'c82bf15dca00f67a701d126e47ea9075fc9459cb'

* commit 'c82bf15dca00f67a701d126e47ea9075fc9459cb':
  rtpenc: Merge the h264 and hevc packetizers

Conflicts:
libavformat/rtpenc_hevc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '3567b91e49c6ae101c9a35c90f46b8ad9890ac15'
Michael Niedermayer [Tue, 24 Feb 2015 22:23:26 +0000 (23:23 +0100)]
Merge commit '3567b91e49c6ae101c9a35c90f46b8ad9890ac15'

* commit '3567b91e49c6ae101c9a35c90f46b8ad9890ac15':
  rtpdec_hevc: Share the implementation of fragmented packets with h264

Conflicts:
libavformat/rtpdec_h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'f3449062a8d100ac4f703647336c32b126aa99f1'
Michael Niedermayer [Tue, 24 Feb 2015 22:16:46 +0000 (23:16 +0100)]
Merge commit 'f3449062a8d100ac4f703647336c32b126aa99f1'

* commit 'f3449062a8d100ac4f703647336c32b126aa99f1':
  rtpdec_hevc: Reduce indentation level by returning early on errors

Conflicts:
libavformat/rtpdec_hevc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '8633fb47db2ec39eb8bd1bd65302af75a94ff5d0'
Michael Niedermayer [Tue, 24 Feb 2015 22:03:12 +0000 (23:03 +0100)]
Merge commit '8633fb47db2ec39eb8bd1bd65302af75a94ff5d0'

* commit '8633fb47db2ec39eb8bd1bd65302af75a94ff5d0':
  rtpdec_hevc: Share the implementation of parsing a=framesize with h264

Conflicts:
libavformat/rtpdec_h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '5956f489d0452ff6dea6b6b81b4fa8e596fc5684'
Michael Niedermayer [Tue, 24 Feb 2015 21:55:51 +0000 (22:55 +0100)]
Merge commit '5956f489d0452ff6dea6b6b81b4fa8e596fc5684'

* commit '5956f489d0452ff6dea6b6b81b4fa8e596fc5684':
  rtpdec_hevc: Add asterisks at the start of each long comment line

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '5d8cae45737bed6239bd6b6e0698802dbe1463c8'
Michael Niedermayer [Tue, 24 Feb 2015 21:55:14 +0000 (22:55 +0100)]
Merge commit '5d8cae45737bed6239bd6b6e0698802dbe1463c8'

* commit '5d8cae45737bed6239bd6b6e0698802dbe1463c8':
  rtpdec: Get rid of all trivial .alloc/.free functions

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'e72605f80bf5cbe32053a554ccc137e0a99cf3dd'
Michael Niedermayer [Tue, 24 Feb 2015 21:42:00 +0000 (22:42 +0100)]
Merge commit 'e72605f80bf5cbe32053a554ccc137e0a99cf3dd'

* commit 'e72605f80bf5cbe32053a554ccc137e0a99cf3dd':
  rtpdec: Allow allocating and freeing the private data without explicit functions

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '2b982e92f42a6e661d90b12b6592cd13cae496d4'
Michael Niedermayer [Tue, 24 Feb 2015 21:34:04 +0000 (22:34 +0100)]
Merge commit '2b982e92f42a6e661d90b12b6592cd13cae496d4'

* commit '2b982e92f42a6e661d90b12b6592cd13cae496d4':
  rtpdec: Set need_parsing via a handler field

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'b7a4c319fda22aa91ce29692d728ec6103b514f6'
Michael Niedermayer [Tue, 24 Feb 2015 21:33:45 +0000 (22:33 +0100)]
Merge commit 'b7a4c319fda22aa91ce29692d728ec6103b514f6'

* commit 'b7a4c319fda22aa91ce29692d728ec6103b514f6':
  rtpdec: Allow setting the need_parsing field in RTPDynamicProtocolHandler

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoxcbgrab: Unbreak parsing filename options
Luca Barbato [Sun, 22 Feb 2015 19:36:09 +0000 (20:36 +0100)]
xcbgrab: Unbreak parsing filename options

CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoxcbgrab: Provide better names for the y and x option
Luca Barbato [Sun, 22 Feb 2015 19:36:08 +0000 (20:36 +0100)]
xcbgrab: Provide better names for the y and x option

Incidentally `-y` also collides with avconv global options.

Update x11grab to match and document the option.

CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agomatroskaenc: Allow writing track "forced" flag
John Stebbins [Tue, 24 Feb 2015 20:44:48 +0000 (12:44 -0800)]
matroskaenc: Allow writing track "forced" flag

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
4 years agoMerge commit 'b651c9139e1ab222d5aab9151dcd7d6e40e49885'
Michael Niedermayer [Tue, 24 Feb 2015 21:26:39 +0000 (22:26 +0100)]
Merge commit 'b651c9139e1ab222d5aab9151dcd7d6e40e49885'

* commit 'b651c9139e1ab222d5aab9151dcd7d6e40e49885':
  rtpdec_mpa_robust: Move .enc_name to the start of the struct

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'db158f0dd217cf839be8af195d66cf49a76537a8'
Michael Niedermayer [Tue, 24 Feb 2015 21:26:15 +0000 (22:26 +0100)]
Merge commit 'db158f0dd217cf839be8af195d66cf49a76537a8'

* commit 'db158f0dd217cf839be8af195d66cf49a76537a8':
  rtpdec: Remove unnecessary _if_needed suffixes on functions

Conflicts:
libavformat/rtpdec_xiph.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '353b492d0f2a21ae8eb829db1ac01b54b2a4d202'
Michael Niedermayer [Tue, 24 Feb 2015 21:19:28 +0000 (22:19 +0100)]
Merge commit '353b492d0f2a21ae8eb829db1ac01b54b2a4d202'

* commit '353b492d0f2a21ae8eb829db1ac01b54b2a4d202':
  rtpdec: Change enc_name to a pointer instead of a fixed-size buffer

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '0752f700d63f6b15ffd5369ac7615414cce71247'
Michael Niedermayer [Tue, 24 Feb 2015 21:19:02 +0000 (22:19 +0100)]
Merge commit '0752f700d63f6b15ffd5369ac7615414cce71247'

* commit '0752f700d63f6b15ffd5369ac7615414cce71247':
  rtpdec_h264: Remove an unnecessary include

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '247764a592f83521f9c1ccdc900b00a8b84f3c87'
Michael Niedermayer [Tue, 24 Feb 2015 21:12:13 +0000 (22:12 +0100)]
Merge commit '247764a592f83521f9c1ccdc900b00a8b84f3c87'

* commit '247764a592f83521f9c1ccdc900b00a8b84f3c87':
  rtpdec_h264: Remove unnecessary struct padding

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit 'fe414059ec1fe8237574bed34cdaa8ac3893917b'
Michael Niedermayer [Tue, 24 Feb 2015 21:11:54 +0000 (22:11 +0100)]
Merge commit 'fe414059ec1fe8237574bed34cdaa8ac3893917b'

* commit 'fe414059ec1fe8237574bed34cdaa8ac3893917b':
  rtpdec_amr: Use the common indentation style

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agortpdec: Rename the free method to close
Martin Storsjö [Tue, 24 Feb 2015 15:01:48 +0000 (17:01 +0200)]
rtpdec: Rename the free method to close

Many of these functions were named foo_free_context, and since
the functions no longer should free the context itself, only
allocated elements within it, the previous naming was slightly
misleading.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agolibavformat: Use ffio_free_dyn_buf where applicable
Martin Storsjö [Tue, 24 Feb 2015 12:07:54 +0000 (14:07 +0200)]
libavformat: Use ffio_free_dyn_buf where applicable

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Use ffio_free_dyn_buf
Martin Storsjö [Tue, 24 Feb 2015 11:37:03 +0000 (13:37 +0200)]
rtpdec: Use ffio_free_dyn_buf

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agoavio: Add an internal utility function for freeing dynamic buffers
Martin Storsjö [Tue, 24 Feb 2015 11:23:30 +0000 (13:23 +0200)]
avio: Add an internal utility function for freeing dynamic buffers

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Free depacketizers if the init function failed
Martin Storsjö [Tue, 24 Feb 2015 11:18:10 +0000 (13:18 +0200)]
rtpdec: Free depacketizers if the init function failed

This is different from how it is handled in codecs/demuxers/muxers
though (where the close function isn't called if the open function
failed), but since the number of depacketizers that have an .init
function is quite limited, this is easy to change.

The main point is that if the init function failed, we shouldn't
try to use that depacketizer at all - this makes sure that the
parse function doesn't need to check for the things that were
initialized in the init function.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Don't free the payload context in the .free function
Martin Storsjö [Tue, 24 Feb 2015 11:07:57 +0000 (13:07 +0200)]
rtpdec: Don't free the payload context in the .free function

This makes it more consistent with depacketizers that don't have any
.free function at all, where the payload context is freed by the
surrounding framework. Always free the context in the surrounding
framework, having the individual depacketizers only free any data
they've specifically allocated themselves.

This is similar to how this works for demuxer/muxers/codecs - a
component shouldn't free the priv_data that the framework has
allocated for it.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Remove the now unused .alloc field
Martin Storsjö [Tue, 24 Feb 2015 10:45:15 +0000 (12:45 +0200)]
rtpdec: Remove the now unused .alloc field

Always use the .priv_data_size field instead.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Use .init instead of .alloc to set default values
Martin Storsjö [Tue, 24 Feb 2015 10:43:07 +0000 (12:43 +0200)]
rtpdec: Use .init instead of .alloc to set default values

The ugly error handling in rdt gets improved in a later commit.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Remove unnecessary inline attributes
Martin Storsjö [Tue, 24 Feb 2015 10:56:51 +0000 (12:56 +0200)]
rtpdec: Remove unnecessary inline attributes

These functions are far from performance critical, so there's no
point in marking them as inline.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Don't pass non-const pointers to fmtp attribute parsing functions
Martin Storsjö [Tue, 24 Feb 2015 10:32:17 +0000 (12:32 +0200)]
rtpdec: Don't pass non-const pointers to fmtp attribute parsing functions

This makes it clear that the individual parsing functions can't
touch the parsed out value.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Add const to string parameters in internal fmtp parsing functions
Martin Storsjö [Tue, 24 Feb 2015 10:31:23 +0000 (12:31 +0200)]
rtpdec: Add const to string parameters in internal fmtp parsing functions

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Remove unnecessary checks
Martin Storsjö [Tue, 24 Feb 2015 11:30:12 +0000 (13:30 +0200)]
rtpdec: Remove unnecessary checks

The free function of a depacketizer won't be called if data is NULL.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agoMerge commit '74d318f138f2a3f1b2fe81aea826d80d1e60f54c'
Michael Niedermayer [Tue, 24 Feb 2015 21:03:53 +0000 (22:03 +0100)]
Merge commit '74d318f138f2a3f1b2fe81aea826d80d1e60f54c'

* commit '74d318f138f2a3f1b2fe81aea826d80d1e60f54c':
  rtsp: Fix the indentation of a linewrapped statement

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '3cd5828fc0007e6d056067444de053a34ddedd02'
Michael Niedermayer [Tue, 24 Feb 2015 21:03:14 +0000 (22:03 +0100)]
Merge commit '3cd5828fc0007e6d056067444de053a34ddedd02'

* commit '3cd5828fc0007e6d056067444de053a34ddedd02':
  rtpdec: Add missing trailing commas

Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '04a1be8e28e81f3967eace7705343c450616cc95'
Michael Niedermayer [Tue, 24 Feb 2015 20:50:32 +0000 (21:50 +0100)]
Merge commit '04a1be8e28e81f3967eace7705343c450616cc95'

* commit '04a1be8e28e81f3967eace7705343c450616cc95':
  libavformat: add T.140 RTP depacketization (RFC 4103)

Conflicts:
libavformat/rtpdec.c
libavformat/version.h

See: af940e6cb1212d4338e55c03498ef5ae40e6e749
Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoMerge commit '26524e358147aade6e9dd18fff42d61b966bbc70'
Michael Niedermayer [Tue, 24 Feb 2015 20:34:38 +0000 (21:34 +0100)]
Merge commit '26524e358147aade6e9dd18fff42d61b966bbc70'

* commit '26524e358147aade6e9dd18fff42d61b966bbc70':
  rtsp: Interpret the text media type as AVMEDIA_TYPE_DATA

See: afb0e5a810ae110a69b618e5fbed78a7c1b899f3
Merged-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavcodec/h264: Only reinit quant tables if a new PPS is allowed
Michael Niedermayer [Tue, 24 Feb 2015 19:49:07 +0000 (20:49 +0100)]
avcodec/h264: Only reinit quant tables if a new PPS is allowed

Fixes null pointer dereference
Fixes: signal_sigsegv_3042097_3007_cov_1741463594_non_monotone_timestamps1.mkv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agodoc/filters.texi: add reference link to video size syntax description
Tobias Rapp [Tue, 24 Feb 2015 12:23:56 +0000 (13:23 +0100)]
doc/filters.texi: add reference link to video size syntax description

Update the filter option documentation text to link to ffmpeg-utils
documentation for video size syntax description.

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
4 years agoavformat/movenc: Fix writing ACLR atoms for DNxHD
Kevin Wheatley [Tue, 24 Feb 2015 10:00:07 +0000 (10:00 +0000)]
avformat/movenc: Fix writing ACLR atoms for DNxHD

Using the copy codec ACLR atoms where incorrectly written

During the creation of the ACLR atom we are assuming the vos_data
contains the DNxHD header. This change makes this explicit and
ensures we don't over write the stream with the extra_data.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agoavformat/dss: Set packet position correctly
Michael Niedermayer [Tue, 24 Feb 2015 13:54:20 +0000 (14:54 +0100)]
avformat/dss: Set packet position correctly

pos previously was set but then overwritten

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
4 years agortpenc: Merge the h264 and hevc packetizers
Martin Storsjö [Mon, 23 Feb 2015 21:06:01 +0000 (23:06 +0200)]
rtpenc: Merge the h264 and hevc packetizers

They share a great deal of common structure; only a few minor
bits in the headers differ.

This also fixes an off-by-one in sending of the last fragment
of large HEVC nals (where it previously sent len+2 bytes, even
if it should have been len+RTP_HEVC_HEADERS_SIZE aka len+3).

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec_hevc: Share the implementation of fragmented packets with h264
Martin Storsjö [Mon, 23 Feb 2015 21:28:34 +0000 (23:28 +0200)]
rtpdec_hevc: Share the implementation of fragmented packets with h264

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec_hevc: Reduce indentation level by returning early on errors
Martin Storsjö [Mon, 23 Feb 2015 21:17:54 +0000 (23:17 +0200)]
rtpdec_hevc: Reduce indentation level by returning early on errors

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec_hevc: Share the implementation of parsing a=framesize with h264
Martin Storsjö [Mon, 23 Feb 2015 18:59:41 +0000 (20:59 +0200)]
rtpdec_hevc: Share the implementation of parsing a=framesize with h264

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec_hevc: Add asterisks at the start of each long comment line
Martin Storsjö [Mon, 23 Feb 2015 21:13:55 +0000 (23:13 +0200)]
rtpdec_hevc: Add asterisks at the start of each long comment line

This is the common style for such comments.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Get rid of all trivial .alloc/.free functions
Martin Storsjö [Mon, 23 Feb 2015 20:18:32 +0000 (22:18 +0200)]
rtpdec: Get rid of all trivial .alloc/.free functions

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Allow allocating and freeing the private data without explicit functions
Martin Storsjö [Mon, 23 Feb 2015 19:57:33 +0000 (21:57 +0200)]
rtpdec: Allow allocating and freeing the private data without explicit functions

This can reduce the amount of boilerplate in simple depacketizers.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Set need_parsing via a handler field
Martin Storsjö [Mon, 23 Feb 2015 19:51:05 +0000 (21:51 +0200)]
rtpdec: Set need_parsing via a handler field

This avoids implementing a full function just to set this one
field.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Allow setting the need_parsing field in RTPDynamicProtocolHandler
Martin Storsjö [Mon, 23 Feb 2015 19:35:48 +0000 (21:35 +0200)]
rtpdec: Allow setting the need_parsing field in RTPDynamicProtocolHandler

This allows getting rid of quite a bit of boilerplate in depacketizers.

The default value (initializing need_parsing to 0, aka
AVSTREAM_PARSE_NONE) is the same as it is initialized to by default
in AVStream.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec_mpa_robust: Move .enc_name to the start of the struct
Martin Storsjö [Mon, 23 Feb 2015 19:51:59 +0000 (21:51 +0200)]
rtpdec_mpa_robust: Move .enc_name to the start of the struct

This makes it match the other depacketizers.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Remove unnecessary _if_needed suffixes on functions
Martin Storsjö [Mon, 23 Feb 2015 20:25:55 +0000 (22:25 +0200)]
rtpdec: Remove unnecessary _if_needed suffixes on functions

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec: Change enc_name to a pointer instead of a fixed-size buffer
Martin Storsjö [Mon, 23 Feb 2015 19:53:19 +0000 (21:53 +0200)]
rtpdec: Change enc_name to a pointer instead of a fixed-size buffer

This avoids allocating space for a too large buffer for all the
name strings.

Signed-off-by: Martin Storsjö <martin@martin.st>
4 years agortpdec_h264: Remove an unnecessary include
Martin Storsjö [Mon, 23 Feb 2015 20:22:28 +0000 (22:22 +0200)]
rtpdec_h264: Remove an unnecessary include

Nothing in this file use any network functions.

Signed-off-by: Martin Storsjö <martin@martin.st>