ffmpeg.git
5 years agoavutil/x86/asm: rename REG_SP to REG_sp
Ganesh Ajjanagadde [Fri, 21 Aug 2015 18:17:46 +0000 (14:17 -0400)]
avutil/x86/asm: rename REG_SP to REG_sp

REG_SP is defined by Solaris system headers.
This fixes a sea of warnings while building on Solaris:
http://fate.ffmpeg.org/report.cgi?time=20150820233505&slot=x86-opensolaris-gcc4.3

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoaacenc_tns: remove unused header
Rostislav Pehlivanov [Fri, 21 Aug 2015 22:36:09 +0000 (23:36 +0100)]
aacenc_tns: remove unused header

Thanks to @nevcairiel for pointing this one out.
Another thing which stopped msvc from compiling.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoavcodec/version: fix 2 recently introduced typo
Clément Bœsch [Fri, 21 Aug 2015 22:24:18 +0000 (00:24 +0200)]
avcodec/version: fix 2 recently introduced typo

5 years agoaacenc_tns: re-enable coefficient compression
Rostislav Pehlivanov [Fri, 21 Aug 2015 20:36:06 +0000 (21:36 +0100)]
aacenc_tns: re-enable coefficient compression

This time in a platform/compiler-generic way.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaacenc: treat unknown profile as AAC-LC
Rostislav Pehlivanov [Fri, 21 Aug 2015 20:28:20 +0000 (21:28 +0100)]
aacenc: treat unknown profile as AAC-LC

When the encoder is ran without specifying -profile:a
the default avctx->profile value is -99 (FF_PROFILE_UKNOWN),
which used to be treated as AAC-LC.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaacenc_tns: temporarily disable coefficient compression
Rostislav Pehlivanov [Fri, 21 Aug 2015 19:55:46 +0000 (20:55 +0100)]
aacenc_tns: temporarily disable coefficient compression

Hotfix to deal with msvc. Sane compilers lack POSIX ffs().
It only saves a single bit or so and isn't worth it that much.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoMAINTAINERS: add myself as an AAC encoder maintainer
Rostislav Pehlivanov [Fri, 21 Aug 2015 18:44:15 +0000 (19:44 +0100)]
MAINTAINERS: add myself as an AAC encoder maintainer

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaacenc: implement the complete AAC-Main profile
Rostislav Pehlivanov [Fri, 21 Aug 2015 18:38:05 +0000 (19:38 +0100)]
aacenc: implement the complete AAC-Main profile

This commit finalizes AAC-Main profile encoding support
by implementing all mandatory and optional tools available
in the specifications and current decoders.

