ffmpeg.git
7 years agoid3v2: pad the APIC packets as required by lavc.
Anton Khirnov [Thu, 28 Mar 2013 08:49:38 +0000 (09:49 +0100)]
id3v2: pad the APIC packets as required by lavc.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
7 years agodfa: check for invalid access in decode_wdlt().
Anton Khirnov [Wed, 27 Mar 2013 17:18:38 +0000 (18:18 +0100)]
dfa: check for invalid access in decode_wdlt().

This can happen when the number of skipped lines is not consistent with
the number of coded lines.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
7 years agolavf: make sure stream probe data gets freed.
Anton Khirnov [Wed, 27 Mar 2013 16:56:59 +0000 (17:56 +0100)]
lavf: make sure stream probe data gets freed.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
7 years agoavfiltergraph: set deprecated filter_count.
Anton Khirnov [Sat, 30 Mar 2013 21:15:48 +0000 (22:15 +0100)]
avfiltergraph: set deprecated filter_count.

7 years agoopt: check the return values of av_get_token for ENOMEM.
Anton Khirnov [Mon, 25 Feb 2013 11:32:49 +0000 (12:32 +0100)]
opt: check the return values of av_get_token for ENOMEM.

7 years agodoc: Fix best_nb_channells typo
Peter Meerwald [Wed, 3 Apr 2013 12:33:58 +0000 (14:33 +0200)]
doc: Fix best_nb_channells typo

Signed-off-by: Peter Meerwald <p.meerwald@bct-electronic.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agomatroska: pass the lace size to the matroska_parse_rm_audio
Luca Barbato [Fri, 29 Mar 2013 11:51:51 +0000 (12:51 +0100)]
matroska: pass the lace size to the matroska_parse_rm_audio

Each lace must be independent according to the specification.

Fix heap-buffer-overflow in matroska_parse_block for
corrupted real media in mkv files.

Stricter check than fc43c19a567aa945398dccb491d972c11ec2a065

CC: libav-stable@libav.org
7 years agomatroska: fix a corner case in ebml-lace parsing
Luca Barbato [Thu, 28 Mar 2013 10:52:52 +0000 (11:52 +0100)]
matroska: fix a corner case in ebml-lace parsing

Make sure we notice when the lace_size[n] is a negative value.

CC: libav-stable@libav.org
7 years agomatroska: Update the available size after lace parsing
Dale Curtis [Wed, 27 Mar 2013 21:02:03 +0000 (14:02 -0700)]
matroska: Update the available size after lace parsing

Fix heap-buffer-overflow in matroska_parse_block for
corrupted real media in mkv files.

CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
7 years agoclang: use -fsantize=address and -fsanitize=thread
Luca Barbato [Thu, 28 Mar 2013 02:30:53 +0000 (03:30 +0100)]
clang: use -fsantize=address and -fsanitize=thread

The previous syntax is deprecated.

7 years agoavfiltergraph: check for sws opts being non-NULL before using them.
Anton Khirnov [Sun, 17 Mar 2013 15:14:58 +0000 (16:14 +0100)]
avfiltergraph: check for sws opts being non-NULL before using them.

Avoid snprintfing a NULL pointer.

CC: libav-stable@libav.org
7 years agoconfigure: Check for the atomic.h functions used in the suncc atomics header
Martin Storsjö [Thu, 28 Mar 2013 09:48:39 +0000 (10:48 +0100)]
configure: Check for the atomic.h functions used in the suncc atomics header

The "suncc" atomics implementation uses a suncc specific memory
barrier, but also relies on a few atomic functions from atomic.h,
that are not suncc specific but specific to solaris. This made
the current implementation fail on suncc on linux.

7 years agoconfigure: prettify atomics handling.
Anton Khirnov [Wed, 27 Mar 2013 18:26:19 +0000 (19:26 +0100)]
configure: prettify atomics handling.

Add simpler names and a shorthand for native atomics (as opposed to
pthreads fallback).

