Commit Graph

76491 Commits

Author SHA1 Message Date
Luca Barbato
a5d4204309 avformat: Always return ref-counted AVPacket
And drop the av_dup_packet from the input_thread.
2015-10-26 18:00:55 +01:00
Luca Barbato
f0ca6ffa0a avprobe: Unref the packet once it is used
Make sure it does not leak packets.

CC: libav-stable@libav.org
2015-10-26 18:00:54 +01:00
Clément Bœsch
51ee62d50b avcodec/options: remove a few more redundant "default" information 2015-10-26 15:39:09 +01:00
Clément Bœsch
90c4ccc629 avcodec/options: remove redundant and wrong default information for skipcmp option 2015-10-26 15:39:09 +01:00
Clément Bœsch
7794627032 avcodec/avdct: remove redundant "default" information in options 2015-10-26 15:39:09 +01:00
Derek Buitenhuis
a7fcc43bcc tests/aac: Add bitexact flags to AAC LTP Encode test
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2015-10-26 14:32:05 +00:00
Tinglin Liu
9ea812692c mov: Add support parsing QuickTime Metadata Keys.
The Apple dev specification:
    https://developer.apple.com/library/mac/documentation/QuickTime/QTFF/Metadata/Metadata.html

Basically the structure is like:
    |--meta
    |----hdlr
    |----keys
    |----ilst

1) The handler type in the metadata handler atom is ‘mdta’.
2) The key and value are stored separately for each key-value pair.
   The 'keys' atom stores the key table, while 'ilst' atom stores the
   values corresponding to the indices in the key table.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2015-10-26 14:32:05 +00:00
Vittorio Giovara
63ea8e0610 timecode: Support HFR values 2015-10-26 15:05:26 +01:00
Vittorio Giovara
8c22148220 timecode: Do not fail for non-standard framerates
Instead just warn, and use the parse fps normally.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-10-26 15:05:05 +01:00
Michael Niedermayer
4f00d23577 tests/fate/aac: Add bitexact flags to fate-aac-pns-encode
This fixes a fate failure after bumping the minor version
Its unknown why this is not needed for the other aac tests,
more investigation needed but for now i dont want to leave
it broken while its investigated

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-26 13:31:06 +01:00
Hendrik Leppkes
9cbae3a7d5 roqvideodec: use av_frame_copy
CC: libav-stable@libav.org
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-10-26 12:55:40 +01:00
Ganesh Ajjanagadde
68a0a164d1 avfilter/vf_removegrain: replace qsort with AV_QSORT
filter_slice calls qsort, so qsort is in a performance critical
position. AV_QSORT is substantially faster due to the inlining of the
comparison callback. Thus, the increase in performance is worth the
increase in binary size.

Sample benchmark (x86-64, Haswell, GNU/Linux),
filter-removegrain-mode-02 (from FATE)
new:
  24060 decicycles in qsort,       1 runs,      0 skips
  15690 decicycles in qsort,       2 runs,      0 skips
   9307 decicycles in qsort,       4 runs,      0 skips
   5572 decicycles in qsort,       8 runs,      0 skips
   3485 decicycles in qsort,      16 runs,      0 skips
   2517 decicycles in qsort,      32 runs,      0 skips
   1979 decicycles in qsort,      64 runs,      0 skips
   1911 decicycles in qsort,     128 runs,      0 skips
   1568 decicycles in qsort,     256 runs,      0 skips
   1596 decicycles in qsort,     512 runs,      0 skips
   1614 decicycles in qsort,    1024 runs,      0 skips
   1874 decicycles in qsort,    2046 runs,      2 skips
   2186 decicycles in qsort,    4094 runs,      2 skips

old:
 246960 decicycles in qsort,       1 runs,      0 skips
 135765 decicycles in qsort,       2 runs,      0 skips
  70920 decicycles in qsort,       4 runs,      0 skips
  37710 decicycles in qsort,       8 runs,      0 skips
  20831 decicycles in qsort,      16 runs,      0 skips
  12225 decicycles in qsort,      32 runs,      0 skips
   8083 decicycles in qsort,      64 runs,      0 skips
   6270 decicycles in qsort,     128 runs,      0 skips
   5321 decicycles in qsort,     256 runs,      0 skips
   4860 decicycles in qsort,     512 runs,      0 skips
   4424 decicycles in qsort,    1024 runs,      0 skips
   4191 decicycles in qsort,    2046 runs,      2 skips
   4934 decicycles in qsort,    4094 runs,      2 skips

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-26 07:14:22 -04:00
Paul B Mahol
ff1e44b01e avformat/thp: set duration for audio stream too
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-26 10:08:01 +01:00
Paul B Mahol
035ae3c009 avcodec: add SDX2 DPCM decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-26 10:08:01 +01:00
Ganesh Ajjanagadde
2ccc1b304e MAINTAINERS: add key fingerprint
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-25 19:15:04 -04:00
Tom Butterworth
9f5d6f460c hap: Set avctx.bits_per_coded_sample
Fixes an issue where alpha is ignored in some players.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-10-25 22:48:04 +01:00
Clément Bœsch
6b5412cbfa avutil/opt: print more meaningful default flags values
Example:
% ./ffmpeg -h encoder=gif
[...]
GIF encoder AVOptions:
  -gifflags          <flags>      E..V.... set GIF flags (default offsetting+transdiff)
     offsetting                   E..V.... enable picture offsetting
     transdiff                    E..V.... enable transparency detection between frames