The AAC-Main profile reqires that prediction support be
present (although decoders don't require it to be enabled)
for an encoder to be deemed capable of AAC-Main encoding,
as well as TNS, PNS and IS, all of which were implemented
with previous commits or earlier of this year.

Users are encouraged to test the new functionality using either
-profile:a aac_main or -aac_pred 1, the former of which will enable
the prediction option by default and the latter will change the
profile to AAC-Main. No other options shall be changed by enabling
either, it's currently up to the users to decide what's best.

The current implementation works best using M/S and/or IS,
so users are also welcome to enable both options and any
other options (TNS, PNS) for maximum quality.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaacenc_tns: implement temporal noise shaping
Rostislav Pehlivanov [Fri, 21 Aug 2015 18:27:38 +0000 (19:27 +0100)]
aacenc_tns: implement temporal noise shaping

This commit implements temporal noise shaping support in the
encoder, along with an -aac_tns option to toggle it on or off
(off by default for now). TNS will increase audio quality
and reduce quantization noise by applying a multitap FIR filter
across allowed coefficients and transmit side information to the
decoder so it could create an inverse filter.

Users are encouraged to test the new functionality by enabling
-aac_tns 1 during encoding.

No major bugs are observable at this time so after a while if no
new problems appear and if the current implementation is deemed
of high enough quality and stability it will be enabled by default,
possibly at the same time the encoder has its experimental flag
removed and becomes the standard aac encoder in ffmpeg.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaacenc: do not reject AAC-Main profile
Rostislav Pehlivanov [Fri, 21 Aug 2015 18:20:22 +0000 (19:20 +0100)]
aacenc: do not reject AAC-Main profile

This commit permits for the use of the Main profile
in encoding. The functionality of that profile will
be added in the commits following. By itself, this
commit does not alter anything.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaaccoder: move the Intensity Stereo implementation out
Rostislav Pehlivanov [Fri, 21 Aug 2015 18:13:26 +0000 (19:13 +0100)]
aaccoder: move the Intensity Stereo implementation out

This commit moves the intensity stereo implementation
out from aaccoder and into a separate file. This was
possible using the previous commits.

This commit also drastically improves the IS implementation
by making it phase invariant e.g. it will always choose the
best possible phase regardless of whether M/S coding is on
or most of the coefficients have identical phases.
This also increases the quality and reduces any distortions
introduced by enablind intensity stereo.

Users are encouraged to test it out using the -aac_is 1
parameter as it has always been.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaaccoder_mips: update function definitions
Rostislav Pehlivanov [Fri, 21 Aug 2015 18:00:15 +0000 (19:00 +0100)]
aaccoder_mips: update function definitions

This commit updates the function definitions in the aaccoder_mips.c
file. This was broken around a month or so ago with the addition
of the rounding argument.
The previous commit in this series also introduced a separate array
to put the quantization error in, this also needed to be updated,
albeit non-functional, in the MIPS optimized aaccoder file.

Credits for the rounding goes to Claudio Freire.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaaccoder: move the quantization functions to a separate file
Rostislav Pehlivanov [Fri, 21 Aug 2015 17:53:14 +0000 (18:53 +0100)]
aaccoder: move the quantization functions to a separate file

This commit moves the quantizer to a separate header file.
This allows the quantizer to be used from a separate files outside
of aaccoder without having to put another function pointer and will
result in a slight speedup as the compiler can do more optimizations.

This is required for commits following.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaacenc: create and initialize an LTP context
Rostislav Pehlivanov [Fri, 21 Aug 2015 17:43:09 +0000 (18:43 +0100)]
aacenc: create and initialize an LTP context

This commit only creates and initializes an LTP
context which is needed for upcoming commits (TNS).

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaacenc: populate the sce->ics.swb_offset table pointer
Rostislav Pehlivanov [Fri, 21 Aug 2015 17:40:44 +0000 (18:40 +0100)]
aacenc: populate the sce->ics.swb_offset table pointer

This commit simply populates the table pointer which is needed
for upcoming commits (TNS, prediction, etc.). Copied from
the decoder.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaacenc: reset special bands in the main frame encoding function
Rostislav Pehlivanov [Fri, 21 Aug 2015 17:36:09 +0000 (18:36 +0100)]
aacenc: reset special bands in the main frame encoding function

This commit moves the resetting of special bands (above RESERVED_BT)
to the main frame encoding function rather than the way it was done
previously in their corresponding search_for_... functions.

The reason why special bands need to be reset is that while normal
bands get chosen for every frame by the coder (twoloop by default)
the coders do not touch any special sfbs and will therefore
make them persist throughout the file.

If we zero them out any bands left unmarked will be chosen by
the second part of the coder (the trellis function in aaccoder.c).

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoaacenc: coding style changes
Rostislav Pehlivanov [Fri, 21 Aug 2015 17:30:51 +0000 (18:30 +0100)]
aacenc: coding style changes

This commit only changes the coding style to a saner way
of accessing coefficients (makes more sense to get the
memory address of a coefficients and start from there
rather than adding arbitrary numbers to offset a pointer).
Some compilers might detect an out of bounds access easier.

Also the way M/S and IS coefficients are calculated has been
changed, but should still have the same result (with the exception
that IS now applies from the normal coefficients rather than the
pristine ones, this is needed for upcoming commits).

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
5 years agoavcodec/x86/v210-init: fix unused variable warning
Ganesh Ajjanagadde [Fri, 21 Aug 2015 13:57:50 +0000 (09:57 -0400)]
avcodec/x86/v210-init: fix unused variable warning

Fixes a -Wunused-variable while compiling with --disable-yasm on x86

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoffserver: cast PID to int64_t before printing
Ganesh Ajjanagadde [Fri, 21 Aug 2015 02:12:40 +0000 (22:12 -0400)]
ffserver: cast PID to int64_t before printing

Unfortunately, there is no portable format specifier for PID's.
Furthermore, it is not safe to assume pid_t <= 32 bit in size,
see e.g http://unix.derkeiler.com/Mailing-Lists/AIX-L/2010-08/msg00008.html.
Right now, it is ok to assume pid_t <= 32 bit in size, but this may change in the future.
Also, this patch fixes warning due to lack of an appropriate cast from
http://fate.ffmpeg.org/report.cgi?time=20150820233505&slot=x86-opensolaris-gcc4.3.
Note that this method of handling pid_t is in line with what nginx does.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavformat/hls: correct comment for ensure_playlist()
Ganesh Ajjanagadde [Thu, 20 Aug 2015 23:27:24 +0000 (19:27 -0400)]
avformat/hls: correct comment for ensure_playlist()

Comment was previously slightly incorrect.
Also, it was placed in the wrong location.

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavfilter/vf_vectorscope: Fix ;;
Michael Niedermayer [Fri, 21 Aug 2015 11:16:34 +0000 (13:16 +0200)]
avfilter/vf_vectorscope: Fix ;;

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavcodec/jpeg2000: comment out unused variable
Ganesh Ajjanagadde [Thu, 20 Aug 2015 23:28:00 +0000 (19:28 -0400)]
avcodec/jpeg2000: comment out unused variable

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

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoswscale/alphablend: Fix pointer type warnings
Michael Niedermayer [Fri, 21 Aug 2015 10:14:08 +0000 (12:14 +0200)]
swscale/alphablend: Fix pointer type warnings

Found-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoffmpeg: use av_err2str()
Michael Niedermayer [Fri, 21 Aug 2015 09:38:18 +0000 (11:38 +0200)]
ffmpeg: use av_err2str()

Found-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavfilter/vf_vectorscope: support yuv(a)420p and yuv410p as input for common case
Paul B Mahol [Fri, 21 Aug 2015 07:54:26 +0000 (07:54 +0000)]
avfilter/vf_vectorscope: support yuv(a)420p and yuv410p as input for common case

Speed up gain more than 2x.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
5 years agoavcodec/hevcdsp: rename sao_band_filter c functions
James Almer [Fri, 21 Aug 2015 05:24:30 +0000 (02:24 -0300)]
avcodec/hevcdsp: rename sao_band_filter c functions

Signed-off-by: James Almer <jamrial@gmail.com>
5 years agoAdd support for Audible AA files
Vesselin Bontchev [Sun, 19 Jul 2015 21:16:36 +0000 (23:16 +0200)]
Add support for Audible AA files

https://en.wikipedia.org/wiki/Audible.com#Quality

5 years agoffmpeg: Use correct codec_id for av_parser_change() check
Michael Niedermayer [Fri, 21 Aug 2015 01:04:41 +0000 (03:04 +0200)]
ffmpeg: Use correct codec_id for av_parser_change() check

No testcase known

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoffmpeg: Check av_parser_change() for failure
Michael Niedermayer [Fri, 21 Aug 2015 01:02:55 +0000 (03:02 +0200)]
ffmpeg: Check av_parser_change() for failure

No testcase known

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavcodec/h264_mp4toannexb_bsf: Reorder operations in nal_size check
Michael Niedermayer [Fri, 21 Aug 2015 00:49:21 +0000 (02:49 +0200)]
avcodec/h264_mp4toannexb_bsf: Reorder operations in nal_size check

Fixes Ticket4778

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoffmpeg: Check for RAWVIDEO and do not relay only on AVFMT_RAWPICTURE
Michael Niedermayer [Fri, 21 Aug 2015 00:16:31 +0000 (02:16 +0200)]
ffmpeg: Check for RAWVIDEO and do not relay only on AVFMT_RAWPICTURE

The null muxer has AVFMT_RAWPICTURE set but can be fed with non-raw material

related to Ticket4778

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoffmpeg: check avpicture_fill() return value
Michael Niedermayer [Fri, 21 Aug 2015 00:02:05 +0000 (02:02 +0200)]
ffmpeg: check avpicture_fill() return value

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavfilter: add video vectorscope filter
Paul B Mahol [Sat, 15 Aug 2015 12:37:16 +0000 (14:37 +0200)]
avfilter: add video vectorscope filter

5 years agoavcodec/metasound_data: comment out unused variable
Ganesh Ajjanagadde [Thu, 20 Aug 2015 21:34:52 +0000 (17:34 -0400)]
avcodec/metasound_data: comment out unused variable

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

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agograph2dot: use avfilter_pad_get_name accessor function
Andreas Cadhalpun [Tue, 18 Aug 2015 21:07:37 +0000 (23:07 +0200)]
graph2dot: use avfilter_pad_get_name accessor function

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
5 years agoapi-seek-test: first version
Ludmila Glinskih [Fri, 31 Jul 2015 13:01:43 +0000 (16:01 +0300)]
api-seek-test: first version

Works only with video stream.
First pass without seeking -- counts crcs of a frames and store it in an array.
After that it seeks a lot in different places and checks if crcs of these frames and crcs of frames in array are the same.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavcodec/aacsbr_fixed: remove unused variable
Ganesh Ajjanagadde [Thu, 20 Aug 2015 08:28:58 +0000 (04:28 -0400)]
avcodec/aacsbr_fixed: remove unused variable

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

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavformat/webmdashenc: fix uninitialized variable
Ganesh Ajjanagadde [Thu, 20 Aug 2015 15:18:14 +0000 (11:18 -0400)]
avformat/webmdashenc: fix uninitialized variable

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

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agodoc/indevs: Remove non-existent decklink option examples
Lou Logan [Thu, 20 Aug 2015 18:31:34 +0000 (10:31 -0800)]
doc/indevs: Remove non-existent decklink option examples

Forgotten in c5d0148. Found by Thomas Langhorst.

Signed-off-by: Lou Logan <lou@lrcd.com>
5 years agoavformat/ftp: use correct enum type
Ganesh Ajjanagadde [Thu, 20 Aug 2015 08:29:12 +0000 (04:29 -0400)]
avformat/ftp: use correct enum type

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

Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agolavf/mpeg: Allow users to force audio codec MLP.
Carl Eugen Hoyos [Thu, 20 Aug 2015 10:18:03 +0000 (12:18 +0200)]
lavf/mpeg: Allow users to force audio codec MLP.

Fixes part of ticket #4786.

5 years agoavformat/mux: Update sidedata in ff_write_chained()
Michael Niedermayer [Thu, 20 Aug 2015 01:35:10 +0000 (03:35 +0200)]
avformat/mux: Update sidedata in ff_write_chained()

Fixes Ticket4777

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agolavf/ftp: implement move and delete callbacks
Mariusz Szczepańczyk [Wed, 19 Aug 2015 21:52:14 +0000 (23:52 +0200)]
lavf/ftp: implement move and delete callbacks

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoconfigure: Check for CoreServices/CoreServices.h and make vda+viedotoolbox depend...
Michael Niedermayer [Wed, 19 Aug 2015 20:39:46 +0000 (22:39 +0200)]
configure: Check for CoreServices/CoreServices.h and make vda+viedotoolbox depend on it

Fixes arm cross build on osx

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years ago*/version.h: Add note/recommandition about bumping major
Michael Niedermayer [Tue, 18 Aug 2015 10:28:17 +0000 (12:28 +0200)]
*/version.h: Add note/recommandition about bumping major

Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoMAINTAINERS: add myself as a docs maintainer
Lou Logan [Wed, 19 Aug 2015 18:47:38 +0000 (10:47 -0800)]
MAINTAINERS: add myself as a docs maintainer

Signed-off-by: Lou Logan <lou@lrcd.com>
5 years agodoc/indevs: add various missing options
Lou Logan [Wed, 19 Aug 2015 01:43:33 +0000 (17:43 -0800)]
doc/indevs: add various missing options

Signed-off-by: Lou Logan <lou@lrcd.com>
Reviewed-by: Ganesh Ajjanagadde <gajjanag@mit.edu>
5 years agoavfilter: add showfreqs filter
Paul B Mahol [Tue, 4 Aug 2015 12:41:35 +0000 (14:41 +0200)]
avfilter: add showfreqs filter

5 years agocheckasm: x86: properly save rdx/edx in checked_call()
Henrik Gramner [Sun, 16 Aug 2015 15:09:40 +0000 (17:09 +0200)]
checkasm: x86: properly save rdx/edx in checked_call()

If the return value doesn't fit in a single register rdx/edx can in some
cases be used in addition to rax/eax.

Doesn't affect any of the existing checkasm tests but might be useful later.

Also comment the relevant code a bit better.

5 years agocheckasm: Explicitly declare function prototypes
Henrik Gramner [Sun, 16 Aug 2015 11:00:21 +0000 (13:00 +0200)]
checkasm: Explicitly declare function prototypes

Now we no longer have to rely on function pointers intentionally
declared without specified argument types.

This makes it easier to support functions with floating point parameters
or return values as well as functions returning 64-bit values on 32-bit
architectures. It also avoids having to explicitly cast strides to
ptrdiff_t for example.

5 years agofate: rename -error option to -error_rate.
Ronald S. Bultje [Mon, 17 Aug 2015 20:57:37 +0000 (16:57 -0400)]
fate: rename -error option to -error_rate.

This fixes fate when FF_API_ERROR_RATE=0.

5 years agoswscale: refactor vertical scaler
Pedro Arthur [Tue, 18 Aug 2015 14:47:55 +0000 (11:47 -0300)]
swscale: refactor vertical scaler

5 years agolibavcodec/qsvdec.c: the ff_get_format() missed at refactoring has been restored
Ivan Uskov [Thu, 6 Aug 2015 13:14:59 +0000 (09:14 -0400)]
libavcodec/qsvdec.c: the ff_get_format() missed at refactoring has been restored

Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agovaapi: drop unused include.
Gwenole Beauchesne [Wed, 19 Aug 2015 12:15:43 +0000 (14:15 +0200)]
vaapi: drop unused include.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
5 years agovaapi: fix usage of invalid buffer ids.
Gwenole Beauchesne [Tue, 28 Jul 2015 09:34:52 +0000 (11:34 +0200)]
vaapi: fix usage of invalid buffer ids.

Invalid buffer ids are defined by VA_INVALID_ID. Use that through out
vaapi_*.c support files now that we have private data initialized and
managed by libavcodec. Previously, the only requirement for the public
vaapi_context struct was to be zero-initialized.

This fixes support for 3rdparty VA drivers that strictly conform to
the API whereby an invalid buffer id is VA_INVALID_ID and the first
valid buffer id can actually be zero.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
5 years agovaapi: streamline public context structure.
Gwenole Beauchesne [Tue, 28 Jul 2015 09:16:12 +0000 (11:16 +0200)]
vaapi: streamline public context structure.

Move libavcodec managed objects from the public struct vaapi_context
to a new privately owned FFVAContext. This is done so that to clean up
and streamline the public structure, but also to prepare for new codec
support, thus requiring new internal data to be added in there.

The AVCodecContext.hwaccel_context, that holds the public vaapi_context,
shall no longer be accessed from within vaapi_*.c codec support files.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
5 years agovaapi: define a unique pixel format for VA-API (AV_PIX_FMT_VAAPI).
Gwenole Beauchesne [Tue, 28 Jul 2015 08:16:59 +0000 (10:16 +0200)]
vaapi: define a unique pixel format for VA-API (AV_PIX_FMT_VAAPI).

Deprecate older VA pixel formats (MOCO, IDCT) as it is now very unlikely
to ever be useful in the future. Only keep plain AV_PIX_FMT_VAAPI format
that is aliased to the older VLD variant.

This is an API change.

Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
5 years agoavcodec/qsvenc: Added PicTiming SEI
Sven Dueking [Wed, 19 Aug 2015 08:17:40 +0000 (09:17 +0100)]
avcodec/qsvenc: Added PicTiming SEI

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agolibavformat/matroskaenc.c: fix small memory leaks on error
Neil Birkbeck [Wed, 19 Aug 2015 08:06:56 +0000 (01:06 -0700)]
libavformat/matroskaenc.c: fix small memory leaks on error

Fixing small leaks that can occur when mkv_write_tracks fails in mkv_write_header
(e.g., if video track has unknown codec). Also changing mkv_write_seekhead to take
the MatroskaMuxContext to avoid having dangling pointers.

Signed-off-by: Neil Birkbeck <neil.birkbeck@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavfilter/vf_histogram: make it possible to pick color components for levels mode
Paul B Mahol [Wed, 19 Aug 2015 10:05:33 +0000 (10:05 +0000)]
avfilter/vf_histogram: make it possible to pick color components for levels mode

Signed-off-by: Paul B Mahol <onemda@gmail.com>
5 years agolavfi: fix compilation with FF_API_OLD_FILTER_OPTS=0.
Ronald S. Bultje [Mon, 17 Aug 2015 02:26:16 +0000 (22:26 -0400)]
lavfi: fix compilation with FF_API_OLD_FILTER_OPTS=0.

5 years agofate: Force simple idct for fate-asf-repldata
Michael Niedermayer [Wed, 19 Aug 2015 01:07:12 +0000 (03:07 +0200)]
fate: Force simple idct for fate-asf-repldata

otherwise it can fail when a different idct is used on some platform

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agodoc/indevs: fix fbdev typos
Lou Logan [Tue, 18 Aug 2015 20:55:15 +0000 (12:55 -0800)]
doc/indevs: fix fbdev typos

Fixes ticket #4784 as found by rodarmor.

Signed-off-by: Lou Logan <lou@lrcd.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
5 years agoswscale: Fixed typos
Pedro Arthur [Tue, 18 Aug 2015 18:06:49 +0000 (15:06 -0300)]
swscale: Fixed typos

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoswscale: fixed compiler warnings
Pedro Arthur [Tue, 18 Aug 2015 18:06:49 +0000 (15:06 -0300)]
swscale: fixed compiler warnings

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoswscale: add license headers and copyrights
Pedro Arthur [Tue, 18 Aug 2015 18:06:49 +0000 (15:06 -0300)]
swscale: add license headers and copyrights

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agolibx264: Add option to force IDR frames
Derek Buitenhuis [Tue, 18 Aug 2015 20:39:01 +0000 (17:39 -0300)]
libx264: Add option to force IDR frames

Currently, when forcing an I frame, via API, or via the ffmpeg cli,
using -force_key_frames, we still let x264 decide what sort of
keyframe to user. In some cases, it is useful to be able to force
an IDR frame, e.g. for cutting streams.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
5 years agolavu: disable wrong value check in get_version() upon api bump.
Ronald S. Bultje [Sun, 16 Aug 2015 23:41:17 +0000 (19:41 -0400)]
lavu: disable wrong value check in get_version() upon api bump.

5 years agolavc: move vdpau decoders under FF_API_VDPAU.
wm4 [Mon, 17 Aug 2015 21:05:34 +0000 (17:05 -0400)]
lavc: move vdpau decoders under FF_API_VDPAU.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
5 years agolavc: put remaining bits of vdpau-in-decoder under FF_API_CAP_VDPAU.
Ronald S. Bultje [Sun, 16 Aug 2015 23:35:59 +0000 (19:35 -0400)]
lavc: put remaining bits of vdpau-in-decoder under FF_API_CAP_VDPAU.

5 years agoPrepare for removal of obsolete FF_IDCT_* members.
Ronald S. Bultje [Sun, 16 Aug 2015 23:37:46 +0000 (19:37 -0400)]
Prepare for removal of obsolete FF_IDCT_* members.

5 years agompeg4video: use ff_dlog instead of av_log under debug&FF_DEBUG_PTS.
Ronald S. Bultje [Tue, 18 Aug 2015 00:44:53 +0000 (20:44 -0400)]
mpeg4video: use ff_dlog instead of av_log under debug&FF_DEBUG_PTS.

This fixes compilation with FF_API_UNUSED_MEMBERS=0.

5 years agoconfigure: force -mconsole when linking SDL under MinGW
Stephen Hutchinson [Tue, 18 Aug 2015 16:00:06 +0000 (12:00 -0400)]
configure: force -mconsole when linking SDL under MinGW

When building SDL with MinGW, it sets -mwindows with the
assumption that the application is a GUI application. If this
is linked without passing -mconsole to configure via
--extra-ldflags, stdout will be silenced from cmd.exe while
running FFmpeg.

The -mwindows flag that causes this behavior is included in the
sdl_libs variable, so append -mconsole there rather than create
an sdl_ldflags case just to insert it (especially if -mconsole
must come *after* -mwindows in order to be effective).

Reviewed-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoUndeprecate av_opt_set_defaults2().
Ronald S. Bultje [Sun, 16 Aug 2015 23:40:48 +0000 (19:40 -0400)]
Undeprecate av_opt_set_defaults2().

5 years agolavc: fix compilation with FF_API_XVMC.
Ronald S. Bultje [Mon, 17 Aug 2015 11:40:01 +0000 (07:40 -0400)]
lavc: fix compilation with FF_API_XVMC.

5 years agooptions: mark av_get_{int,double,q} as deprecated.
Ronald S. Bultje [Sun, 16 Aug 2015 20:11:13 +0000 (16:11 -0400)]
options: mark av_get_{int,double,q} as deprecated.

Convert last users to av_opt_get_*() counterparts.

5 years agolibvpxenc: make flags i64 instead of dbl.
Ronald S. Bultje [Mon, 17 Aug 2015 21:10:56 +0000 (17:10 -0400)]
libvpxenc: make flags i64 instead of dbl.

5 years agoFF_OPT_TYPE_* -> AV_OPT_TYPE_*.
Ronald S. Bultje [Sun, 16 Aug 2015 23:34:13 +0000 (19:34 -0400)]
FF_OPT_TYPE_* -> AV_OPT_TYPE_*.

5 years agoReplace av_dlog with ff_dlog.
Ronald S. Bultje [Tue, 18 Aug 2015 00:45:35 +0000 (20:45 -0400)]
Replace av_dlog with ff_dlog.

ff_dlog checks compilability, and is non-public. av_dlog is deprecated
and no longer exists if FF_API_DLOG=0.

5 years agolavfi: add error message to help users convert to new lavfi syntax.
Ronald S. Bultje [Tue, 18 Aug 2015 00:04:57 +0000 (20:04 -0400)]
lavfi: add error message to help users convert to new lavfi syntax.

5 years agoscale2ref: override request_frame() and correctly connect them to the corresponding...
Michael Niedermayer [Tue, 18 Aug 2015 13:10:30 +0000 (15:10 +0200)]
scale2ref: override request_frame() and correctly connect them to the corresponding inputs

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoavfilter/vf_scale: Set scale2ref ref output timebase
Michael Niedermayer [Tue, 18 Aug 2015 13:06:10 +0000 (15:06 +0200)]
avfilter/vf_scale: Set scale2ref ref output timebase

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoMove ff_dlog from lavc to lavu.
Ronald S. Bultje [Tue, 18 Aug 2015 00:27:25 +0000 (20:27 -0400)]
Move ff_dlog from lavc to lavu.

5 years agoconfigure: Use pkg-config for libkvazaar.
Arttu Ylä-Outinen [Tue, 18 Aug 2015 06:04:41 +0000 (09:04 +0300)]
configure: Use pkg-config for libkvazaar.

Signed-off-by: Arttu Ylä-Outinen <arttu.yla-outinen@tut.fi>
Liked-by: wm4 <nfxjfg@googlemail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoMerge commit '317cfaa5e09755ed0b34af512ec687963a67bdbf'
Hendrik Leppkes [Tue, 18 Aug 2015 07:35:56 +0000 (09:35 +0200)]
Merge commit '317cfaa5e09755ed0b34af512ec687963a67bdbf'

* commit '317cfaa5e09755ed0b34af512ec687963a67bdbf':
  asfdec: prevent the memory leak in the asf_read_metada_obj

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoMerge commit '58c3720a3cc71142b5d48d8ccdc9213f9a66cd33'
Hendrik Leppkes [Tue, 18 Aug 2015 07:34:53 +0000 (09:34 +0200)]
Merge commit '58c3720a3cc71142b5d48d8ccdc9213f9a66cd33'

* commit '58c3720a3cc71142b5d48d8ccdc9213f9a66cd33':
  fate: Make sure a corner-case for ASF is covered

Adjusted fate ref to match the different timebase of the ffasf demuxer

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoMerge commit '72839fce6457fdb5d51b4a5381ac52914ee66389'
Hendrik Leppkes [Tue, 18 Aug 2015 07:22:41 +0000 (09:22 +0200)]
Merge commit '72839fce6457fdb5d51b4a5381ac52914ee66389'

* commit '72839fce6457fdb5d51b4a5381ac52914ee66389':
  hlsenc: Use AV_TIME_BASE units for all the computations

Not merged, duration/time computation is handled quite differently in ffmpeg's hlsenc

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoMerge commit '7bf9647264308d2df74b2b50669f2d02a7ecc90b'
Hendrik Leppkes [Tue, 18 Aug 2015 07:14:08 +0000 (09:14 +0200)]
Merge commit '7bf9647264308d2df74b2b50669f2d02a7ecc90b'

* commit '7bf9647264308d2df74b2b50669f2d02a7ecc90b':
  vp7: bound checking in vp7_decode_frame_header

Only partially merged, see 46f72ea507afee6adb0d2324848159063d0e7afc

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoMerge commit 'f34b152eb7b7e8d2aee57c710a072cf74173fbe1'
Hendrik Leppkes [Tue, 18 Aug 2015 07:09:55 +0000 (09:09 +0200)]
Merge commit 'f34b152eb7b7e8d2aee57c710a072cf74173fbe1'

* commit 'f34b152eb7b7e8d2aee57c710a072cf74173fbe1':
  libfdk-aacdec: Clean up properly if the init fails

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoMerge commit '1b90433f79de857550d4d8c35c89fbe954920594'
Hendrik Leppkes [Tue, 18 Aug 2015 07:05:54 +0000 (09:05 +0200)]
Merge commit '1b90433f79de857550d4d8c35c89fbe954920594'

* commit '1b90433f79de857550d4d8c35c89fbe954920594':
  libfdk-aacdec: Always decode into an intermediate buffer

Conflicts:
libavcodec/libfdk-aacdec.c

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoMerge commit '87de6ddb7b7674e329d5c96677bd8685bc7f7855'
Hendrik Leppkes [Tue, 18 Aug 2015 07:02:15 +0000 (09:02 +0200)]
Merge commit '87de6ddb7b7674e329d5c96677bd8685bc7f7855'

* commit '87de6ddb7b7674e329d5c96677bd8685bc7f7855':
  libfdk-aacdec: Bump the max number of channels to 8

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoMerge commit 'cb2dbe2c762dae44d890aa26620bcdd9022fd0f3'
Hendrik Leppkes [Tue, 18 Aug 2015 07:02:01 +0000 (09:02 +0200)]
Merge commit 'cb2dbe2c762dae44d890aa26620bcdd9022fd0f3'

* commit 'cb2dbe2c762dae44d890aa26620bcdd9022fd0f3':
  configure: arm: Assume softfp ABI on darwin

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoMerge commit '44b44441203177690305c294be6eff8d9c668954'
Hendrik Leppkes [Tue, 18 Aug 2015 07:01:35 +0000 (09:01 +0200)]
Merge commit '44b44441203177690305c294be6eff8d9c668954'

* commit '44b44441203177690305c294be6eff8d9c668954':
  x86inc: Various minor backports from x264

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoMerge commit '26ac22e5e7394346e9d59f800e7d4e91f4518d33'
Hendrik Leppkes [Tue, 18 Aug 2015 06:50:22 +0000 (08:50 +0200)]
Merge commit '26ac22e5e7394346e9d59f800e7d4e91f4518d33'

* commit '26ac22e5e7394346e9d59f800e7d4e91f4518d33':
  movenc: Add a new flag for writing global sidx indexes for dash

Conflicts:
libavformat/movenc.c
libavformat/movenc.h

Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
5 years agoswscale: process horizontal lines in batches
Pedro Arthur [Mon, 17 Aug 2015 20:07:53 +0000 (17:07 -0300)]
swscale: process horizontal lines in batches

Process more lines in a single pass to improve performance

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agoswscale: refactor horizontal scaling
Pedro Arthur [Mon, 17 Aug 2015 20:03:20 +0000 (17:03 -0300)]
swscale: refactor horizontal scaling

+ split color conversion from scaling
- disabled gamma correction, until it's refactored too

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
5 years agofate: add -fflags +bitexact in a few places.
Ronald S. Bultje [Mon, 17 Aug 2015 19:47:20 +0000 (15:47 -0400)]
fate: add -fflags +bitexact in a few places.

This improves results after FF_API_LAVF_BITEXACT=0. It still doesn't
pass, because of mov rtphint track which I don't understand (yet).

5 years agofate: explicitly specify audio bitrate for adpcm/mp2fixed tests.
Ronald S. Bultje [Mon, 17 Aug 2015 15:50:12 +0000 (11:50 -0400)]
fate: explicitly specify audio bitrate for adpcm/mp2fixed tests.

They picked up defaults, which changes from 128 to 200 when we remove
FF_API_OLD_AVOPTIONS.

5 years agofate: move -flags +mv0 -> -mpv_flags +mv0.
Ronald S. Bultje [Mon, 17 Aug 2015 20:08:50 +0000 (16:08 -0400)]
fate: move -flags +mv0 -> -mpv_flags +mv0.

Fixes associated fate tests when FF_API_MV0=0.

5 years agoavfilter: add scale2ref filter
Michael Niedermayer [Sat, 15 Aug 2015 16:38:06 +0000 (18:38 +0200)]
avfilter: add scale2ref filter

This filter can be used to scale one stream to match another or based on
another, useful to scale subtitles or other things to be overlayed

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