7 years agooma: Validate sample rates
Luca Barbato [Sat, 30 Mar 2013 08:46:06 +0000 (09:46 +0100)]
oma: Validate sample rates

The sample rate index is 3 bits even if currently index 5, 6 and 7 are
not supported.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
7 years agodoc/platform: Remove part about dllimport
Derek Buitenhuis [Sat, 30 Mar 2013 17:52:02 +0000 (13:52 -0400)]
doc/platform: Remove part about dllimport

Only deprecated things need this at all anymore, as we have functions
to access them or they are no longer needed.

The document should not encourage use of deprecated APIs.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agovp8: Fix pthread_cond and pthread_mutex leaks
Matt Wolenetz [Thu, 28 Mar 2013 00:29:57 +0000 (17:29 -0700)]
vp8: Fix pthread_cond and pthread_mutex leaks

CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
7 years agofate: add an option to generate the references
Luca Barbato [Mon, 18 Mar 2013 22:45:58 +0000 (23:45 +0100)]
fate: add an option to generate the references

Useful to add or update fate tests.

7 years agoflvdec: read audio sample size and channels metadata
Justin Ruggles [Thu, 21 Mar 2013 12:23:51 +0000 (08:23 -0400)]
flvdec: read audio sample size and channels metadata

This is needed in order for the FLV demuxer not to detect a codec change when
using the "flv_metadata" option.

7 years agoflvdec: use the correct audio codec id when parsing metadata
Justin Ruggles [Thu, 21 Mar 2013 12:03:58 +0000 (08:03 -0400)]
flvdec: use the correct audio codec id when parsing metadata

7 years agovmdav: convert to bytestream2
Alexandra Khirnova [Wed, 13 Mar 2013 12:54:27 +0000 (13:54 +0100)]
vmdav: convert to bytestream2

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agoFATE: add a test for the join filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the join filter

7 years agoFATE: add a test for the volume filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the volume filter

7 years agoFATE: add a test for the channelsplit filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the channelsplit filter

7 years agoFATE: add a test for the channelmap filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the channelmap filter

7 years agoFATE: add a test for the negate filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the negate filter

7 years agoFATE: add a test for the overlay filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the overlay filter

7 years agoFATE: add a test for the setpts filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the setpts filter

7 years agoFATE: add a test for the hqdn3d filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the hqdn3d filter

7 years agoFATE: add a test for the transpose filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the transpose filter

7 years agoFATE: add a test for the unsharp filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the unsharp filter

7 years agoFATE: add a test for the fade filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the fade filter

7 years agoFATE: add a test for the drawbox filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the drawbox filter

7 years agoFATE: add a test for the boxblur filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the boxblur filter

7 years agoFATE: add a test for the gradfun filter
Anton Khirnov [Wed, 13 Mar 2013 10:03:08 +0000 (11:03 +0100)]
FATE: add a test for the gradfun filter

7 years agolavfi/gradfun: remove rounding to match C and SSE code.
Clément Bœsch [Thu, 6 Dec 2012 23:41:04 +0000 (00:41 +0100)]
lavfi/gradfun: remove rounding to match C and SSE code.

There is no noticable benefit for such precision.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agolavfi/gradfun: fix dithering in MMX code.
Clément Bœsch [Thu, 6 Dec 2012 23:39:31 +0000 (00:39 +0100)]
lavfi/gradfun: fix dithering in MMX code.

Current dithering only uses the first 4 instead of the whole 8 random values.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agolavfi/gradfun: fix rounding in MMX code.
Clément Bœsch [Thu, 6 Dec 2012 23:36:29 +0000 (00:36 +0100)]
lavfi/gradfun: fix rounding in MMX code.

Current code divides before increasing precision.

Also reduce upper bound for strength from 255 to 64.  This will prevent
an overflow in the SSSE3 and MMX filter_line code: delta is expressed as
an u16 being shifted by 2 to the left. If it overflows, having a
strength not above 64 will make sure that m is set to 0 (making the
m*m*delta >> 14 expression void).

