5 years agovc1dec: Properly call deinit function on error
Vittorio Giovara [Wed, 24 Feb 2016 19:40:17 +0000 (14:40 -0500)]
vc1dec: Properly call deinit function on error

5 years agovc1dec: Drop commented out cruft
Vittorio Giovara [Wed, 24 Feb 2016 19:40:16 +0000 (14:40 -0500)]
vc1dec: Drop commented out cruft

5 years agoimg2: Drop av_ prefix for a static function
Vittorio Giovara [Wed, 24 Feb 2016 00:44:18 +0000 (19:44 -0500)]
img2: Drop av_ prefix for a static function

This prefix is reserved for public functions only.

Signed-off-by: Vittorio Giovara <>
5 years agoidct: Only build prores IDCT if ProRes decoder is enabled
Diego Biurrun [Tue, 23 Feb 2016 08:51:07 +0000 (09:51 +0100)]
idct: Only build prores IDCT if ProRes decoder is enabled

5 years agoqsvdec: store the sync point in heap memory
Anton Khirnov [Mon, 22 Feb 2016 09:48:34 +0000 (10:48 +0100)]
qsvdec: store the sync point in heap memory

The reasoning is the same as for the corresponding qsvenc patch.

5 years agoqsvenc: store the sync point in heap memory
Maxym Dmytrychenko [Mon, 22 Feb 2016 09:39:02 +0000 (10:39 +0100)]
qsvenc: store the sync point in heap memory

The QSV runtime expects the sync point address passed to
MFXVideoENCODE_EncodeFrameAsync() to be valid until

Signed-off-by: Anton Khirnov <>
5 years agovsrc_movie: convert to codecpar
Anton Khirnov [Wed, 10 Feb 2016 13:17:21 +0000 (14:17 +0100)]
vsrc_movie: convert to codecpar

5 years agoexamples/transcode_aac: convert to codecpar
Anton Khirnov [Wed, 10 Feb 2016 13:17:21 +0000 (14:17 +0100)]
examples/transcode_aac: convert to codecpar

5 years agoexamples/qsvdec: convert to codecpar
Anton Khirnov [Wed, 10 Feb 2016 13:17:21 +0000 (14:17 +0100)]
examples/qsvdec: convert to codecpar

5 years agoexamples/output: convert to codecpar
Anton Khirnov [Wed, 10 Feb 2016 13:13:39 +0000 (14:13 +0100)]
examples/output: convert to codecpar

5 years agoavplay: convert do codecpar
Anton Khirnov [Tue, 9 Feb 2016 13:23:30 +0000 (14:23 +0100)]
avplay: convert do codecpar

5 years agoavplay: do not use AVStream.codec for decoding
Anton Khirnov [Tue, 9 Feb 2016 11:36:13 +0000 (12:36 +0100)]
avplay: do not use AVStream.codec for decoding

AVStream.codec is now deprecated. Allocate a separate codec context

5 years agoavconv: convert to codecpar
Anton Khirnov [Wed, 6 Jan 2016 08:18:21 +0000 (09:18 +0100)]
avconv: convert to codecpar

The switch is not yet complete because the parsers and the bistream
filters do not have a new AVCodecParam-based API yet.

5 years agoavconv: switch opening decoders and encoders
Anton Khirnov [Mon, 18 Jan 2016 19:00:23 +0000 (20:00 +0100)]
avconv: switch opening decoders and encoders

Open decoders first, next encoders. This makes sure that that
subtitle_header is always set properly, without relying on
avformat_find_stream_info() setting it.

5 years agolavf: replace AVStream.codec with AVStream.codecpar
Anton Khirnov [Wed, 18 Jun 2014 18:42:52 +0000 (20:42 +0200)]
lavf: replace AVStream.codec with AVStream.codecpar

Currently, AVStream contains an embedded AVCodecContext instance, which
is used by demuxers to export stream parameters to the caller and by
muxers to receive stream parameters from the caller. It is also used
internally as the codec context that is passed to parsers.

In addition, it is also widely used by the callers as the decoding (when
demuxer) or encoding (when muxing) context, though this has been
officially discouraged since Libav 11.