2015-10-25 22:47:16 +01:00
Vittorio Giovara
fe66671bd5 cmdutils: Check for and report the correct codec capability 2015-10-25 22:47:13 +01:00
Vittorio Giovara
3c5cf2a31b screenpresso: Drop parameter change check
Size can never change, allowing us to use ff_reget_buffer, and to
simplify the code a little.
2015-10-25 22:44:21 +01:00
Alexis Ballier
447b5b278c mpegvideo_enc: Fix encoding videos with less frames than the delay of the encoder
When the encoder is fed with less frames than its delay, the picture list
looks like { NULL, NULL, ..., frame, frame, frame }. When flushing the
encoder (input frame == NULL), we need to ensure the picture list is
shifted enough so that we do not return an empty packet, which would
mean the encoder has finished, while it has not encoded any frame.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-10-25 22:43:30 +01:00
Michael Niedermayer
27eeee76b2 mpegvideo_enc: Merge ifs with identical conditions
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-25 22:24:13 +01:00
Michael Niedermayer
f0a88d4d2a mpegvideo_enc: Factor new_picture unref out
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-25 22:23:51 +01:00
Nicolas George
559603dae1 lavfi/drawutils: add const to blending mask. 2015-10-25 20:58:21 +01:00
Ganesh Ajjanagadde
bbd6bc6bd0 avutil/tree: clean up pointer incompatibility warnings
Commit 7c8fcbbde3 introduced some warnings
that get triggered on the test build. This should fix them.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-25 12:45:10 -04:00
Carl Eugen Hoyos
6498b34bba lavf/xwma: Support wmapro.
Fixes ticket #4963.
2015-10-25 17:37:17 +01:00
Michael Niedermayer
65ffca9f80 avutil/tree: Document the guaranteed ordering of compare arguments for av_tree_find()
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-25 17:28:47 +01:00
Ganesh Ajjanagadde
9bc3d3355f avcodec/huffman: replace qsort with AV_QSORT
ff_huff_build_tree uses qsort underneath. AV_QSORT is substantially
faster due to the inlining of the comparison callback. Furthermore, this
code is reasonably performance critical, since in e.g the fraps codec,
ff_huff_build_tree is called on every frame. This routine is also called
in vp6 on every frame in some circumstances.

Sample benchmark (x86-64, Haswell, GNU/Linux), vp6 from FATE:
vp6 (old):
  78930 decicycles in qsort,       1 runs,      0 skips
  45330 decicycles in qsort,       2 runs,      0 skips
  27825 decicycles in qsort,       4 runs,      0 skips
  17471 decicycles in qsort,       8 runs,      0 skips
  12296 decicycles in qsort,      16 runs,      0 skips
   9554 decicycles in qsort,      32 runs,      0 skips
   8404 decicycles in qsort,      64 runs,      0 skips
   7405 decicycles in qsort,     128 runs,      0 skips
   6740 decicycles in qsort,     256 runs,      0 skips
   7540 decicycles in qsort,     512 runs,      0 skips
   9498 decicycles in qsort,    1024 runs,      0 skips
   9938 decicycles in qsort,    2048 runs,      0 skips
   8043 decicycles in qsort,    4095 runs,      1 skips

vp6 (new):
  15880 decicycles in qsort,       1 runs,      0 skips
  10730 decicycles in qsort,       2 runs,      0 skips
  10155 decicycles in qsort,       4 runs,      0 skips
   7805 decicycles in qsort,       8 runs,      0 skips
   6883 decicycles in qsort,      16 runs,      0 skips
   6305 decicycles in qsort,      32 runs,      0 skips
   5854 decicycles in qsort,      64 runs,      0 skips
   5152 decicycles in qsort,     128 runs,      0 skips
   4452 decicycles in qsort,     256 runs,      0 skips
   4161 decicycles in qsort,     511 runs,      1 skips
   4081 decicycles in qsort,    1023 runs,      1 skips
   4072 decicycles in qsort,    2047 runs,      1 skips
   4004 decicycles in qsort,    4095 runs,      1 skips