A value above 64 should not make any sense unless gradfun is used as
a blur filter.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agolavfi/gradfun: do not increment DC pointer for odd values.
Clément Bœsch [Wed, 5 Dec 2012 03:58:03 +0000 (04:58 +0100)]
lavfi/gradfun: do not increment DC pointer for odd values.

First DC is only used once otherwise. This also makes the code
consistent with ASM versions.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agofate: filter: Add dependencies
Diego Biurrun [Sat, 1 Dec 2012 19:38:26 +0000 (20:38 +0100)]
fate: filter: Add dependencies

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agoavconv: add options for reading filtergraphs from a file.
Anton Khirnov [Wed, 13 Mar 2013 13:24:45 +0000 (14:24 +0100)]
avconv: add options for reading filtergraphs from a file.

7 years agoAVOptions: make av_set_options_string() forward options to child objects
Anton Khirnov [Tue, 12 Mar 2013 17:23:27 +0000 (18:23 +0100)]
AVOptions: make av_set_options_string() forward options to child objects

7 years agowin32: Use 64-bit fstat/lseek variants for MSVC as well
Hendrik Leppkes [Tue, 12 Mar 2013 15:45:13 +0000 (16:45 +0100)]
win32: Use 64-bit fstat/lseek variants for MSVC as well

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agowin32: Make ff_win32_open more robust
Reimar Döffinger [Sun, 10 Mar 2013 19:03:19 +0000 (20:03 +0100)]
win32: Make ff_win32_open more robust

- Make MultiByteToWideChar fail when it encounters invalid encoding.
  Without this, invalid characters might just be skipped
- When MultiByteToWideChar fails, assume the file name is in CP_ACP
  and open it via normal open function, even when the file will be
  written
- When malloc fails return error instead of crashing

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agowin32: Allow other programs to open the same files
Reimar Döffinger [Fri, 20 Jan 2012 19:27:22 +0000 (20:27 +0100)]
win32: Allow other programs to open the same files

In order to match Linux behaviour better our Windows-specific
open() replacement should disable Windows default file locking.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoconfigure: Add error_resilience as dependency to the eatqi decoder
Martin Storsjö [Tue, 26 Mar 2013 09:04:08 +0000 (11:04 +0200)]
configure: Add error_resilience as dependency to the eatqi decoder

This makes standalone compilation of the eatqi decoder
succeed. The dependency comes from the shared mpeg12dec.o file.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoape: use correct context for the bit table printed in debug
Kostya Shishkov [Wed, 27 Mar 2013 07:57:08 +0000 (08:57 +0100)]
ape: use correct context for the bit table printed in debug

7 years agobuild: Move setting of SRC_DIR to the only place it is used
Diego Biurrun [Fri, 1 Mar 2013 18:52:32 +0000 (19:52 +0100)]
build: Move setting of SRC_DIR to the only place it is used

7 years agobuild: Remove configure-generated .config file on distclean
Diego Biurrun [Mon, 25 Mar 2013 10:52:52 +0000 (11:52 +0100)]
build: Remove configure-generated .config file on distclean

7 years agomsmpeg4: Split decoding related functions to a separate file
Martin Storsjö [Tue, 26 Mar 2013 13:48:24 +0000 (15:48 +0200)]
msmpeg4: Split decoding related functions to a separate file

This fixes standalone compilation of the msmpeg4v2, msmpeg4v3
and wmv2 encoders, that previously failed to link due to the
decoder codepaths requiring error_resilience.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agompeg12: Move Mpeg1Context declaration to the only place it is used
Diego Biurrun [Tue, 26 Mar 2013 18:52:21 +0000 (19:52 +0100)]
mpeg12: Move Mpeg1Context declaration to the only place it is used

7 years agoSplit MPEG-1/2 decoder code off from MPEG-1/2 common code
Diego Biurrun [Tue, 26 Mar 2013 18:50:40 +0000 (19:50 +0100)]
Split MPEG-1/2 decoder code off from MPEG-1/2 common code