There are multiple important problems with this approach:
    - the fields in AVCodecContext are in general one of
        * stream parameters
        * codec options
        * codec state
      However, it's not clear which ones are which. It is consequently
      unclear which fields are a demuxer allowed to set or a muxer allowed to
      read. This leads to erratic behaviour depending on whether decoding or
      encoding is being performed or not (and whether it uses the AVStream
      embedded codec context).
    - various synchronization issues arising from the fact that the same
      context is used by several different APIs (muxers/demuxers,
      parsers, bitstream filters and encoders/decoders) simultaneously, with
      there being no clear rules for who can modify what and the different
      processes being typically delayed with respect to each other.
    - avformat_find_stream_info() making it necessary to support opening
      and closing a single codec context multiple times, thus
      complicating the semantics of freeing various allocated objects in the
      codec context.

Those problems are resolved by replacing the AVStream embedded codec
context with a newly added AVCodecParameters instance, which stores only
the stream parameters exported by the demuxers or read by the muxers.

5 years agolavc: add a variant of av_get_audio_frame_duration working with AVCodecParameters
Anton Khirnov [Sun, 1 Jun 2014 07:38:22 +0000 (09:38 +0200)]
lavc: add a variant of av_get_audio_frame_duration working with AVCodecParameters

5 years agolavc: add codec parameters API
Anton Khirnov [Wed, 18 Jun 2014 18:42:13 +0000 (20:42 +0200)]
lavc: add codec parameters API

This API is intended to allow passing around codec parameters without
using full AVCodecContext (which also contains codec options and
encoder/decoder state).

5 years agox86: hevc: Fix linking with both yasm and optimizations disabled
Diego Biurrun [Sun, 21 Feb 2016 13:04:40 +0000 (14:04 +0100)]
x86: hevc: Fix linking with both yasm and optimizations disabled

Some optimized functions reference optimized symbols, so the functions
must be explicitly disabled when those symbols are unavailable.

5 years agofate: Ignore errors from concatenating report files
Diego Biurrun [Sun, 21 Feb 2016 11:12:26 +0000 (12:12 +0100)]
fate: Ignore errors from concatenating report files

Some files may be missing for valid reasons, e.g. on compile failure.

5 years agofate: Be silent when fetching Git updates
Diego Biurrun [Sat, 20 Feb 2016 17:34:20 +0000 (18:34 +0100)]
fate: Be silent when fetching Git updates

5 years agompeg12enc: always write closed gops for intra only outputs
Marton Balint [Mon, 8 Dec 2014 14:27:03 +0000 (14:27 +0000)]
mpeg12enc: always write closed gops for intra only outputs

Reviewed-by: Michael Niedermayer <>
Signed-off-by: Marton Balint <>
5 years agoh264: Add an AVClass pointer to H264Context
Michael Niedermayer [Tue, 9 Feb 2016 22:25:49 +0000 (17:25 -0500)]
h264: Add an AVClass pointer to H264Context

Sample-Id: asan_heap-uaf_3660f67_757_cov_1257014655_Hi422FR1_SONY_A.jsv
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <>
Signed-off-by: Vittorio Giovara <>
5 years agolibx264: Fix noise_reduction option assignment
Vittorio Giovara [Tue, 16 Feb 2016 17:12:23 +0000 (12:12 -0500)]
libx264: Fix noise_reduction option assignment

First check the context, then check internal option. Drop the ! typo.
Introduced in 60f0fde3092d18d4d36555962c192af8691a099c.

5 years agolavf: add a protocol whitelist/blacklist for file opened internally
Anton Khirnov [Wed, 20 Jan 2016 10:11:38 +0000 (11:11 +0100)]
lavf: add a protocol whitelist/blacklist for file opened internally

Should make the default behaviour safer for careless callers that open
random untrusted files.

Bug-Id: CVE-2016-1897
Bug-Id: CVE-2016-1898

5 years agourlprotocol: receive a list of protocols from the caller
Anton Khirnov [Fri, 19 Feb 2016 17:02:45 +0000 (18:02 +0100)]
urlprotocol: receive a list of protocols from the caller

This way, the decisions about which protocols are available for use in
any given situations can be delegated to the caller.

