]> git.sesse.net Git - ffmpeg/log
ffmpeg
7 years agopgssubdec: reset rle_data_len/rle_remaining_len on allocation error
Andreas Cadhalpun [Tue, 31 Jan 2017 00:59:38 +0000 (01:59 +0100)]
pgssubdec: reset rle_data_len/rle_remaining_len on allocation error

The code relies on their validity and otherwise can try to access a NULL
object->rle pointer, causing segmentation faults.

Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
7 years agomov: Avoid memcmp of uninitialised data
Mark Thompson [Sun, 29 Jan 2017 19:45:59 +0000 (19:45 +0000)]
mov: Avoid memcmp of uninitialised data

The string codec name need not be as long as the value we are
comparing it to, so memcmp may make decisions derived from
uninitialised data that valgrind then complains about (though the
overall result of the function will always be the same).  Use
strncmp instead, which will stop at the first zero byte and
therefore not encounter this issue.

7 years agovaapi_encode: Add VP8 support
Mark Thompson [Tue, 29 Nov 2016 20:38:29 +0000 (20:38 +0000)]
vaapi_encode: Add VP8 support

7 years agovaapi_encode: Pass framerate parameters to driver
Mark Thompson [Tue, 29 Nov 2016 22:12:46 +0000 (22:12 +0000)]
vaapi_encode: Pass framerate parameters to driver

Only do this when building for a recent VAAPI version - initial
driver implementations were confused about the interpretation of the
framerate field, but hopefully this will be consistent everywhere
once 0.40.0 is released.

7 years agovaapi_h264: Enable VBR mode
Mark Thompson [Sun, 29 Jan 2017 14:12:20 +0000 (14:12 +0000)]
vaapi_h264: Enable VBR mode

Default to using VBR when a target bitrate is set, unless the max rate
is also set and matches the target.  Changes to the Intel driver mean
that min_qp is also respected in this case, so set a codec default to
unset the value rather than using the current default inherited from
the MPEG-4 part 2 encoder.

7 years agovaapi_encode: Support VBR mode
Mark Thompson [Sun, 29 Jan 2017 14:11:03 +0000 (14:11 +0000)]
vaapi_encode: Support VBR mode

This includes a backward-compatibility hack to choose CBR anyway on
old drivers which have no CBR support, so that existing programs will
continue to work their options now map to VBR.

7 years agodoc: add dash muxer
Peter Große [Sun, 29 Jan 2017 14:26:33 +0000 (15:26 +0100)]
doc: add dash muxer

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: add webm support
Peter Große [Sun, 29 Jan 2017 14:26:32 +0000 (15:26 +0100)]
dashenc: add webm support

Use webm muxer for VP8, VP9 and Opus codec, mp4 muxer otherwise.

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: use avio_dynbuf instead of packet_write callback
Peter Große [Sun, 29 Jan 2017 14:26:31 +0000 (15:26 +0100)]
dashenc: use avio_dynbuf instead of packet_write callback

The dash_write function drops data, if no IOContext is initialized.

Since the mp4 muxer is used in "frag_custom" mode, data is only
written when calling av_write_frame(NULL) explicitly and thus
there will be no data loss.

To add support for webm as subordinate muxer, which doesn't have
such a mode, a dynamic buffer is required to provide an always
initialized IOContext.

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: copy language and role metadata from streams assigned to sets
Peter Große [Sun, 29 Jan 2017 14:26:30 +0000 (15:26 +0100)]
dashenc: copy language and role metadata from streams assigned to sets

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: default to one AdaptationSet per stream
Peter Große [Sun, 29 Jan 2017 14:26:29 +0000 (15:26 +0100)]
dashenc: default to one AdaptationSet per stream

Previously all mapped streams of a media type (video, audio) where assigned
to a single AdaptationSet. Using the DASH live profile it is mandatory, that
the segments of all representations are aligned, which is currently not
enforced. This leads to problems when using video streams with different
key frame intervals. So to play safe, default to one AdaptationSet per stream,
unless overwritten by explicit assignment.