7 years agompeg12: Move some ff_mpeg1_* function declarations to a more suitable place
Diego Biurrun [Tue, 26 Mar 2013 17:25:01 +0000 (18:25 +0100)]
mpeg12: Move some ff_mpeg1_* function declarations to a more suitable place

7 years agocosmetics: Remove unnecessary extern keywords from function declarations
Diego Biurrun [Tue, 26 Mar 2013 17:41:24 +0000 (18:41 +0100)]
cosmetics: Remove unnecessary extern keywords from function declarations

7 years agodca: Move ff_dca_convert_bitstream() to the DCA common code
Diego Biurrun [Tue, 26 Mar 2013 17:17:57 +0000 (18:17 +0100)]
dca: Move ff_dca_convert_bitstream() to the DCA common code

This makes the DCA parser and decoder independent.

7 years agovdpau: wrap codec specific functions in appropiate #ifs
Janne Grunau [Tue, 26 Mar 2013 21:47:29 +0000 (22:47 +0100)]
vdpau: wrap codec specific functions in appropiate #ifs

Fixes linking when only a subset of the deprecated vdpau decoders is
enabled.

7 years agovdpau: fix obsolete mpeg1 vdpau decoder when mpeg2 is disabled
Janne Grunau [Tue, 26 Mar 2013 21:45:40 +0000 (22:45 +0100)]
vdpau: fix obsolete mpeg1 vdpau decoder when mpeg2 is disabled

7 years agoconfigure: fix dependencies of XvMC and old vdpau mpeg2 decoders
Janne Grunau [Tue, 26 Mar 2013 18:59:36 +0000 (19:59 +0100)]
configure: fix dependencies of XvMC and old vdpau mpeg2 decoders

7 years agohwaccel: fix use with frame based multithreading
Janne Grunau [Wed, 13 Mar 2013 22:36:51 +0000 (23:36 +0100)]
hwaccel: fix use with frame based multithreading

Allows use of AVHWAccel based decoders with frame based multithreading.
The decoders will be forced into an non-concurrent mode by delaying
ff_thread_finish_setup() calls after decoding of the current frame
is finished.

This wastes memory by unnecessarily using multiple threads and thus
copies of the decoder context but allows seamless switching between
hardware accelerated and frame threaded software decoding when the
hardware decoder does not support the stream.

7 years agoutils: add workaround for AVHWAccel in ff_get_buffer compat code
Janne Grunau [Mon, 25 Mar 2013 16:28:37 +0000 (17:28 +0100)]
utils: add workaround for AVHWAccel in ff_get_buffer compat code

Since c977039e585bfff28ecc037ef827c6c3d1ed88aa plane count for
PIX_FMT_HWACCEL pixel formats is 0 instead of 1. The created dummy
AVBuffers are still bogus since AVFrame does not hold frame data when
AVHWAccels are used.

7 years agoconfigure: Remove a stray msmpeg4v1 encoder declaration
Martin Storsjö [Tue, 26 Mar 2013 13:34:47 +0000 (15:34 +0200)]
configure: Remove a stray msmpeg4v1 encoder declaration

No such encoder exists currently.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoconfigure: Remove the mpegvideo dependency from svq1
Martin Storsjö [Tue, 26 Mar 2013 10:37:11 +0000 (12:37 +0200)]
configure: Remove the mpegvideo dependency from svq1

The svq1 decoder can be built standalone without mpegvideo.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agox86: vc1dsp: Fix indentation
Martin Storsjö [Tue, 26 Mar 2013 11:54:22 +0000 (13:54 +0200)]
x86: vc1dsp: Fix indentation

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoh264: Make it possible to compile without error_resilience
Ronald S. Bultje [Sun, 3 Mar 2013 00:57:26 +0000 (16:57 -0800)]
h264: Make it possible to compile without error_resilience