5 years agoaviobuf: add a private data struct for avio_open()ed contexts
Anton Khirnov [Fri, 19 Feb 2016 13:29:10 +0000 (14:29 +0100)]
aviobuf: add a private data struct for avio_open()ed contexts

It will be useful in the following commits.

5 years agoprotocols: make the list of protocols static
Anton Khirnov [Fri, 19 Feb 2016 10:17:22 +0000 (11:17 +0100)]
protocols: make the list of protocols static

Disallow other code to touch it directly, now it's only accessible
through a blacklisting/whitelisting function.

5 years agolavf: move urlcontext_child_class_next() to protocols.c
Anton Khirnov [Fri, 19 Feb 2016 09:59:46 +0000 (10:59 +0100)]
lavf: move urlcontext_child_class_next() to protocols.c

It needs to access the list of protocols directly, so it more properly
belongs there.

5 years agolavf: move avio_enum_protocols() to protocols.c
Anton Khirnov [Fri, 19 Feb 2016 09:49:10 +0000 (10:49 +0100)]
lavf: move avio_enum_protocols() to protocols.c

It's a more appropriate place for it.

5 years agolavf: reorganize URLProtocols
Anton Khirnov [Fri, 19 Feb 2016 09:39:29 +0000 (10:39 +0100)]
lavf: reorganize URLProtocols

Instead of a linked list constructed at av_register_all(), store them
in a constant array of pointers.

Since no registration is necessary now, this removes some global state
from lavf. This will also allow the urlprotocol layer caller to limit
the available protocols in a simple and flexible way in the following

5 years agohls: disallow opening nested files in child demuxers
Anton Khirnov [Mon, 15 Feb 2016 13:47:33 +0000 (14:47 +0100)]
hls: disallow opening nested files in child demuxers

5 years agosmoothstreamingenc: do not open the files as read+write
Anton Khirnov [Mon, 15 Feb 2016 12:56:15 +0000 (13:56 +0100)]
smoothstreamingenc: do not open the files as read+write

They are only written to, never read.

5 years agodashenc: eliminate ffurl_* usage
Anton Khirnov [Mon, 15 Feb 2016 12:46:38 +0000 (13:46 +0100)]
dashenc: eliminate ffurl_* usage

Now all IO should go through the IO callbacks and be interceptable by
the caller.

5 years agolavf: use the io_open callbacks for files opened from open_input() as well
Anton Khirnov [Fri, 19 Feb 2016 18:36:24 +0000 (19:36 +0100)]
lavf: use the io_open callbacks for files opened from open_input() as well

There is no real reason to treat them differently.

5 years agoavprobe: do not call avio_close() on a custom context
Anton Khirnov [Fri, 19 Feb 2016 13:18:15 +0000 (14:18 +0100)]
avprobe: do not call avio_close() on a custom context

avio_close() can only be called on AVIOContexts created by avio_open(2).

5 years agonutenc: do not use AVCodecContext.frame_size
Anton Khirnov [Sun, 21 Feb 2016 09:55:18 +0000 (10:55 +0100)]
nutenc: do not use AVCodecContext.frame_size

It will in general not be available. Use block_align if known or fall
back to av_get_audio_frame_duration().

5 years agomatroska: Always consider S_TEXT/UTF8 as SRT when demuxing
Luca Barbato [Fri, 19 Feb 2016 12:49:43 +0000 (13:49 +0100)]
matroska: Always consider S_TEXT/UTF8 as SRT when demuxing

Reported-By: Maxim Koitsov <>
5 years agofate: Be silent when switching to Git branch
Diego Biurrun [Fri, 19 Feb 2016 21:05:07 +0000 (22:05 +0100)]
fate: Be silent when switching to Git branch

5 years agortpdec: Use the right logging context
Diego Biurrun [Thu, 18 Feb 2016 10:08:11 +0000 (11:08 +0100)]
rtpdec: Use the right logging context

5 years agobuild: Disentangle VC-1 decoder and parser
Diego Biurrun [Wed, 10 Feb 2016 14:41:50 +0000 (15:41 +0100)]
build: Disentangle VC-1 decoder and parser