To get the old assignment scheme, use

  -adaptation_sets "id=0,streams=v id=1,streams=a"

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: allow assigning all streams of a media type to an AdaptationSet
Peter Große [Sun, 29 Jan 2017 14:26:28 +0000 (15:26 +0100)]
dashenc: allow assigning all streams of a media type to an AdaptationSet

Using the characters "v" or "a" instead of stream index numbers for assigning
streams in the adaption_set option, all streams matching that given type will
be added to the AdaptationSet.

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: add support for assigning streams to AdaptationSets
Peter Große [Sun, 29 Jan 2017 14:26:27 +0000 (15:26 +0100)]
dashenc: add support for assigning streams to AdaptationSets

Also makes sure all streams are assigned to exactly one AdaptationSet.

This patch is originally based partially on code by Vignesh Venkatasubramanian.

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: calculate stream bitrate from first segment if not available
Peter Große [Mon, 30 Jan 2017 12:49:44 +0000 (13:49 +0100)]
dashenc: calculate stream bitrate from first segment if not available

Bandwidth information is required in the manifest, but not always
provided by the demuxer. In that case calculate the bandwith based
on the size and duration of the first segment.

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: separate segments based on current segment duration
Peter Große [Sun, 29 Jan 2017 14:26:25 +0000 (15:26 +0100)]
dashenc: separate segments based on current segment duration

The current implementation creates new segments comparing

  pkt->pts - first_pts > nb_segs * min_seg_duration

This works fine, but if the keyframe interval is smaller than "min_seg_duration"
segments shorter than the minimum segment duration are created.

Example: keyint=50, min_seg_duration=3000000
 segment 1 contains keyframe 1 (duration=2s <  total_duration=3s)
                and keyframe 2 (duration=4s >= total_duration=3s)
 segment 2 contains keyframe 3 (duration=6s >= total_duration=6s)
 segment 3 contains keyframe 4 (duration=8s <  total_duration=9s)
                and keyframe 5 (duration=10s >= total_duration=9s)
 ...

Segment 2 is only 2s long, shorter than min_seg_duration = 3s.

To fix this, new segments are created based on the actual written duration.
Otherwise the option name "min_seg_duration" is misleading.

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: add option to provide UTC timing source
Peter Große [Sun, 29 Jan 2017 19:41:22 +0000 (20:41 +0100)]
dashenc: add option to provide UTC timing source

If set, adds a UTCTiming tag in the manifest.

This is part of the recommendations listed in the "Guidelines for
Implementations: DASH-IF Interoperability Points" [1][2]
Section 4.7 describes means for the Availability Time Synchronization.

A usable default is "https://time.akamai.com/?iso"

[1] http://dashif.org/guidelines/
[2] http://dashif.org/wp-content/uploads/2016/12/DASH-IF-IOP-v4.0-clean.pdf
    (current version as of writing)

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoconfigure: Clean up temporary files on interrupt
Diego Biurrun [Sun, 21 Sep 2014 09:48:21 +0000 (11:48 +0200)]
configure: Clean up temporary files on interrupt

7 years agoconfigure: Place all temporary files in one separate directory
Michał Górny [Sun, 21 Sep 2014 09:38:25 +0000 (11:38 +0200)]
configure: Place all temporary files in one separate directory

Place all temporary files within a single, quasi-atomically created
temporary directory rather than relying on unsafe 'mktemp -u'. This
prevents possible race conditions in case two parallel 'mktemp -u' calls
returned the same path. Additionally, it reduces TMPDIR pollution by
keeping all test files in a single subdirectory.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
7 years agortmp: Account for bytes_read wraparound
Luca Barbato [Wed, 25 Jan 2017 14:59:09 +0000 (15:59 +0100)]
rtmp: Account for bytes_read wraparound

Servers seem to be happy to receive the wrapped-around value as long
as they receive a report, otherwise they timeout.

Initially reported and analyzed by Thomas Bernhard.