Error resilience is enabled by the h264 decoder, unless explicitly
disabled. --disable-everything --enable-decoder=h264 will produce
a h264 decoder with error resilience enabled, while
--disable-everything --enable-decoder=h264 --disable-error-resilience
will produce a h264 decoder with error resilience disabled.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agolavc: Rename avpriv_mpv_find_start_code after moving out from mpegvideo
Martin Storsjö [Mon, 25 Mar 2013 12:11:41 +0000 (14:11 +0200)]
lavc: Rename avpriv_mpv_find_start_code after moving out from mpegvideo

Also move the declaration to internal.h, and add restrict qualifiers
to the declaration (as in the implementation).

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agolavc: Move start code finding to utils.c
Martin Storsjö [Mon, 25 Mar 2013 10:42:57 +0000 (12:42 +0200)]
lavc: Move start code finding to utils.c

This allows dropping the mpegvideo dependency from a number of
components.

This also fixes standalone building of the h264 parser, which
was broken in 64e438697.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoape: 3.80-3.92 decoding support
Kostya Shishkov [Fri, 15 Mar 2013 20:18:23 +0000 (21:18 +0100)]
ape: 3.80-3.92 decoding support

7 years agoh264: Remove an unused variable
Martin Storsjö [Mon, 25 Mar 2013 12:27:30 +0000 (14:27 +0200)]
h264: Remove an unused variable

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agox86: consistently use unaligned movs in the unaligned bswap
Janne Grunau [Sun, 24 Mar 2013 18:44:23 +0000 (19:44 +0100)]
x86: consistently use unaligned movs in the unaligned bswap

Fixes fate errors in asv1, ffvhuff and huffyuv on x86_32.

7 years agosndio_dec: Add missing includes for av_gettime()
Martin Storsjö [Sun, 24 Mar 2013 10:11:58 +0000 (12:11 +0200)]
sndio_dec: Add missing includes for av_gettime()

This is necessary after the old av_gettime in libavformat was
dropped.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agox86: Change a missed occurrance of int to ptrdiff_t for strides
Martin Storsjö [Sat, 23 Mar 2013 21:35:19 +0000 (23:35 +0200)]
x86: Change a missed occurrance of int to ptrdiff_t for strides

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agox86: Remove win64 xmm clobbering wrappers for the now removed avcodec_encode_video...
Martin Storsjö [Sat, 23 Mar 2013 20:12:54 +0000 (22:12 +0200)]
x86: Remove win64 xmm clobbering wrappers for the now removed avcodec_encode_video function

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agobktr: Add missing includes for av_gettime()
Martin Storsjö [Sat, 23 Mar 2013 20:16:37 +0000 (22:16 +0200)]
bktr: Add missing includes for av_gettime()

This is necessary after the old av_gettime in libavformat was
dropped.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agofate: use little endian yuv444p10 in h264-reinit tests
Janne Grunau [Sat, 23 Mar 2013 12:12:36 +0000 (13:12 +0100)]
fate: use little endian yuv444p10 in h264-reinit tests

Fixes fate big endian configs.

7 years agofate: add test for cropping h264 to container dimensions
Janne Grunau [Wed, 20 Mar 2013 16:44:43 +0000 (17:44 +0100)]
fate: add test for cropping h264 to container dimensions

Tests the workaround added for 1080 videos created with Canon cameras
in 30f515091c323da59c0f1b533703dedca2f4b95d.

7 years agoFATE: add a tscc2 test.
Anton Khirnov [Mon, 18 Mar 2013 14:59:05 +0000 (15:59 +0100)]
FATE: add a tscc2 test.

7 years agotscc2: allocate AVFrame properly.
Anton Khirnov [Mon, 18 Mar 2013 14:53:51 +0000 (15:53 +0100)]
tscc2: allocate AVFrame properly.

7 years agoaf_asyncts: fix compensation and PTS monotonicity
Jindřich Makovička [Sat, 9 Mar 2013 09:08:09 +0000 (10:08 +0100)]
af_asyncts: fix compensation and PTS monotonicity