5 years agobuild: Add vc1dsp component for more fine-grained dependencies
Diego Biurrun [Wed, 10 Feb 2016 12:10:50 +0000 (13:10 +0100)]
build: Add vc1dsp component for more fine-grained dependencies

5 years agomsmpeg4data: Move WMV2 data tables to their own file
Diego Biurrun [Wed, 10 Feb 2016 13:55:52 +0000 (14:55 +0100)]
msmpeg4data: Move WMV2 data tables to their own file

5 years agomsmpeg4data: K&R formatting cosmetics
Diego Biurrun [Wed, 10 Feb 2016 13:51:37 +0000 (14:51 +0100)]
msmpeg4data: K&R formatting cosmetics

5 years agobuild: Add missing mpegvideo dependency for the MSS2 and VC-1 decoders
Diego Biurrun [Wed, 10 Feb 2016 14:41:03 +0000 (15:41 +0100)]
build: Add missing mpegvideo dependency for the MSS2 and VC-1 decoders

5 years agobuild: More precise dependencies for h264dsp
Diego Biurrun [Wed, 10 Feb 2016 12:08:13 +0000 (13:08 +0100)]
build: More precise dependencies for h264dsp

5 years agomkv: Force the full parsing of mp3
Luca Barbato [Sat, 6 Feb 2016 12:15:37 +0000 (13:15 +0100)]
mkv: Force the full parsing of mp3

Some muxer might or might not fit incomplete mp3 frames in
their packets.

Signed-off-by: Luca Barbato <>
5 years agomov: Force the full parsing of mp3
Luca Barbato [Sat, 6 Feb 2016 12:15:36 +0000 (13:15 +0100)]
mov: Force the full parsing of mp3

Some muxer might or might not fit incomplete mp3 frames in
their packets.

Bug-Id: 899

Signed-off-by: Luca Barbato <>
5 years agoRevert all recent configure changes related to dependency resolution
Diego Biurrun [Fri, 19 Feb 2016 10:55:51 +0000 (11:55 +0100)]
Revert all recent configure changes related to dependency resolution

This reverts commits 2edc718723b6a2bb771a3cde21c750f240b98e7bea6dc6ac.

5 years agobuild: Fix typo in HEVC VDPAU hwaccel dependencies
Diego Biurrun [Tue, 16 Feb 2016 20:06:05 +0000 (21:06 +0100)]
build: Fix typo in HEVC VDPAU hwaccel dependencies

5 years agovoc: Split ff_voc_get_packet into a separate file
Diego Biurrun [Tue, 16 Feb 2016 17:35:25 +0000 (18:35 +0100)]
voc: Split ff_voc_get_packet into a separate file

5 years agobuild: Introduce iso_media component
Diego Biurrun [Tue, 16 Feb 2016 18:59:06 +0000 (19:59 +0100)]
build: Introduce iso_media component

5 years agobuild: Let the WTV demuxer select the MPEG-TS demuxer
Diego Biurrun [Tue, 16 Feb 2016 18:51:26 +0000 (19:51 +0100)]
build: Let the WTV demuxer select the MPEG-TS demuxer

The WTV demuxer depends on large parts of the MPEG-TS demuxer internals
anyway and fails to build without it.

5 years agobuild: Adjust mpeg4video parser dependencies
Diego Biurrun [Tue, 16 Feb 2016 19:35:10 +0000 (20:35 +0100)]
build: Adjust mpeg4video parser dependencies

5 years agobuild: Fix mpegvideo component dependencies
Diego Biurrun [Tue, 16 Feb 2016 19:34:47 +0000 (20:34 +0100)]
build: Fix mpegvideo component dependencies

5 years agobuild: Fix dependencies for components relying on H.263 data tables
Diego Biurrun [Tue, 16 Feb 2016 19:01:30 +0000 (20:01 +0100)]
build: Fix dependencies for components relying on H.263 data tables

5 years agobuild: Add missing dependencies for eatqi decoder
Diego Biurrun [Tue, 16 Feb 2016 17:27:34 +0000 (18:27 +0100)]
build: Add missing dependencies for eatqi decoder