7 years agovaapi_encode: Add MPEG-2 support
Mark Thompson [Mon, 9 Jan 2017 19:17:37 +0000 (19:17 +0000)]
vaapi_encode: Add MPEG-2 support

7 years agodashenc: increase buffer time hint in the manifest
Anton Schubert [Thu, 26 Jan 2017 23:25:09 +0000 (00:25 +0100)]
dashenc: increase buffer time hint in the manifest

to avoid rebuffering on the clientside for difficult network conditions.

Signed-off-by: Anton Schubert <ischluff@mailbox.org>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: add mandatory id to AdaptationSet and Period in manifest
Peter Große [Thu, 26 Jan 2017 23:25:08 +0000 (00:25 +0100)]
dashenc: add mandatory id to AdaptationSet and Period in manifest

Signed-off-by: Peter Große <pegro@friiks.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agodashenc: fix ISO8601 UTC parsing
Anton Schubert [Thu, 26 Jan 2017 23:25:07 +0000 (00:25 +0100)]
dashenc: fix ISO8601 UTC parsing

Appends Z to timestamp to force ISO8601 datetime parsing as UTC.
Without Z, some browsers (Chrome) interpret the timestamp as
localtime and others (Firefox) interpret it as UTC.

Signed-off-by: Anton Schubert <ischluff@mailbox.org>
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agobuild: Map -Wall compiler flag to -W3 for MSVC and -Wextra to -W4
Diego Biurrun [Wed, 14 Dec 2016 19:35:18 +0000 (20:35 +0100)]
build: Map -Wall compiler flag to -W3 for MSVC and -Wextra to -W4

These are more appropriate warning level equivalents.

7 years agobuild: Detect blocks C language extension and add it as VDA dependency
Diego Biurrun [Wed, 25 Jan 2017 17:40:51 +0000 (18:40 +0100)]
build: Detect blocks C language extension and add it as VDA dependency

Newer versions of OS X use the blocks extension in VDA-related headers.
Some compilers, like current gcc, do not support the blocks extension
and fail to compile code using those headers.

7 years agoconfigure: Add quotes around a variable which might be empty
Martin Storsjö [Wed, 25 Jan 2017 13:11:23 +0000 (15:11 +0200)]
configure: Add quotes around a variable which might be empty

If we only have a target compiler but no host compiler, the $type
variable will be empty once.

(Currently we fail to do a cross build if no host compiler is available
due to using the host compiler for processing option lists though.
But despite that, this comparison in configure needs quotes.)

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agofifo: Return the correct AVERROR value
Luca Barbato [Wed, 25 Jan 2017 23:06:50 +0000 (00:06 +0100)]
fifo: Return the correct AVERROR value

7 years agoconfigure: Use proper compiler-specific speed flags for hostcc
Diego Biurrun [Thu, 19 Jan 2017 10:36:52 +0000 (11:36 +0100)]
configure: Use proper compiler-specific speed flags for hostcc

7 years agoconfigure: Move optflags checks to a more sensible place
Diego Biurrun [Thu, 15 Dec 2016 11:20:06 +0000 (12:20 +0100)]
configure: Move optflags checks to a more sensible place

7 years agotak: Convert to the new bitstream reader
Alexandra Hájková [Wed, 13 Apr 2016 19:00:34 +0000 (21:00 +0200)]
tak: Convert to the new bitstream reader

7 years agomagicyuv: Convert to the new bitstream reader
Diego Biurrun [Tue, 21 Jun 2016 12:35:53 +0000 (14:35 +0200)]
magicyuv: Convert to the new bitstream reader

7 years agotruemotion2rt: Convert to the new bitstream reader
Diego Biurrun [Tue, 21 Jun 2016 12:39:18 +0000 (14:39 +0200)]
truemotion2rt: Convert to the new bitstream reader

7 years agowavpack: Convert to the new bitstream reader
Alexandra Hájková [Fri, 15 Apr 2016 08:45:11 +0000 (10:45 +0200)]
wavpack: Convert to the new bitstream reader