Reviewed-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-25 10:18:00 -04:00
Ganesh Ajjanagadde
104f8ea873 version.sh: add note that ffversion.h is auto-generated
Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-25 10:14:44 -04:00
Ganesh Ajjanagadde
c7131762c0 all: add const-correctness to qsort comparators
This adds const-correctness when needed for the comparators.

Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-25 10:07:20 -04:00
Paul B Mahol
f7751a5e53 avformat/aiffdec: give friendly message if compressed codec tag is unsupported
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-25 14:07:03 +01:00
Paul B Mahol
1f36b43c28 doc/general: update after recent additions
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-25 11:54:17 +01:00
Paul B Mahol
6f3ba23ae0 avformat: add xvag demuxer
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-25 11:05:56 +01:00
Ganesh Ajjanagadde
7c8fcbbde3 avutil/tree: add additional const qualifier to the comparator
libc's qsort comparator has a const qualifier on both arguments. This
adds a missing const qualifier to exactly match the comparator API.

Existing usages of av_tree_find, av_tree_insert are appropriately
modified: type signature changes of the comparators, and removal of
unnecessary void * casts of function pointers.

Reviewed-by: Henrik Gramner <henrik@gramner.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-24 20:38:07 -04:00
Ganesh Ajjanagadde
94f333f9dc avutil/tree: improve documentation for av_tree_find, av_tree_insert
This documents the additional constness, and provides a useful libc
reference for the API specification of the comparator.

Reviewed-by: Henrik Gramner <henrik@gramner.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-24 20:38:06 -04:00
Ganesh Ajjanagadde
2ee51ef259 avfilter/vf_deshake: use a void * comparator for consistency
For generality, qsort uses a comparator whose elements are void *. This
makes the comparator have such a form, and thus makes the void * cast of
the comparator pointer useless. Furthermore, this makes the code more
consistent with other usages of qsort across the codebase.

Reviewed-by: Henrik Gramner <henrik@gramner.com>
Reviewed-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-24 20:35:31 -04:00
Ganesh Ajjanagadde
38f4e973ef all: fix -Wextra-semi reported on clang
This fixes extra semicolons that clang 3.7 on GNU/Linux warns about.
These were trigggered when built under -Wpedantic, which essentially
checks for strict ISO compliance in numerous ways.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-24 17:58:17 -04:00
Ganesh Ajjanagadde
4c96985af1 all: remove some casts of function pointer to void *
These casts are unnecessary, and may safely be removed.
Found by enabling -Wpedantic on clang 3.7.

Tested with FATE.

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-24 15:14:59 -04:00
Ronald S. Bultje
49d8a70dc5 vp9: uses ff_set_dimensions (which sets coded_width/height).
Fixes ticket 4935.
2015-10-24 15:11:59 -04:00
Ronald S. Bultje
52f84d82bd videodsp: don't overread edges in vfix3 emu_edge.
Fixes trac ticket 3226. Also see Andreas' analysis in
https://bugs.debian.org/801745, which was very helpful.
2015-10-24 14:34:50 -04:00
Ganesh Ajjanagadde
683462911d avfilter: avoid zero arguments to variadic macro
ISO C requires at least one argument in the place of the ellipsis in a
variadic macro. In particular, under -pedantic, this triggers the
warning -Wgnu-zero-variadic-macro-arguments on clang 3.7.

Reviewed-by: Nicolas George <george@nsup.org>
Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
2015-10-24 10:18:55 -04:00
Marton Balint
5e9f14e4bf libzvbi-teletextdec: fix AVSubtitleRect pict compatiblity code
Only set pict if we got a valid rect.

Signed-off-by: Marton Balint <cus@passwd.hu>
2015-10-24 16:12:26 +02:00
Marton Balint
03037a4aad ffplay: use a separate struct for the rescaled YUVA AVSubtitle rectangles
Current code segfaults since the deprecation of AVSubtitleRect.pict because it
freed/realloced AVSubtitleRect.pict.data by itself.

The new code stores the generated YUVA AVSubtitle rectangles in their own
struct and keeps the original AVSubtitle structure untouched, because
overwriting it is considered invalid API usage.

Signed-off-by: Marton Balint <cus@passwd.hu>
2015-10-24 16:12:25 +02:00
Carl Eugen Hoyos
a3bed3f3e1 lavf/ingenientdec: Add a probe function. 2015-10-24 13:28:32 +02:00
Carl Eugen Hoyos
9c069bf71a lavc/hapdec: Use correct no-transparency colour space.
Reviewed-by: Tom Butterworth
2015-10-24 13:09:58 +02:00
Michael Niedermayer
e06ef9aa5f avcodec/dpxenc: Fix "libavcodec/dpxenc.c:250:44: warning: passing argument 3 of av_image_copy_to_buffer from incompatible pointer type"
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2015-10-24 12:16:04 +02:00
Paul B Mahol
daabc59c64 avformat/genh: add ADPCM IMA DVI support
Our decoder have wrong name.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-23 21:12:17 +02:00
Paul B Mahol
a03fe8adba avformat/ads: extend format long description
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-23 19:16:17 +02:00
Paul B Mahol
dfc64f4ddf avformat/svag: extend format long description
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-23 19:12:32 +02:00
Paul B Mahol
8dea76180c avcodec: extend long decription for adpcm psx codec
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-23 19:07:37 +02:00
Paul B Mahol
dd456245b6 avformat/msf: extend format long description
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2015-10-23 19:06:14 +02:00