ffmpeg.git
4 years agoavfilter: add ciescope filter
Paul B Mahol [Mon, 1 Feb 2016 20:05:16 +0000 (21:05 +0100)]
avfilter: add ciescope filter

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agolavfi/drawutils: Add some missing GBRP pix_fmts.
Carl Eugen Hoyos [Thu, 3 Mar 2016 10:15:30 +0000 (11:15 +0100)]
lavfi/drawutils: Add some missing GBRP pix_fmts.

Fixes for example extractplanes with GBRAP16.

4 years agoavformat/yuv4mpegdec: fix seeking for partial files
Paul B Mahol [Wed, 2 Mar 2016 19:56:01 +0000 (20:56 +0100)]
avformat/yuv4mpegdec: fix seeking for partial files

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agolavc/videotoolboxenc: remove *_NULLABLE annotations; fixes pre-10.11 build
Rodger Combs [Thu, 3 Mar 2016 03:44:28 +0000 (21:44 -0600)]
lavc/videotoolboxenc: remove *_NULLABLE annotations; fixes pre-10.11 build

These macros were added in OS X 10.11, and the file compiles without warnings
on both 10.10 and 10.11 with them removed.

Thanks to mark4o on IRC for pointing out the failure and testing the patch.

4 years agofate: add filter-hls
Michael Niedermayer [Tue, 1 Mar 2016 01:30:05 +0000 (02:30 +0100)]
fate: add filter-hls

4 years agoffmpeg: remove hardcoded 'now' creation_time support
Marton Balint [Sat, 6 Feb 2016 17:05:37 +0000 (18:05 +0100)]
ffmpeg: remove hardcoded 'now' creation_time support

Every date parsing routine now uses av_parse_time which handles 'now' and
provides greater precision as well. This change also enables the segmenter
muxer to set the proper 'now' creation time at the beginning of each segment.

Signed-off-by: Marton Balint <cus@passwd.hu>
4 years agoavformat: use ff_standardize_creation_time for formats writing all format string...
Marton Balint [Sun, 28 Feb 2016 02:11:34 +0000 (03:11 +0100)]
avformat: use ff_standardize_creation_time for formats writing all format string metadata

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
4 years agoavformat/utils: add a function to standardize creation time
Marton Balint [Mon, 22 Feb 2016 02:13:20 +0000 (03:13 +0100)]
avformat/utils: add a function to standardize creation time

This can be used for formats which write all format metadata as string to
files, therefore non-standard creation times such as 'now' will be parsed.

The standardized creation time is UTC ISO 8601 with microsecond precision.

Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Marton Balint <cus@passwd.hu>
4 years agolavc: add VideoToolbox H.264 Encoder
Rick Kern [Wed, 2 Mar 2016 12:11:40 +0000 (20:11 +0800)]
lavc: add VideoToolbox H.264 Encoder

Autodetected by default. Encode using -codec:v h264_videotoolbox.

Signed-off-by: Rick Kern <kernrj@gmail.com>
Signed-off-by: wm4 <nfxjfg@googlemail.com>
4 years agolavf/utils: Add ff_get_packet_palette()
Mats Peterson [Wed, 2 Mar 2016 02:14:05 +0000 (03:14 +0100)]
lavf/utils: Add ff_get_packet_palette()

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/cache: Fix memleak of tree entries
Michael Niedermayer [Wed, 2 Mar 2016 13:09:23 +0000 (14:09 +0100)]
avformat/cache: Fix memleak of tree entries

Found-by: jamrial
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agofate/api: add missing FLV dependency to fate-api-seek
Clément Bœsch [Wed, 2 Mar 2016 12:51:50 +0000 (13:51 +0100)]
fate/api: add missing FLV dependency to fate-api-seek