7 years agompc: Convert to the new bitstream reader
Alexandra Hájková [Mon, 18 Apr 2016 08:56:03 +0000 (10:56 +0200)]
mpc: Convert to the new bitstream reader

7 years agodes-test: Pass the proper types to av_des_*() functions
Diego Biurrun [Sun, 16 Oct 2016 10:33:45 +0000 (12:33 +0200)]
des-test: Pass the proper types to av_des_*() functions

Fixes a number of incompatible pointer type warnings.

7 years agoswscale-test: const correctness for pointer variable
Diego Biurrun [Sun, 6 Dec 2015 11:45:10 +0000 (12:45 +0100)]
swscale-test: const correctness for pointer variable

libswscale/swscale-test.c:369:20: warning: passing argument 2 of ‘sws_scale’ from incompatible pointer type [-Wincompatible-pointer-types]
libswscale/swscale.h:207:5: note: expected ‘const uint8_t * const* {aka const unsigned char * const*}’ but argument is of type ‘uint8_t ** {aka unsigned char **}’

7 years agoOS/2: Try to commit memory above 1GB
Dave Yeo [Sat, 21 Jan 2017 06:19:56 +0000 (22:19 -0800)]
OS/2: Try to commit memory above 1GB

Signed-off-by: Dave Yeo <dave.r.yeo@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
7 years agodxtory: Convert to the new bitstream reader
Alexandra Hájková [Sat, 9 Apr 2016 17:37:46 +0000 (19:37 +0200)]
dxtory: Convert to the new bitstream reader

7 years agoapedec: Convert to the new bitstream reader
Alexandra Hájková [Fri, 8 Apr 2016 17:49:07 +0000 (19:49 +0200)]
apedec: Convert to the new bitstream reader

7 years agompegvideoenc: make a table const
Anton Khirnov [Sun, 22 May 2016 19:20:31 +0000 (21:20 +0200)]
mpegvideoenc: make a table const

7 years agozmbvenc: get rid of a global table
Anton Khirnov [Sun, 22 May 2016 19:09:58 +0000 (21:09 +0200)]
zmbvenc: get rid of a global table

7 years agohevc: Mark as having threadsafe init
Derek Buitenhuis [Wed, 11 Jan 2017 18:12:19 +0000 (13:12 -0500)]
hevc: Mark as having threadsafe init

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agoals: Convert to the new bitstream reader
Alexandra Hájková [Fri, 8 Apr 2016 17:22:46 +0000 (19:22 +0200)]
als: Convert to the new bitstream reader

7 years agonvenc: Explicitly push the cuda context on encoding
Luca Barbato [Fri, 13 Jan 2017 09:53:35 +0000 (10:53 +0100)]
nvenc: Explicitly push the cuda context on encoding

Make sure that NVENC does not misbehave if other cuda usages happen
in the application.

7 years agoalac: Convert to the new bitstream reader
Alexandra Hájková [Thu, 7 Apr 2016 20:04:58 +0000 (22:04 +0200)]
alac: Convert to the new bitstream reader

7 years agortp: Convert to the new bitstream reader
Alexandra Hájková [Sun, 17 Apr 2016 14:59:24 +0000 (16:59 +0200)]
rtp: Convert to the new bitstream reader

7 years agomov: Convert to the new bitstream reader
Alexandra Hájková [Sat, 16 Apr 2016 10:17:24 +0000 (12:17 +0200)]
mov: Convert to the new bitstream reader

7 years agoavconv: Do not pass NULL to avio_tell
Luca Barbato [Thu, 15 Dec 2016 17:59:41 +0000 (18:59 +0100)]
avconv: Do not pass NULL to avio_tell

The null demuxer does not have a backing AVIOContext.

7 years agoqsv: Set the correct range for la_depth
Luca Barbato [Wed, 14 Dec 2016 10:58:18 +0000 (11:58 +0100)]
qsv: Set the correct range for la_depth

Setting an invalid range for it makes the encoder behave inconsistently.