This patch improves af_asyncts behavior on streams with bogus PTS, which
are either non-monotonic, or contain PTS jitter, and trigger the
non-monotonicity error. With this patch, af_asyncts is able to correct
these streams and avoid the error.

Firstly, it fixes resample compensation calculation by supplying proper
units to avresample_set_compensation (sample count per second instead
of sample count per some arbitrary frame size). Also, the calculation of
the compensation itself is fixed - delta is proportional to an adjustment
of the compensation, not the compensation itself. Ideally, the compensation
should converge to a value that keeps delta at zero.

To be able to deal with sources with PTS jitter even without resampling,
small PTS errors are adjusted, so the output frames do not overlap.

Finally, one more monotonicity check is added.

The FATE reference changes because now there is 8 less samples of
silence because of the pts jitter.

Signed-off-by: Jindřich Makovička <makovick@gmail.com>
7 years agoavutil/frame: add all remaining frame properties to av_frame_copy_props
Hendrik Leppkes [Fri, 22 Mar 2013 14:13:42 +0000 (15:13 +0100)]
avutil/frame: add all remaining frame properties to av_frame_copy_props

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agoconfigure: Enable hwaccels without external dependencies by default.
Diego Biurrun [Mon, 18 Mar 2013 21:27:03 +0000 (22:27 +0100)]
configure: Enable hwaccels without external dependencies by default.

7 years agodoc/developer: Clarify symbol naming prefixes section.
Diego Biurrun [Sat, 16 Mar 2013 23:57:12 +0000 (00:57 +0100)]
doc/developer: Clarify symbol naming prefixes section.

7 years agoh264: remove redundant freeing of DPB in h264_decode_end
Anton Khirnov [Tue, 12 Mar 2013 11:33:19 +0000 (12:33 +0100)]
h264: remove redundant freeing of DPB in h264_decode_end

free_tables() frees it already.

7 years agoh264: add a parameter to the CHROMA444 macro.
Anton Khirnov [Sat, 9 Mar 2013 19:37:11 +0000 (20:37 +0100)]
h264: add a parameter to the CHROMA444 macro.

This way it does not look like a constant.

7 years agoh264: add a parameter to the CHROMA422 macro.
Anton Khirnov [Sat, 9 Mar 2013 19:37:11 +0000 (20:37 +0100)]
h264: add a parameter to the CHROMA422 macro.

This way it does not look like a constant.

7 years agoh264: add a parameter to the CABAC macro.
Anton Khirnov [Sat, 9 Mar 2013 19:37:11 +0000 (20:37 +0100)]
h264: add a parameter to the CABAC macro.

This way it does not look like a constant.

7 years agoh264: add a parameter to the FIELD_OR_MBAFF_PICTURE macro.
Anton Khirnov [Sat, 9 Mar 2013 19:37:11 +0000 (20:37 +0100)]
h264: add a parameter to the FIELD_OR_MBAFF_PICTURE macro.

This way it does not look like a constant.

7 years agoh264: add a parameter to the FIELD_PICTURE macro.
Anton Khirnov [Sat, 9 Mar 2013 19:37:11 +0000 (20:37 +0100)]
h264: add a parameter to the FIELD_PICTURE macro.

This way it does not look like a constant.

7 years agoh264: add a parameter to the FRAME_MBAFF macro.
Anton Khirnov [Sat, 9 Mar 2013 19:37:11 +0000 (20:37 +0100)]
h264: add a parameter to the FRAME_MBAFF macro.

This way it does not look like a constant.

7 years agoh264: add a parameter to the MB_FIELD macro.
Anton Khirnov [Sat, 9 Mar 2013 19:37:11 +0000 (20:37 +0100)]
h264: add a parameter to the MB_FIELD macro.

This way it does not look like a constant.

7 years agoh264: add a parameter to the MB_MBAFF macro.
Anton Khirnov [Sat, 9 Mar 2013 19:37:11 +0000 (20:37 +0100)]
h264: add a parameter to the MB_MBAFF macro.