4 years agoavfilter/vf_vectorscope: add 9 & 10 bit depth input & output support with alpha
Paul B Mahol [Wed, 2 Mar 2016 11:27:31 +0000 (12:27 +0100)]
avfilter/vf_vectorscope: add 9 & 10 bit depth input & output support with alpha

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agodoc/utils: fix typo for min() description
Paul B Mahol [Wed, 2 Mar 2016 10:20:07 +0000 (11:20 +0100)]
doc/utils: fix typo for min() description

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_vectorscope: make background opacity customizable
Paul B Mahol [Tue, 1 Mar 2016 23:39:07 +0000 (00:39 +0100)]
avfilter/vf_vectorscope: make background opacity customizable

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_vectorscope: add graticule
Paul B Mahol [Mon, 29 Feb 2016 10:32:17 +0000 (11:32 +0100)]
avfilter/vf_vectorscope: add graticule

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavfilter/vf_vectorscope: avoid crash by explicitly checking for 8-bit depth
Paul B Mahol [Tue, 1 Mar 2016 10:05:00 +0000 (11:05 +0100)]
avfilter/vf_vectorscope: avoid crash by explicitly checking for 8-bit depth

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agolavc/aacenc_utils: replace sqrtf(Q*sqrtf(Q)) by precomputed value
Ganesh Ajjanagadde [Tue, 1 Mar 2016 03:16:16 +0000 (22:16 -0500)]
lavc/aacenc_utils: replace sqrtf(Q*sqrtf(Q)) by precomputed value

It makes no sense whatsoever to do this at each function call; we
already have a table for this.

Yields a 2x improvement in find_min_book (x86-64, Haswell+GCC):
ffmpeg -i sin.flac -acodec aac -y sin.aac
find_min_book
old
    605 decicycles in find_min_book, 8388453 runs,    155 skips.9x
    606 decicycles in find_min_book,16776912 runs,    304 skips.9x
    607 decicycles in find_min_book,33553819 runs,    613 skips.2x
    607 decicycles in find_min_book,67107668 runs,   1196 skips.3x
    607 decicycles in find_min_book,134215360 runs,   2368 skips3x

new
    359 decicycles in find_min_book, 8388552 runs,     56 skips.3x
    360 decicycles in find_min_book,16777112 runs,    104 skips.1x
    361 decicycles in find_min_book,33554218 runs,    214 skips.4x
    361 decicycles in find_min_book,67108381 runs,    483 skips.5x
    361 decicycles in find_min_book,134216725 runs,   1003 skips5x

and more importantly a non-negligible speedup (~ 8%) to overall AAC encoding:
old:
ffmpeg -i sin.flac -acodec aac -strict -2 -y sin_new.aac  6.82s user 0.03s system 104% cpu 6.565 total
new:
ffmpeg -i sin.flac -acodec aac -strict -2 -y sin_old.aac  6.24s user 0.03s system 104% cpu 5.993 total

This also improves accuracy of the expression by ~ 2 ulp in some cases.

Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanag@gmail.com>
4 years agofate: add pipe and cache test
Michael Niedermayer [Mon, 29 Feb 2016 20:30:23 +0000 (21:30 +0100)]
fate: add pipe and cache test

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/seek-test: Support passing options to demuxers and protocols
Michael Niedermayer [Mon, 29 Feb 2016 20:37:51 +0000 (21:37 +0100)]
avformat/seek-test: Support passing options to demuxers and protocols

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavf/mov: Set display aspect ratio for avid dv.
Carl Eugen Hoyos [Wed, 2 Mar 2016 01:03:46 +0000 (02:03 +0100)]
lavf/mov: Set display aspect ratio for avid dv.

Fixes ticket #5271.

4 years agosdp: fix opus sprop-stereo fmtp syntax
Mark Harris [Tue, 1 Mar 2016 04:08:14 +0000 (20:08 -0800)]
sdp: fix opus sprop-stereo fmtp syntax

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoMove the |die| member of FrameThreadContext to PerThreadContext.
Wan-Teh Chang [Tue, 1 Mar 2016 18:11:53 +0000 (10:11 -0800)]
Move the |die| member of FrameThreadContext to PerThreadContext.

This fixes a data race warning by ThreadSanitizer.
FrameThreadContext.die is read by all the worker threads but is not
protected by any mutex. Move it to PerThreadContext so that each worker
thread reads its own copy of |die|, which can then be protected with
PerThreadContext.mutex.