7 years agotheora: export cropping information instead of handling it internally
Anton Khirnov [Sun, 18 Dec 2016 20:11:47 +0000 (21:11 +0100)]
theora: export cropping information instead of handling it internally

7 years agoh264dec: export cropping information instead of handling it internally
Anton Khirnov [Sun, 18 Dec 2016 20:11:47 +0000 (21:11 +0100)]
h264dec: export cropping information instead of handling it internally

7 years agoh264dec: be more explicit in handling container cropping
Anton Khirnov [Tue, 27 Dec 2016 18:07:18 +0000 (19:07 +0100)]
h264dec: be more explicit in handling container cropping

The current condition can trigger in cases where it shouldn't, with
unexpected results.
Make sure that:
- container cropping is really based on the original dimensions from the
  caller
- those dimenions are discarded on size change

The code is still quite hacky and eventually should be deprecated and
removed, with the decision about which cropping is used delegated to the
caller.

7 years agohevcdec: export cropping information instead of handling it internally
Anton Khirnov [Sun, 18 Dec 2016 20:11:47 +0000 (21:11 +0100)]
hevcdec: export cropping information instead of handling it internally

7 years agolavc: add an option for exporting cropping information to the caller
Anton Khirnov [Sun, 18 Dec 2016 15:42:24 +0000 (16:42 +0100)]
lavc: add an option for exporting cropping information to the caller

Also, add generic code for handling cropping, so the decoders can export
just the cropping size and not bother with the rest.

7 years agoframe: add a cropping rectangle to AVFrame
Anton Khirnov [Sun, 18 Dec 2016 11:30:27 +0000 (12:30 +0100)]
frame: add a cropping rectangle to AVFrame

Extend the width/height doxy to clarify that it should store coded
values.

7 years agoqsvdec: do not sync PIX_FMT_QSV surfaces
Anton Khirnov [Sat, 7 Jan 2017 20:06:16 +0000 (21:06 +0100)]
qsvdec: do not sync PIX_FMT_QSV surfaces

Introducing enforced sync points in arbitrary places is bad for
performance. Since the vast majority of receiving code (QSV VPP or
encoders, retrieving frames through hwcontext) will do the syncing, this
change should not be visible to most callers. But bumping micro just in
case.

This is also consistent with what VAAPI hwaccel does.

7 years agodxva2: allow an empty array of ID3D11VideoDecoderOutputView
Steve Lhomme [Tue, 3 Jan 2017 16:31:51 +0000 (17:31 +0100)]
dxva2: allow an empty array of ID3D11VideoDecoderOutputView

We can pick the correct slice index directly from the ID3D11VideoDecoderOutputView
casted from data[3].

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agodxva2: get the slice number directly from the surface in D3D11VA
Steve Lhomme [Wed, 4 Jan 2017 12:44:12 +0000 (13:44 +0100)]
dxva2: get the slice number directly from the surface in D3D11VA

No need to loop through the known surfaces, we'll use the requested surface
anyway.

The loop is only done for DXVA2.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agoReplace cmdutils_common_opts.h by a macro
Diego Biurrun [Tue, 17 May 2011 15:06:57 +0000 (17:06 +0200)]
Replace cmdutils_common_opts.h by a macro

7 years agobuild: Remove stray duplicate conditional variable declaration
Diego Biurrun [Thu, 5 Jan 2017 16:02:31 +0000 (17:02 +0100)]
build: Remove stray duplicate conditional variable declaration

7 years agovaapi_h264: Scale log2_max_pic_order_cnt_lsb with max_b_frames
Mark Thompson [Wed, 4 Jan 2017 23:05:10 +0000 (23:05 +0000)]
vaapi_h264: Scale log2_max_pic_order_cnt_lsb with max_b_frames

Before this change, it was possible to overflow pic_order_cnt_lsb and
generate a stream with invalid POC numbering.  This makes sure that
the field is large enough that a single IDR B* P sequence uses fewer
than half the available POC lsb values.