This way it does not look like a constant.

7 years agoh264: merge common_init() into ff_h264_decode_init.
Anton Khirnov [Sat, 5 Nov 2011 18:26:54 +0000 (19:26 +0100)]
h264: merge common_init() into ff_h264_decode_init.

There is no point in keeping those separate.

7 years agoh264: make ff_h264_frame_start static.
Anton Khirnov [Sat, 9 Mar 2013 19:21:17 +0000 (20:21 +0100)]
h264: make ff_h264_frame_start static.

It is not called from outside h264.c

7 years agofate: add tests for h264 decoder reinit
Janne Grunau [Tue, 19 Mar 2013 14:49:53 +0000 (15:49 +0100)]
fate: add tests for h264 decoder reinit

7 years agoh264: fix bit depth changes with frame threading
Janne Grunau [Wed, 20 Mar 2013 11:57:46 +0000 (12:57 +0100)]
h264: fix bit depth changes with frame threading

AVCodecContext.bits_per_raw_sample is updated from the previous thread
in the generic update function before the codec specific update_thread
function is called. The check for reinitialization of dsp functions uses
bits_per_raw_sample. When called from update_thread_context it will be
already at the current value and the dsp functions aren't updated if
only the bit depth changes.

7 years agortmp: Pass the parameters to do_adobe_auth in the right order
Martin Storsjö [Wed, 20 Mar 2013 09:07:53 +0000 (11:07 +0200)]
rtmp: Pass the parameters to do_adobe_auth in the right order

do_adobe_auth takes the parameters in the order "opaque, challenge".

Due to the way they are treated, this didn't matter in the tested
setups though - if both are set, we only use one. In the tested
setups (Wowza and Akamai) either one of them were null or they
were both set to the same value, which is why this worked before.

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agompegvideo: allocate hwaccel privdata after the frame buffer
Hendrik Leppkes [Mon, 18 Mar 2013 17:54:44 +0000 (18:54 +0100)]
mpegvideo: allocate hwaccel privdata after the frame buffer

This ensures the hwaccel privdata does not leak when a frame buffer could
not be allocated (and toggle the assert when the frame is re-used).
Having no frame buffer available is quite common when using the DXVA2
hwaccel in situations where the DXVA2 renderer is being re-allocated, for
example when moving between displays.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agoh264: allocate hwaccel privdata after the frame buffer
Hendrik Leppkes [Mon, 18 Mar 2013 17:54:43 +0000 (18:54 +0100)]
h264: allocate hwaccel privdata after the frame buffer

This ensures the hwaccel privdata does not leak when a frame buffer could
not be allocated (and toggle the assert when the frame is re-used).
Having no frame buffer available is quite common when using the DXVA2
hwaccel in situations where the DXVA2 renderer is being re-allocated, for
example when moving between displays.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agopthread: unref already decoded frames when flushing the decoder
Hendrik Leppkes [Mon, 18 Mar 2013 16:09:49 +0000 (17:09 +0100)]
pthread: unref already decoded frames when flushing the decoder

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agompegvideo: fix allocation of the hwaccel_picture_private data
Hendrik Leppkes [Fri, 15 Mar 2013 20:20:37 +0000 (21:20 +0100)]
mpegvideo: fix allocation of the hwaccel_picture_private data

Signed-off-by: Anton Khirnov <anton@khirnov.net>
7 years agolavc: update the doxy for avcodec_decode_{video,audio} wtih refcounting.
Anton Khirnov [Mon, 18 Mar 2013 06:38:20 +0000 (07:38 +0100)]
lavc: update the doxy for avcodec_decode_{video,audio} wtih refcounting.

7 years agobuffersrc: fix a typo.
Anton Khirnov [Mon, 18 Mar 2013 06:22:58 +0000 (07:22 +0100)]
buffersrc: fix a typo.

Vertical shift is log2_chroma_h, not log2_chroma_w.