Signed-off-by: Wan-Teh Chang <wtc@google.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
4 years agosws/aarch64: add {nv12,nv21,yuv420p,yuv422p}_to_{argb,rgba,abgr,rgba}_neon
Clément Bœsch [Mon, 8 Feb 2016 14:14:17 +0000 (15:14 +0100)]
sws/aarch64: add {nv12,nv21,yuv420p,yuv422p}_to_{argb,rgba,abgr,rgba}_neon

4 years agovc2enc: fix packet underallocation and minimum bitrate with interlacing
Rostislav Pehlivanov [Tue, 1 Mar 2016 13:44:18 +0000 (13:44 +0000)]
vc2enc: fix packet underallocation and minimum bitrate with interlacing

This was a regression introduced by commit e7345abe052 which
enabled full use of the allocated packet but due to the overhead of
using field coding the buffer was too small and triggered warnings and
crashes.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agovc2enc: simplify slice cost caching
Rostislav Pehlivanov [Tue, 1 Mar 2016 13:04:40 +0000 (13:04 +0000)]
vc2enc: simplify slice cost caching

The fact that now all quantization indices costs are cached justifies
storing 20 more integers in a structure already allocated on heap.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agovc2enc: remove redundant put_padding() and use skip_put_bytes() instead
Rostislav Pehlivanov [Tue, 1 Mar 2016 11:38:19 +0000 (11:38 +0000)]
vc2enc: remove redundant put_padding() and use skip_put_bytes() instead

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agolavfi: add bench and abench filters
Clément Bœsch [Mon, 29 Feb 2016 11:19:55 +0000 (12:19 +0100)]
lavfi: add bench and abench filters

4 years agoavformat/rtpdec_h264: Ignore invalid sprop-parameter-sets missing PPS
Andrew Shulgin [Sat, 27 Feb 2016 19:32:53 +0000 (21:32 +0200)]
avformat/rtpdec_h264: Ignore invalid sprop-parameter-sets missing PPS

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavu/rational: add more info regarding floor(x+0.5) usage
Ganesh Ajjanagadde [Thu, 25 Feb 2016 01:47:00 +0000 (20:47 -0500)]
lavu/rational: add more info regarding floor(x+0.5) usage

Add some more verbose info regarding why the imprecise and slow floor(x+0.5) hack
is used; helpful for future maintenance.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanag@gmail.com>
4 years agofate: add libavcodec utils test
Michael Niedermayer [Sun, 28 Feb 2016 11:49:33 +0000 (12:49 +0100)]
fate: add libavcodec utils test

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec: Add utils test
Michael Niedermayer [Sun, 28 Feb 2016 11:35:33 +0000 (12:35 +0100)]
avcodec: Add utils test

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agohls: Add and use a memebr of AVIOInternal rather than abuse opaque
Derek Buitenhuis [Mon, 29 Feb 2016 20:09:32 +0000 (20:09 +0000)]
hls: Add and use a memebr of AVIOInternal rather than abuse opaque

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agofate: fix fate-libavformat target
James Almer [Mon, 29 Feb 2016 19:26:37 +0000 (16:26 -0300)]
fate: fix fate-libavformat target

Signed-off-by: James Almer <jamrial@gmail.com>
4 years agoMerge commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d'
Derek Buitenhuis [Mon, 29 Feb 2016 18:43:04 +0000 (18:43 +0000)]
Merge commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d'

* commit 'cae448cfbf31d492cba782bc64fc4eed556ed83d':
  aviobuf: add a private data struct for avio_open()ed contexts

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoavformat/protocols: Fix ff_urlcontext_child_class_next()
Michael Niedermayer [Mon, 29 Feb 2016 18:04:54 +0000 (19:04 +0100)]
avformat/protocols: Fix ff_urlcontext_child_class_next()

This fixes -read_ahead_limit

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/msf: Also check the codec tag in probing
Michael Niedermayer [Mon, 29 Feb 2016 12:53:13 +0000 (13:53 +0100)]
avformat/msf: Also check the codec tag in probing

Fixes probing failure

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoMerge commit '832a202c47a246ed15e3edc6b05dfcfa7d82c4b2'
Derek Buitenhuis [Mon, 29 Feb 2016 18:07:41 +0000 (18:07 +0000)]
Merge commit '832a202c47a246ed15e3edc6b05dfcfa7d82c4b2'