5 years agobuild: Add missing celp_math dependency for G723_1 encoder and decoder
Vittorio Giovara [Fri, 12 Feb 2016 19:05:04 +0000 (14:05 -0500)]
build: Add missing celp_math dependency for G723_1 encoder and decoder

Signed-off-by: Diego Biurrun <>
5 years agocheckasm: Use standard multiple inclusion guards
Diego Biurrun [Tue, 16 Feb 2016 17:12:28 +0000 (18:12 +0100)]
checkasm: Use standard multiple inclusion guards

5 years agoprofiles: Add missing #endif comment
Diego Biurrun [Tue, 16 Feb 2016 17:04:16 +0000 (18:04 +0100)]
profiles: Add missing #endif comment

5 years agocosmetics: Drop particularly redundant silly comments
Diego Biurrun [Tue, 16 Feb 2016 17:02:14 +0000 (18:02 +0100)]
cosmetics: Drop particularly redundant silly comments

5 years agocosmetics: Drop empty comment lines
Diego Biurrun [Tue, 16 Feb 2016 17:01:29 +0000 (18:01 +0100)]
cosmetics: Drop empty comment lines

5 years agohwcontext_cuda/vdpau: add to skipheaders
Anton Khirnov [Mon, 15 Feb 2016 18:52:33 +0000 (19:52 +0100)]
hwcontext_cuda/vdpau: add to skipheaders

5 years agoqsv: add a missing #include
Anton Khirnov [Mon, 15 Feb 2016 17:49:29 +0000 (18:49 +0100)]
qsv: add a missing #include

Needed for enum AVCodecID

5 years agomov: Fix the format specifier type for size
Vittorio Giovara [Tue, 16 Feb 2016 02:46:16 +0000 (21:46 -0500)]
mov: Fix the format specifier type for size

Signed-off-by: Luca Barbato <>
5 years agoconfigure: Relax the implication of --enable for components
Luca Barbato [Mon, 15 Feb 2016 00:49:18 +0000 (01:49 +0100)]
configure: Relax the implication of --enable for components

Do not error out if some subcomponents cannot be enabled.

Reported-By: RT|AO
5 years agofft: ppc: Place ff_fft_calc_interleave_altivec() under correct ifdefs
Diego Biurrun [Sat, 30 Jan 2016 13:39:00 +0000 (14:39 +0100)]
fft: ppc: Place ff_fft_calc_interleave_altivec() under correct ifdefs

Also fix #endif comments in the FFT init code.

5 years agoavconv: pass the hw context from filters to the encoder
Anton Khirnov [Tue, 2 Feb 2016 09:38:58 +0000 (10:38 +0100)]
avconv: pass the hw context from filters to the encoder

5 years agonvenc: support CUDA frames as input
Anton Khirnov [Mon, 1 Feb 2016 14:56:31 +0000 (15:56 +0100)]
nvenc: support CUDA frames as input

5 years agolavc: add a field for passing AVHWFramesContext to encoders
Anton Khirnov [Mon, 1 Feb 2016 14:39:50 +0000 (15:39 +0100)]
lavc: add a field for passing AVHWFramesContext to encoders

5 years agolavfi: add a filter for uploading normal frames to CUDA
Anton Khirnov [Fri, 15 Jan 2016 11:42:42 +0000 (12:42 +0100)]
lavfi: add a filter for uploading normal frames to CUDA

5 years agoavconv: use the new buffersrc parameters API
Anton Khirnov [Fri, 12 Feb 2016 08:22:15 +0000 (09:22 +0100)]
avconv: use the new buffersrc parameters API

The timebase change in the zmbv-8bit test is due to the fact that
previously the timebase string was evaluated as floating point, then
converted to a rational. After this commit, the timebase is passed
directly as is.

5 years agolavfi: pass the hw frames context through the filter chain
Anton Khirnov [Tue, 2 Feb 2016 08:47:16 +0000 (09:47 +0100)]
lavfi: pass the hw frames context through the filter chain

5 years agohwcontext: add a CUDA implementation
Anton Khirnov [Wed, 13 Jan 2016 13:25:58 +0000 (14:25 +0100)]
hwcontext: add a CUDA implementation