7 years agovaapi_encode: Support forcing IDR frames via AVFrame.pict_type
Mark Thompson [Mon, 12 Dec 2016 21:25:28 +0000 (21:25 +0000)]
vaapi_encode: Support forcing IDR frames via AVFrame.pict_type

7 years agovaapi_encode: Fix GOP sizing
Mark Thompson [Wed, 4 Jan 2017 23:17:23 +0000 (23:17 +0000)]
vaapi_encode: Fix GOP sizing

This change makes the configured GOP size be respected exactly -
previously the value could be exceeded slightly due to flaws in the
frame type selection logic.

7 years agointerplayvideo: Convert to the new bitstream reader
Alexandra Hájková [Tue, 12 Apr 2016 15:18:09 +0000 (17:18 +0200)]
interplayvideo: Convert to the new bitstream reader

7 years agoadx: Convert to the new bitstream reader
Alexandra Hájková [Tue, 12 Apr 2016 10:32:06 +0000 (12:32 +0200)]
adx: Convert to the new bitstream reader

7 years agodvbsubdec: Convert to the new bitstream reader
Alexandra Hájková [Tue, 12 Apr 2016 10:29:20 +0000 (12:29 +0200)]
dvbsubdec: Convert to the new bitstream reader

7 years agomotionpixels: Convert to the new bitstream reader
Alexandra Hájková [Sun, 10 Apr 2016 19:41:02 +0000 (21:41 +0200)]
motionpixels: Convert to the new bitstream reader

7 years agohmac: Explicitly convert types at function pointer assignment
Diego Biurrun [Thu, 5 Feb 2015 18:45:41 +0000 (19:45 +0100)]
hmac: Explicitly convert types at function pointer assignment

Fixes a number of warnings of the type
libavutil/hmac.c:61:21: warning: assignment from incompatible pointer type

7 years agocrypto: consistently use size_t as type for length parameters
Diego Biurrun [Thu, 15 Dec 2016 11:46:03 +0000 (12:46 +0100)]
crypto: consistently use size_t as type for length parameters

size_t is the correct type to use for sizes.

7 years agoh264dec: make ff_h264_decode_init() static
Anton Khirnov [Tue, 27 Dec 2016 17:54:47 +0000 (18:54 +0100)]
h264dec: make ff_h264_decode_init() static

It is not called from outside h264dec.c anymore.

7 years agoh264dec: drop a redundant check
Anton Khirnov [Tue, 27 Dec 2016 17:16:36 +0000 (18:16 +0100)]
h264dec: drop a redundant check

Cropping parameters are already checked for validity during SPS parsing,
no need to check them again.

7 years agox86inc: Avoid using eax/rax for storing the stack pointer
Henrik Gramner [Sun, 25 Dec 2016 19:24:59 +0000 (20:24 +0100)]
x86inc: Avoid using eax/rax for storing the stack pointer

When allocating stack space with an alignment requirement that is larger
than the current stack alignment we need to store a copy of the original
stack pointer in order to be able to restore it later.

If we chose to use another register for this purpose we should not pick
eax/rax since it can be overwritten as a return value.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agoChangelog: mention the new avbuild/ directory
Anton Khirnov [Mon, 9 Jan 2017 10:09:16 +0000 (11:09 +0100)]
Changelog: mention the new avbuild/ directory

Especially config.log is often read by users trying to compile Libav, so
its move should be documented.

7 years agofate: Skip the checkasm test if CONFIG_STATIC is disabled
Martin Storsjö [Fri, 30 Dec 2016 19:45:51 +0000 (21:45 +0200)]
fate: Skip the checkasm test if CONFIG_STATIC is disabled

When building DLLs with MSVC, CONFIG_STATIC is disabled (see
d66c52c2b3694 for a more verbose explanation) since the built
object files can't be linked statically (which checkasm does).

This worked up until recently, only by luck.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agohevcdec: add P010 support for D3D11VA
Steve Lhomme [Wed, 4 Jan 2017 08:39:31 +0000 (09:39 +0100)]
hevcdec: add P010 support for D3D11VA