* commit '832a202c47a246ed15e3edc6b05dfcfa7d82c4b2':
  protocols: make the list of protocols static

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoavformat: Remove async from TESTPROGS
Derek Buitenhuis [Mon, 29 Feb 2016 17:14:56 +0000 (17:14 +0000)]
avformat: Remove async from TESTPROGS

It is current disabled.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoMerge commit '7d61dc95d741ca134d59b1f34c4e10c4c4e36f56'
Derek Buitenhuis [Mon, 29 Feb 2016 16:59:47 +0000 (16:59 +0000)]
Merge commit '7d61dc95d741ca134d59b1f34c4e10c4c4e36f56'

* commit '7d61dc95d741ca134d59b1f34c4e10c4c4e36f56':
  lavf: move urlcontext_child_class_next() to protocols.c

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoMerge commit '0fa00d05911aa8043ecad8dead4a73cab7faadf6'
Derek Buitenhuis [Mon, 29 Feb 2016 16:56:47 +0000 (16:56 +0000)]
Merge commit '0fa00d05911aa8043ecad8dead4a73cab7faadf6'

* commit '0fa00d05911aa8043ecad8dead4a73cab7faadf6':
  lavf: move avio_enum_protocols() to protocols.c

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoMerge commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d'
Derek Buitenhuis [Mon, 29 Feb 2016 16:50:39 +0000 (16:50 +0000)]
Merge commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d'

This commit also disables the async fate test, because it
used internal APIs in a non-kosher way, which no longer
exists.

* commit '2758cdedfb7ac61f8b5e4861f99218b6fd43491d':
  lavf: reorganize URLProtocols

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agox86/vc1dsp: Split the file into MC and loopfilter
Timothy Gu [Mon, 29 Feb 2016 01:16:26 +0000 (17:16 -0800)]
x86/vc1dsp: Split the file into MC and loopfilter

4 years agoMerge commit '225e84e74544062706c0159ec0737b0e1d40915f'
Derek Buitenhuis [Mon, 29 Feb 2016 15:50:32 +0000 (15:50 +0000)]
Merge commit '225e84e74544062706c0159ec0737b0e1d40915f'

* commit '225e84e74544062706c0159ec0737b0e1d40915f':
  hls: disallow opening nested files in child demuxers

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoMerge commit 'e192cd9ce2b51c2e6919f2a78b1ce53e0024e728'
Derek Buitenhuis [Mon, 29 Feb 2016 15:43:00 +0000 (15:43 +0000)]
Merge commit 'e192cd9ce2b51c2e6919f2a78b1ce53e0024e728'

* commit 'e192cd9ce2b51c2e6919f2a78b1ce53e0024e728':
  smoothstreamingenc: do not open the files as read+write

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoMerge commit 'd082078a88da3b3e926197d0d2aa9fa322123b76'
Derek Buitenhuis [Mon, 29 Feb 2016 15:41:03 +0000 (15:41 +0000)]
Merge commit 'd082078a88da3b3e926197d0d2aa9fa322123b76'

* commit 'd082078a88da3b3e926197d0d2aa9fa322123b76':
  dashenc: eliminate ffurl_* usage

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoMerge commit '7fbb3b5b9857276b4cd17b2a530c7e0880d2bc0a'
Derek Buitenhuis [Mon, 29 Feb 2016 15:39:19 +0000 (15:39 +0000)]
Merge commit '7fbb3b5b9857276b4cd17b2a530c7e0880d2bc0a'

* commit '7fbb3b5b9857276b4cd17b2a530c7e0880d2bc0a':
  lavf: use the io_open callbacks for files opened from open_input() as well

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoMerge commit '5efd91284e56d444139ed811671c59a129bbb92f'
Derek Buitenhuis [Mon, 29 Feb 2016 15:36:38 +0000 (15:36 +0000)]
Merge commit '5efd91284e56d444139ed811671c59a129bbb92f'

This commit is no-op. The affected piece of code does not
exist in FFmpeg.

* commit '5efd91284e56d444139ed811671c59a129bbb92f':
  avprobe: do not call avio_close() on a custom context

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoMerge commit 'dc6527ed908e4d330738f139074455ffbe56a2de'
Derek Buitenhuis [Mon, 29 Feb 2016 14:58:51 +0000 (14:58 +0000)]
Merge commit 'dc6527ed908e4d330738f139074455ffbe56a2de'