5 years agopixfmt: add a CUDA hwaccelled format
Anton Khirnov [Wed, 13 Jan 2016 13:17:54 +0000 (14:17 +0100)]
pixfmt: add a CUDA hwaccelled format

5 years agoAllow linking to CUDA dynamically instead of dlopen()ing it at runtime
Anton Khirnov [Wed, 13 Jan 2016 13:07:37 +0000 (14:07 +0100)]
Allow linking to CUDA dynamically instead of dlopen()ing it at runtime

5 years agoavconv_vdpau: use the hwcontext API to simplify code
Anton Khirnov [Tue, 2 Feb 2016 10:21:36 +0000 (11:21 +0100)]
avconv_vdpau: use the hwcontext API to simplify code

5 years agohwcontext: add a VDPAU implementation
Anton Khirnov [Mon, 7 Dec 2015 14:04:57 +0000 (15:04 +0100)]
hwcontext: add a VDPAU implementation

5 years agolavu: add a framework for handling hwaccel frames
Anton Khirnov [Fri, 20 Nov 2015 18:47:29 +0000 (19:47 +0100)]
lavu: add a framework for handling hwaccel frames

5 years agobuffer: add support for pools using caller data in allocation
Anton Khirnov [Sat, 9 Jan 2016 08:25:32 +0000 (09:25 +0100)]
buffer: add support for pools using caller data in allocation

This should allow using more complex allocators than simple malloc

5 years agobuffersrc: default SAR to 0 (unknown) rather than 1
Anton Khirnov [Fri, 12 Feb 2016 08:21:00 +0000 (09:21 +0100)]
buffersrc: default SAR to 0 (unknown) rather than 1

It makes more sense to not claim anything about the SAR if we don't know
anything. No changes in the FATE tests, since this is what avconv ends
up doing anyway.

5 years agoconfigure: Restore the --enable-everything behaviour
Luca Barbato [Sat, 23 Jan 2016 18:35:22 +0000 (19:35 +0100)]
configure: Restore the --enable-everything behaviour

Make sure that the minimum set of dependencies needed by the tools
and the examples are enabled.

Signed-off-by: Luca Barbato <>
5 years agoconfigure: Print which libraries will be built
Luca Barbato [Sat, 23 Jan 2016 18:35:21 +0000 (19:35 +0100)]
configure: Print which libraries will be built

Signed-off-by: Luca Barbato <>
5 years agoconfigure: Use `require` for the non-component options
Luca Barbato [Sat, 23 Jan 2016 18:35:20 +0000 (19:35 +0100)]
configure: Use `require` for the non-component options

And make sure to enable all the components needed

Signed-off-by: Luca Barbato <>
5 years agomov: Use the correct type for size
Luca Barbato [Tue, 9 Feb 2016 22:07:18 +0000 (23:07 +0100)]
mov: Use the correct type for size

An AVIO offset is int64_t.

Bug-Id: 921

5 years agovdpau: Support for VDPAU accelerated HEVC decoding
Philip Langdale [Fri, 12 Feb 2016 18:38:42 +0000 (20:38 +0200)]
vdpau: Support for VDPAU accelerated HEVC decoding

Signed-off-by: Rémi Denis-Courmont <>
Signed-off-by: Luca Barbato <>
5 years agohevc: Track long and short term RPS size for VDPAU
Philip Langdale [Fri, 12 Feb 2016 18:38:41 +0000 (20:38 +0200)]
hevc: Track long and short term RPS size for VDPAU

Today, we track the short term RPS size for DXVA, but only if the
SliceHeader RPS is being used. Otherwise it's left uninitialized.

NVIDIA's VDPAU implementation requires that the size be accurately
tracked even if an SPS RPS is being used. In this case, it's really
counting the size of the RPS idx information, but you end up with
mangled output if the value is not accurate.

VDPAU also needs the size of the long term RPS.

Signed-off-by: Philip Langdale <>
Signed-off-by: Rémi Denis-Courmont <>
Signed-off-by: Luca Barbato <>
5 years agodxva2_hevc: properly signal the num_delta_pocs from the SPS RPS
Hendrik Leppkes [Fri, 12 Feb 2016 18:38:40 +0000 (20:38 +0200)]
dxva2_hevc: properly signal the num_delta_pocs from the SPS RPS