Given it's the same API than DVXA2 I don't know why the same output was not
enabled for both.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agodxva2: Factorize DXVA context validity test into a single macro
Steve Lhomme [Tue, 3 Jan 2017 16:31:49 +0000 (17:31 +0100)]
dxva2: Factorize DXVA context validity test into a single macro

Signed-off-by: Diego Biurrun <diego@biurrun.de>
7 years agodxva2: Make ff_dxva2_get_surface() static and drop its name prefix
Steve Lhomme [Tue, 3 Jan 2017 16:31:48 +0000 (17:31 +0100)]
dxva2: Make ff_dxva2_get_surface() static and drop its name prefix

Signed-off-by: Diego Biurrun <diego@biurrun.de>
7 years agomatroskadec: make sure not to leave EbmlBin in an inconsistent state
Anton Khirnov [Wed, 28 Dec 2016 12:15:14 +0000 (13:15 +0100)]
matroskadec: make sure not to leave EbmlBin in an inconsistent state

If a read fails, the current code will free the data but leave the size
non-zero. Make sure the size is zeroed in such a case.

CC: libav-stable@libav.org
Bug-Id: 1001
Found-By: Kamil Frankowicz
Signed-off-by: Sean McGovern <gseanmcg@gmail.com>
7 years agovaapi_h264: Fix POC on IDR frames
Jun Zhao [Fri, 11 Nov 2016 06:53:49 +0000 (14:53 +0800)]
vaapi_h264: Fix POC on IDR frames

In H.264 section 8.2.1, we have that "The bitstream shall not contain
data that result in Min(TopFieldOrderCnt, BottomFieldOrderCnt) not
equal to 0 for a coded IDR frame".  This fixes the encoder to always
conform to this - previously the POC values formed an unbroken
sequence, not resetting to zero on IDR frames.

Signed-off-by: Mark Thompson <sw@jkqxz.net>
7 years agovaapi_h265: Fix build failure with old libva without 10-bit surfaces
Mark Thompson [Sat, 10 Dec 2016 15:57:01 +0000 (15:57 +0000)]
vaapi_h265: Fix build failure with old libva without 10-bit surfaces

10-bit surface support was added in libva 1.6.2, earlier versions
support H.265 encoding in 8-bit only.

7 years agoaarch64: vp9mc: Fix a comment to refer to a register with the right name
Martin Storsjö [Fri, 16 Dec 2016 20:59:45 +0000 (22:59 +0200)]
aarch64: vp9mc: Fix a comment to refer to a register with the right name

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoaarch64: vp9dsp: Fix vertical alignment in the init file
Martin Storsjö [Thu, 15 Dec 2016 10:00:18 +0000 (12:00 +0200)]
aarch64: vp9dsp: Fix vertical alignment in the init file

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoarm: vp9mc: Fix vertical alignment of operands
Martin Storsjö [Fri, 9 Dec 2016 10:36:28 +0000 (12:36 +0200)]
arm: vp9mc: Fix vertical alignment of operands

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agocmdutils: update copyright year to 2017
Sean McGovern [Sun, 1 Jan 2017 21:31:15 +0000 (16:31 -0500)]
cmdutils: update copyright year to 2017

CC: libav-stable@libav.org
7 years agoconfigure: Fix typo in incdir variable written to config.sh
Diego Biurrun [Thu, 29 Dec 2016 13:34:52 +0000 (14:34 +0100)]
configure: Fix typo in incdir variable written to config.sh

This fixes includedir lines in pkg-config files broken after 92db508307.

7 years agofate: Tweak printing of ignored tests
Martin Storsjö [Thu, 29 Dec 2016 12:20:51 +0000 (14:20 +0200)]
fate: Tweak printing of ignored tests

Use a tab instead of two spaces, skip the fate prefix for the test name.

This makes IGNORE line fit in even better with the other make printouts.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agofate: Unset the sig variable if ignoring a test failure
Martin Storsjö [Wed, 28 Dec 2016 22:15:17 +0000 (00:15 +0200)]
fate: Unset the sig variable if ignoring a test failure