FATE tests have been updated to patch. They do not differ in
any meaningful way.

* commit 'dc6527ed908e4d330738f139074455ffbe56a2de':
  nutenc: do not use AVCodecContext.frame_size

Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agolavf: Add pcx auto-detection.
Carl Eugen Hoyos [Mon, 29 Feb 2016 14:49:52 +0000 (15:49 +0100)]
lavf: Add pcx auto-detection.

4 years agolavc/pcxenc: Update format description link.
Carl Eugen Hoyos [Mon, 29 Feb 2016 11:42:29 +0000 (12:42 +0100)]
lavc/pcxenc: Update format description link.

4 years agolavf/img2dec: Skip SOS when auto-detecting jpeg.
Carl Eugen Hoyos [Mon, 29 Feb 2016 10:58:16 +0000 (11:58 +0100)]
lavf/img2dec: Skip SOS when auto-detecting jpeg.

Improves jpeg auto-detection.

4 years agobuild: add --install-name-dir=DIR Darwin option
Clément Bœsch [Fri, 19 Feb 2016 15:34:30 +0000 (16:34 +0100)]
build: add --install-name-dir=DIR Darwin option

This option is typically useful when cross-compiling dynamic libraries
for iOS, with something such as --install-name-dir=@rpath

4 years agoavfilter/avf_showcqt: optimize draw routines
Muhammad Faiz [Sun, 28 Feb 2016 09:43:10 +0000 (16:43 +0700)]
avfilter/avf_showcqt: optimize draw routines

optimize draw_bar_yuv (slightly faster)
optimize draw_axis (about 2x faster)

Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
4 years agofate/mpeg4: add mpeg4-es with codec timestamps (vlc ticket 7571)
Michael Niedermayer [Mon, 29 Feb 2016 03:24:52 +0000 (04:24 +0100)]
fate/mpeg4: add mpeg4-es with codec timestamps (vlc ticket 7571)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agofate/vp8: add test for Ticket2451
Michael Niedermayer [Mon, 29 Feb 2016 01:12:42 +0000 (02:12 +0100)]
fate/vp8: add test for Ticket2451

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/utils: Be slightly more tolerant with fps vs. stream timebase
Michael Niedermayer [Mon, 29 Feb 2016 01:56:50 +0000 (02:56 +0100)]
avformat/utils: Be slightly more tolerant with fps vs. stream timebase

Fixes regression with ticket2451

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agofate/gif: add Test for Ticket3052
Michael Niedermayer [Mon, 29 Feb 2016 00:41:11 +0000 (01:41 +0100)]
fate/gif: add Test for Ticket3052

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agofate/filter-video: add test for Ticket1578
Michael Niedermayer [Sun, 28 Feb 2016 23:52:26 +0000 (00:52 +0100)]
fate/filter-video: add test for Ticket1578

reference test sample is tiny

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agotests/fate/lossless-video: Add test for ticket4119
Michael Niedermayer [Sun, 28 Feb 2016 22:56:06 +0000 (23:56 +0100)]
tests/fate/lossless-video: Add test for ticket4119

The reference file is very small, and there was no previous test for the -vsync values

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/libzvbi-teletextdec: Remove unused variable
Michael Niedermayer [Sun, 28 Feb 2016 22:17:33 +0000 (23:17 +0100)]
avcodec/libzvbi-teletextdec: Remove unused variable

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavfilter/avf_showvolume: support unknown channel layouts too
Paul B Mahol [Sun, 28 Feb 2016 21:52:44 +0000 (22:52 +0100)]
avfilter/avf_showvolume: support unknown channel layouts too

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoffmpeg_vdpau: Remove unused variable
Michael Niedermayer [Sun, 28 Feb 2016 22:02:55 +0000 (23:02 +0100)]
ffmpeg_vdpau: Remove unused variable

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/mov: do not leak memory on ffio_read_size failure
Marton Balint [Sat, 20 Feb 2016 00:52:25 +0000 (01:52 +0100)]
avformat/mov: do not leak memory on ffio_read_size failure

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Marton Balint <cus@passwd.hu>
4 years agoavformat/mov: merge mov_read_custom functions
Marton Balint [Sat, 20 Feb 2016 00:34:42 +0000 (01:34 +0100)]
avformat/mov: merge mov_read_custom functions