ucNumDeltaPocsOfRefRpsIdx needs to contain the flat value from the SPS RPS,
and not the final computed value from the slice header RPS, as this calculation
is done internally by the driver again.

Signed-off-by: Rémi Denis-Courmont <>
5 years agolavf: Dump the cpb side data information
Luca Barbato [Sat, 2 Jan 2016 14:34:04 +0000 (15:34 +0100)]
lavf: Dump the cpb side data information

5 years agonvenc: rename a misnamed function
Anton Khirnov [Sat, 30 Jan 2016 21:13:04 +0000 (22:13 +0100)]
nvenc: rename a misnamed function

This function copies the encoded bistream into the caller's packet,
calling it 'get_frame' is misleading.

5 years agonvenc: merge input and output surface structs
Anton Khirnov [Sat, 30 Jan 2016 21:06:47 +0000 (22:06 +0100)]
nvenc: merge input and output surface structs

An input frame always corresponds to exactly one output packet, so there
is no point in complicating the situation by managing them separately.

5 years agonvenc: factor out the pixel format list
Anton Khirnov [Sat, 30 Jan 2016 20:33:48 +0000 (21:33 +0100)]
nvenc: factor out the pixel format list

5 years agobuffersrc: do not discard the error from ff_filter_frame()
Anton Khirnov [Tue, 9 Feb 2016 21:01:26 +0000 (22:01 +0100)]
buffersrc: do not discard the error from ff_filter_frame()

5 years agoeatqi: Remove MpegEncContext dependency
Vittorio Giovara [Mon, 25 Jan 2016 17:56:12 +0000 (12:56 -0500)]
eatqi: Remove MpegEncContext dependency

Signed-off-by: Vittorio Giovara <>
Signed-off-by: Diego Biurrun <>
5 years agompeg1: Make intra-block decoding independent of MpegEncContext
Vittorio Giovara [Mon, 25 Jan 2016 17:56:11 +0000 (12:56 -0500)]
mpeg1: Make intra-block decoding independent of MpegEncContext

This allows untangling the eatqi decoder from the MPEG-1 decoder.

Signed-off-by: Vittorio Giovara <>
Signed-off-by: Diego Biurrun <>
5 years agompeg12dec: Refactor mpeg1_decode_block_intra()
Diego Biurrun [Sat, 6 Feb 2016 17:02:47 +0000 (18:02 +0100)]
mpeg12dec: Refactor mpeg1_decode_block_intra()

Reduce variable scope, improve variable name, drop pointless ff_dlog(),
merge variable declaration and initialization, whitespace cosmetics.

5 years agompeg12dec: Always close reader on error
Vittorio Giovara [Mon, 25 Jan 2016 20:11:43 +0000 (15:11 -0500)]
mpeg12dec: Always close reader on error

A reader left open may lead to hangs.

Signed-off-by: Vittorio Giovara <>
Signed-off-by: Diego Biurrun <>
5 years agotiny_psnr: Support large files
Thomas Lee [Fri, 29 Jan 2016 10:11:06 +0000 (18:11 +0800)]
tiny_psnr: Support large files

If an input file is bigger than 2GB (assume sizeof(int) == 4)),
size0/size1 will overflow, making stddev and PSNR invalid.

Signed-off-by: Luca Barbato <>
5 years agodnxhd: Make the encoder message friendlier
Luca Barbato [Mon, 8 Feb 2016 09:17:00 +0000 (10:17 +0100)]
dnxhd: Make the encoder message friendlier

5 years agoconfigure: Refactor toolchain flag setting
Diego Biurrun [Sat, 6 Feb 2016 16:31:14 +0000 (17:31 +0100)]
configure: Refactor toolchain flag setting

Signed-off-by: Luca Barbato <>
5 years agoavplay: drop support for building without lavfi
Anton Khirnov [Sun, 31 Jan 2016 13:11:50 +0000 (14:11 +0100)]
avplay: drop support for building without lavfi

lavfi has been considered to be stable for a while now, so it is enabled
in most configurations. Supporting avplay without lavfi requires a lot
of nontrivial ifdef mess for no good reason.