Otherwise the .rep file would still contain a signal instead of a
zero, even if the process returned success.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agofate: Add --ignore-tests configure option for omitting specific FATE tests
Janne Grunau [Tue, 27 Dec 2016 22:19:49 +0000 (00:19 +0200)]
fate: Add --ignore-tests configure option for omitting specific FATE tests

This can be useful to filter out noise in known-broken scenarios like
miscompilation by legacy compilers and similar.

Originally based on a patch by Diego Biurrun.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
7 years agobuild: Add version numbers to "Requires" entries in pkg-config files
Diego Biurrun [Sun, 25 Dec 2016 17:25:41 +0000 (18:25 +0100)]
build: Add version numbers to "Requires" entries in pkg-config files

The (required) version numbers disappeared after edb4348732.

7 years agoparser: Add missing #include for printing ISO C99 conversion specifiers
Diego Biurrun [Sat, 24 Dec 2016 10:36:53 +0000 (11:36 +0100)]
parser: Add missing #include for printing ISO C99 conversion specifiers

7 years agomatroskadec: fix SRT subtitle duration
John Stebbins [Thu, 22 Dec 2016 17:23:30 +0000 (09:23 -0800)]
matroskadec: fix SRT subtitle duration

The codec id for SRT was changed and conditionals were not updated.

7 years agohttp: Check for negative chunk sizes
Martin Storsjö [Thu, 15 Dec 2016 08:24:20 +0000 (10:24 +0200)]
http: Check for negative chunk sizes

A negative chunk size is illegal and would end up used as
length for memcpy, where it would lead to memory accesses
out of bounds.

Found-by: Paul Cher <paulcher@icloud.com>
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoUse correct printf conversion specifiers for POSIX integer types
Diego Biurrun [Wed, 21 Dec 2016 10:25:34 +0000 (11:25 +0100)]
Use correct printf conversion specifiers for POSIX integer types

7 years agobuild: Generate pkg-config files from Make and not from configure
Diego Biurrun [Tue, 20 Dec 2016 13:27:19 +0000 (14:27 +0100)]
build: Generate pkg-config files from Make and not from configure

This moves work from the configure to the Make stage where it can
be parallelized and ensures that pkgconfig files are updated when
library versions change.

Bug-Id: 449

7 years agobuild: Store library version numbers in .version files
Diego Biurrun [Sat, 17 Dec 2016 19:01:07 +0000 (20:01 +0100)]
build: Store library version numbers in .version files

This moves work from the configure to the Make stage where it can
be parallelized and ensures that shared libraries are built with
the right version number in the filename.

7 years agobuild: Move build-system-related helper files to a separate subdirectory
Diego Biurrun [Tue, 26 Mar 2013 00:11:11 +0000 (01:11 +0100)]
build: Move build-system-related helper files to a separate subdirectory

This unclutters the top-level directory and groups related files together.

7 years agoratecontrol: Drop xvid-rc-related struct members unused after a6901b9c6
Diego Biurrun [Mon, 19 Dec 2016 11:20:14 +0000 (12:20 +0100)]
ratecontrol: Drop xvid-rc-related struct members unused after a6901b9c6

7 years agonvenc: Update check for lookahead
Ruta Gadkari [Mon, 19 Dec 2016 11:14:04 +0000 (16:44 +0530)]
nvenc: Update check for lookahead

By default it is -1.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
7 years agoaarch64: vp9itxfm: Use the offset parameter to movrel
Martin Storsjö [Mon, 19 Dec 2016 08:38:33 +0000 (10:38 +0200)]
aarch64: vp9itxfm: Use the offset parameter to movrel

This fixes build failures for iOS, broken since cad42fadcd2c.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agotta: Convert to the new bitstream reader
Alexandra Hájková [Thu, 14 Apr 2016 08:54:11 +0000 (10:54 +0200)]
tta: Convert to the new bitstream reader