This also fixes reading gapless metadata when the entries do not start with the
mean atom. Such samples can be found here:
https://hydrogenaud.io/index.php/topic,93310.0.html

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Marton Balint <cus@passwd.hu>
4 years agoavformat/dashenc: Enable dash output to work when the output isn't a local file
Raymond Hilseth [Wed, 6 Jan 2016 08:57:41 +0000 (09:57 +0100)]
avformat/dashenc: Enable dash output to work when the output isn't a local file

Use avpriv_io_move instead of ff_rename to support more than only
the file protocol.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavformat/file: enable file_move() without unistd.h
Raymond Hilseth [Wed, 6 Jan 2016 08:57:41 +0000 (09:57 +0100)]
avformat/file: enable file_move() without unistd.h

it only requires the rename function from os_support.h.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavf/mov: downgrade sidx errors to non-fatal warnings; fixes trac #5216
Rodger Combs [Tue, 23 Feb 2016 00:34:01 +0000 (18:34 -0600)]
lavf/mov: downgrade sidx errors to non-fatal warnings; fixes trac #5216

4 years agolavf/mov: fix sidx with edit lists
Rodger Combs [Thu, 18 Feb 2016 18:57:37 +0000 (12:57 -0600)]
lavf/mov: fix sidx with edit lists

4 years agovc2enc: redistribute leftover bytes
Rostislav Pehlivanov [Sat, 27 Feb 2016 18:40:17 +0000 (18:40 +0000)]
vc2enc: redistribute leftover bytes

This commit redistributes the leftover bytes amongst the top 150 slices
in terms of size (in the hopes that they'll be the ones pretty bitrate
starved).

A more perceptual method would probably need to cut bits off from slices
which don't need much, but that'll be implemented later.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agovc2enc: allocate the DWT context with the current plane size
Rostislav Pehlivanov [Sat, 27 Feb 2016 18:39:32 +0000 (18:39 +0000)]
vc2enc: allocate the DWT context with the current plane size

Previously used the luma size only.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years ago2enc: clip and warn when user bitrate set too low
Rostislav Pehlivanov [Sun, 28 Feb 2016 19:05:15 +0000 (19:05 +0000)]
2enc: clip and warn when user bitrate set too low

The encoder crashed on verly low bitrates since there wasn't enough
space allocated.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agovc2enc: clip and warn when user bitrate set too low
Rostislav Pehlivanov [Sat, 27 Feb 2016 18:38:09 +0000 (18:38 +0000)]
vc2enc: clip and warn when user bitrate set too low

The encoder crashed on verly low bitrates since there wasn't enough
space allocated.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agovc2enc: carry over quantization index across frames as a starting point
Rostislav Pehlivanov [Sat, 27 Feb 2016 18:34:03 +0000 (18:34 +0000)]
vc2enc: carry over quantization index across frames as a starting point

Previously a global average was used. Using the previous quantizer
resulted in a fairly significant speedup as slice size selection settled
down quicker.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agovc2enc: use 32 bits for quantized coefficients LUT
Rostislav Pehlivanov [Sat, 27 Feb 2016 18:27:18 +0000 (18:27 +0000)]
vc2enc: use 32 bits for quantized coefficients LUT

16 bits were definitely not enough and caused artifacts to appear on
images at barely compressed images.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agovc2enc: cache bits per quantizer, calculate wasted bits
Rostislav Pehlivanov [Sat, 27 Feb 2016 18:24:28 +0000 (18:24 +0000)]
vc2enc: cache bits per quantizer, calculate wasted bits

Needed for following commits, also a speed increase.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
4 years agoavfilter/vf_vectorscope: add color5 mode, mode like color but with higher saturation
Paul B Mahol [Sun, 28 Feb 2016 18:20:50 +0000 (19:20 +0100)]
avfilter/vf_vectorscope: add color5 mode, mode like color but with higher saturation

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agoavcodec/mjpegdec: Fix decoding slightly odd progressive jpeg
Michael Niedermayer [Sun, 28 Feb 2016 17:10:23 +0000 (18:10 +0100)]
avcodec/mjpegdec: Fix decoding slightly odd progressive jpeg

Fixes: ebd58db6-dc86-11e5-91c2-59daeddf50c7.jpg

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoLICENSE: Thorough editing
Timothy Gu [Sun, 24 Jan 2016 17:17:36 +0000 (09:17 -0800)]
LICENSE: Thorough editing

The changes in "Incompatible libraries" section are strictly based on
what our configure script says.

4 years agox86/vf_blend: Add SSE2 optimization for divide
Timothy Gu [Wed, 10 Feb 2016 09:04:51 +0000 (09:04 +0000)]
x86/vf_blend: Add SSE2 optimization for divide

 4.5x faster than C float version with autovectorization
10  x faster than C int version
25  x faster than C float version without autovectorization

4 years agolavf/mp3: Properly check return values of seeks and reads while reading the header
Derek Buitenhuis [Fri, 26 Feb 2016 17:10:08 +0000 (17:10 +0000)]
lavf/mp3: Properly check return values of seeks and reads while reading the header

Fixes large amounts of seeking past EOF, which could be extremely
slow over a network.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
4 years agoavformat/Makefile: Fixed missing rawutils.o reference (required by movenc.c)
Roman Ryltsov [Sun, 28 Feb 2016 13:32:15 +0000 (14:32 +0100)]
avformat/Makefile: Fixed missing rawutils.o reference (required by movenc.c)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoDocument and validate AVFrame plane pointers.
Reimar Döffinger [Fri, 26 Feb 2016 17:38:19 +0000 (18:38 +0100)]
Document and validate AVFrame plane pointers.

Check that the required plane pointers and only
those are set up.
Currently does not enforce anything for the palette
pointer of pseudopal formats as I am unsure about the
requirements.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
4 years agomjpegdec: Do not assume unused plane pointer are NULL.
Reimar Döffinger [Thu, 25 Feb 2016 23:11:12 +0000 (00:11 +0100)]
mjpegdec: Do not assume unused plane pointer are NULL.

We do neither document nor check such a requirement
and for application-provided get_buffer2 they could
contain the result of a malloc(0) or whatever value
they had previously.
This fixes a use-after-free in e.g. MPlayer:
https://trac.mplayerhq.hu/ticket/2262
We might want to consider changing the (documented)
API in addition though.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
4 years agomss2: Fix buffer overflow.
Reimar Döffinger [Thu, 25 Feb 2016 20:04:36 +0000 (21:04 +0100)]
mss2: Fix buffer overflow.

Reported as https://trac.mplayerhq.hu/ticket/2264 but have
not been able to reproduce with FFmpeg-only.
I have no idea what coded_height is used for here exactly,
so this might not be the best fix.
Fixes the following chain of events:
ff_mss12_decode_init sets coded_height while not setting height.
ff_mpv_decode_init then copies coded_height into MpegEncContext height.
This is then used by init_context_frame to allocate the data structures.
However the wmv9rects are validated/initialized based on avctx->height, not
avctx->coded_height.
Thus the decode_wmv9 function will try to decode a larger video that we
allocated data structures for, causing out-of-bounds writes.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
4 years agotests/lavf-regression: Add mp4 timecode test
Michael Niedermayer [Sun, 28 Feb 2016 02:54:50 +0000 (03:54 +0100)]
tests/lavf-regression: Add mp4 timecode test

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agomovenc: Timecode in MP4 Although MP4 does not have a concrete specification to store...
Syed Andaleeb Roomy [Thu, 21 Jan 2016 06:08:09 +0000 (07:08 +0100)]
movenc: Timecode in MP4 Although MP4 does not have a concrete specification to store timecode information, the following technical note from Apple describes a way to achieve this via timecode track, similar to how it is done for MOV files.

https://developer.apple.com/library/mac/technotes/tn2174/_index.html

- Enabled creation of timecode tracks for MP4 in the same way as MOV.
- Used nmhd as media information header of timecode track of MP4 instead
  of gmhd used in MOV, thus avoiding tcmi also, as recommended above.
- Bypassed adding source reference field for MP4, as suggested above.

Issue: https://trac.ffmpeg.org/ticket/4704

Signed-off-by: Syed Andaleeb Roomy <andaleebcse@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoconfigure: add direct detection of libopencv
Andreas Cadhalpun [Sun, 7 Feb 2016 22:25:53 +0000 (23:25 +0100)]
configure: add direct detection of libopencv

The pkg-config file contains all opencv libraries, not only the
neccessary ones.

This change makes it possible to use the libopencv-imgproc-dev Debian
package instead of libopencv-dev, saving about 200 MB of useless
build-dependencies.

In particular one doesn't need to install the parts of opencv that
depend on ffmpeg libraries.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Reviewed-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavutil/imgutils: Assert that the 2nd av_image_fill_linesizes() call in av_image_fill_...
Michael Niedermayer [Wed, 3 Feb 2016 16:07:26 +0000 (17:07 +0100)]
avutil/imgutils: Assert that the 2nd av_image_fill_linesizes() call in av_image_fill_linesizes() still succeeds

Fixes CID1271742

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agolavc/aac_ac3_parser: reindent
Rodger Combs [Wed, 25 Nov 2015 20:53:06 +0000 (14:53 -0600)]
lavc/aac_ac3_parser: reindent

4 years agolavc/aac_ac3_parser: avoid zeroing codec parameters if we haven't read a frame
Rodger Combs [Tue, 24 Nov 2015 09:20:09 +0000 (03:20 -0600)]
lavc/aac_ac3_parser: avoid zeroing codec parameters if we haven't read a frame

This caused issues when seeking in some unusual MPEGTS files

4 years agoprobe TrueHD in MPEGTS
Rodger Combs [Tue, 17 Nov 2015 16:01:01 +0000 (10:01 -0600)]
probe TrueHD in MPEGTS

4 years agolavc/Makefile: dnxhd demuxer depends on dnxhddata.o
Rodger Combs [Wed, 24 Feb 2016 22:59:41 +0000 (16:59 -0600)]
lavc/Makefile: dnxhd demuxer depends on dnxhddata.o

4 years agovf_copy: exclude hwaccel formats
wm4 [Fri, 26 Feb 2016 22:37:33 +0000 (23:37 +0100)]
vf_copy: exclude hwaccel formats

This does obviously not work.

(Additions based on vf_crop.c.)

4 years agoavfilter/avf_showwolume: add orientation and step option
Paul B Mahol [Sat, 27 Feb 2016 16:27:23 +0000 (17:27 +0100)]
avfilter/avf_showwolume: add orientation and step option

Signed-off-by: Paul B Mahol <onemda@gmail.com>
4 years agolavfi/ass: fix version check for sub_text_format option
Clément Bœsch [Sat, 27 Feb 2016 15:26:10 +0000 (16:26 +0100)]
lavfi/ass: fix version check for sub_text_format option

4 years agoavcodec/cfhd: Add support for 12-bit RGBA.
Kieran Kunhya [Sat, 27 Feb 2016 13:17:20 +0000 (13:17 +0000)]
avcodec/cfhd: Add support for 12-bit RGBA.

Plays all known samples

4 years agocfhd: reallocate internal buffers on format change.
Kieran Kunhya [Mon, 15 Feb 2016 21:39:27 +0000 (21:39 +0000)]
cfhd: reallocate internal buffers on format change.

Fixes some, but not all, of the threading fuzz crashes

4 years agoavcodec/utils: Check that the video data[] arrays are NULL on the input to get_buffer...
Michael Niedermayer [Fri, 26 Feb 2016 11:59:08 +0000 (12:59 +0100)]
avcodec/utils: Check that the video data[] arrays are NULL on the input to get_buffer_internal()

This should return an error to the decoder if the struct it tried to getbuffer is dirty

Reviewed-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
4 years agoavcodec/utils: Check all data[] pointers in video_get_buffer() not just the first
Michael Niedermayer [Fri, 26 Feb 2016 11:59:07 +0000 (12:59 +0100)]
avcodec/utils: Check all data[] pointers in video_get_buffer() not just the first

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>