platform/upstream/libav.git
12 years agoWavPack demuxer: set packet duration
Paul B Mahol [Wed, 8 Feb 2012 22:17:54 +0000 (22:17 +0000)]
WavPack demuxer: set packet duration

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agotta: use skip_bits_long()
Paul B Mahol [Sun, 5 Feb 2012 19:39:13 +0000 (19:39 +0000)]
tta: use skip_bits_long()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agomxfdec: Ignore the last entry in Avid's index table segments
Tomas Härdin [Thu, 26 Jan 2012 12:21:30 +0000 (13:21 +0100)]
mxfdec: Ignore the last entry in Avid's index table segments

The last entry is the total size of the essence container.
Previously a TemporalOffset error would be logged, even though
segments like these are expected.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Sanity-check SampleRate
Tomas Härdin [Thu, 26 Jan 2012 13:12:50 +0000 (14:12 +0100)]
mxfdec: Sanity-check SampleRate

This avoids a SIGFPE if SampleRate is missing or set to naughty values.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Handle small EditUnitByteCount
Tomas Härdin [Thu, 26 Jan 2012 12:21:44 +0000 (13:21 +0100)]
mxfdec: Handle small EditUnitByteCount

These are common with audio atoms. Without this the demuxer would read two
bytes at a time for a mono 16-bit file.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Consider OPAtom files that do not have exactly one EC to be OP1a
Tomas Härdin [Thu, 26 Jan 2012 12:21:43 +0000 (13:21 +0100)]
mxfdec: Consider OPAtom files that do not have exactly one EC to be OP1a

This fixes demuxing of 2011_DCPTEST_24FPS.V.mxf.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Don't crash in mxf_packet_timestamps() if current_edit_unit overflows
Tomas Härdin [Thu, 26 Jan 2012 12:21:41 +0000 (13:21 +0100)]
mxfdec: Don't crash in mxf_packet_timestamps() if current_edit_unit overflows

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Zero nb_ptses in mxf_compute_ptses_fake_index()
Tomas Härdin [Thu, 26 Jan 2012 12:21:40 +0000 (13:21 +0100)]
mxfdec: Zero nb_ptses in mxf_compute_ptses_fake_index()

This fixes SIGSEGV on files with both CBR and VBR index segments (zzuf6.mxf).

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Sanity check PreviousPartition
Tomas Härdin [Thu, 26 Jan 2012 12:21:39 +0000 (13:21 +0100)]
mxfdec: Sanity check PreviousPartition

Without this certain files could get the demuxer stuck in a loop.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Never seek back in local sets and KLVs
Tomas Härdin [Thu, 26 Jan 2012 12:21:38 +0000 (13:21 +0100)]
mxfdec: Never seek back in local sets and KLVs

Specially crafted files can lead the parsing code to take too long.
We fix a lot of these problems by not allowing local tags to extend
past the end of the set and not allowing other KLVs to be read past
the end of themselves.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Move the current_partition check inside mxf_read_header()
Tomas Härdin [Thu, 26 Jan 2012 12:21:37 +0000 (13:21 +0100)]
mxfdec: Move the current_partition check inside mxf_read_header()

This fixes SIGSEGV on files where this is the case, such as zzuf4.mxf.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Fix infinite loop in mxf_packet_timestamps()
Tomas Härdin [Thu, 26 Jan 2012 12:21:36 +0000 (13:21 +0100)]
mxfdec: Fix infinite loop in mxf_packet_timestamps()

This can happen if an index table segment has a very large IndexStartPosition.
zzuf3.mxf is an example of such a file.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Check eof_reached in mxf_read_local_tags()
Tomas Härdin [Thu, 26 Jan 2012 12:21:35 +0000 (13:21 +0100)]
mxfdec: Check eof_reached in mxf_read_local_tags()

This fixes an infinite loop with zzuf2.mxf.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Check for NULL component
Tomas Härdin [Thu, 26 Jan 2012 12:21:34 +0000 (13:21 +0100)]
mxfdec: Check for NULL component

This fixes a SIGSEGV with zzuf1.mxf.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Make sure mxf->nb_index_tables > 0 in mxf_packet_timestamps()
Tomas Härdin [Thu, 26 Jan 2012 12:21:32 +0000 (13:21 +0100)]
mxfdec: Make sure mxf->nb_index_tables > 0 in mxf_packet_timestamps()

Only the OPAtom demuxing logic is guaranteed to have index tables,
meaning OP1a files that lack an index would cause SIGSEGV.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomxfdec: Make sure x < index_table->nb_ptses
Tomas Härdin [Thu, 26 Jan 2012 12:21:31 +0000 (13:21 +0100)]
mxfdec: Make sure x < index_table->nb_ptses

Avoids a SIGSEGV on files with IndexEntryCount < IndexDuration.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agobuild: Add missing directories to DIRS declarations.
Diego Biurrun [Wed, 8 Feb 2012 10:02:10 +0000 (11:02 +0100)]
build: Add missing directories to DIRS declarations.

12 years agoarm: Add missing #include to vp8.h to fix a make checkheaders warning.
Diego Biurrun [Wed, 8 Feb 2012 12:18:22 +0000 (13:18 +0100)]
arm: Add missing #include to vp8.h to fix a make checkheaders warning.

12 years agoswscale: ppc: Add missing header #includes to pass 'make checkheaders'.
Diego Biurrun [Wed, 8 Feb 2012 10:01:41 +0000 (11:01 +0100)]
swscale: ppc: Add missing header #includes to pass 'make checkheaders'.

12 years agocosmetics: Delete empty lines at end of file.
Diego Biurrun [Wed, 8 Feb 2012 09:39:18 +0000 (10:39 +0100)]
cosmetics: Delete empty lines at end of file.

12 years agobytestream: K&R formatting cosmetics
Aneesh Dogra [Wed, 8 Feb 2012 18:07:20 +0000 (23:37 +0530)]
bytestream: K&R formatting cosmetics

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agoapetag: fix comment
Paul B Mahol [Thu, 9 Feb 2012 00:00:29 +0000 (00:00 +0000)]
apetag: fix comment

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agorawenc: switch to encode2().
Anton Khirnov [Wed, 1 Feb 2012 14:33:51 +0000 (15:33 +0100)]
rawenc: switch to encode2().

This changes a number of FATE results, since before this commit, the
timestamps in all tests using rawenc were made up by lavf.

In most cases, the previous timestamps were completely bogus.

In some other cases -- raw formats, mostly h264 -- the new timestamps
are bogus as well. The only difference is that timestamps invented by
the muxer are replaced by timestamps invented by the demuxer.

cscd     -- avconv sets output codec timebase from r_frame_rate
and r_frame_rate is in this case some guessed number 31.42 (377/12),
which is not accurate enough to represent all timestamps. This results
in some frames having duplicate pts. Therefore, vsync 0 needs to be
changed to vsync 2 and avconv drops two frames. A proper fix in the
future would be to set output timebase to something saner in avconv.

nuv      -- previous timestamps for video were wrong AND the cscd
comment applies, one frame is dropped.

vp8-signbias -- the file contains two frames with identical timestamps,
so -vsync 0 needs to be removed/changed to -vsync 2 and avconv drops one
frame.

vc1-ism -- apparrently either the demuxer lies about timestamps or the
file is broken, since dts == pts on all packets, but reordering clearly
takes place.

12 years agopixdesc: mark pseudopaletted formats with a special flag.
Anton Khirnov [Wed, 1 Feb 2012 14:32:21 +0000 (15:32 +0100)]
pixdesc: mark pseudopaletted formats with a special flag.

This makes it possible to dintinguish them from PAL8.

Fixes an invalid write in avpicture_layout().

12 years agoavconv: switch to avcodec_encode_video2().
Anton Khirnov [Wed, 1 Feb 2012 09:51:36 +0000 (10:51 +0100)]
avconv: switch to avcodec_encode_video2().

12 years agolibx264: implement encode2().
Anton Khirnov [Mon, 6 Feb 2012 06:39:23 +0000 (07:39 +0100)]
libx264: implement encode2().

12 years agolibx264: split extradata writing out of encode_nals().
Anton Khirnov [Mon, 6 Feb 2012 06:34:57 +0000 (07:34 +0100)]
libx264: split extradata writing out of encode_nals().

This is done in preparation for the following patch.

12 years agolavc: add avcodec_encode_video2() that encodes from an AVFrame -> AVPacket
Anton Khirnov [Wed, 1 Feb 2012 08:54:38 +0000 (09:54 +0100)]
lavc: add avcodec_encode_video2() that encodes from an AVFrame -> AVPacket

Deprecate avcodec_encode_video().

12 years agocmdutils: update copyright year to 2012.
Ronald S. Bultje [Wed, 8 Feb 2012 18:16:41 +0000 (10:16 -0800)]
cmdutils: update copyright year to 2012.

12 years agoswscale: sign-extend integer function argument to qword on x86-64.
Ronald S. Bultje [Sat, 4 Feb 2012 09:27:45 +0000 (10:27 +0100)]
swscale: sign-extend integer function argument to qword on x86-64.

12 years agox86inc: support yasm -f win64 flag also.
Haruhiko Yamagata [Tue, 7 Feb 2012 20:27:33 +0000 (12:27 -0800)]
x86inc: support yasm -f win64 flag also.

This sets __OUTPUT_FORMAT__ to win64 instead of win32, even though both
(through -m amd64) produce 64-bit binary code.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agoh264: manually save/restore XMM registers for functions using INIT_MMX.
Ronald S. Bultje [Tue, 7 Feb 2012 20:46:59 +0000 (12:46 -0800)]
h264: manually save/restore XMM registers for functions using INIT_MMX.

On Win64, these registers are callee-save, so not saving/restoring them
correctly is a violation of ABI and can lead to crashes or corrupt data.

12 years agox86inc: allow manual use of WIN64_SPILL_XMM.
Henrik Gramner [Sat, 4 Feb 2012 08:28:46 +0000 (00:28 -0800)]
x86inc: allow manual use of WIN64_SPILL_XMM.

Functions using INIT_MMX may still access XMM registers through direct
means (xmm0-15). Therefore, they still need to be marked for clobber
so they can be properly saved/restored.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agoaacdec: Use correct speaker order for 7.1.
Alex Converse [Tue, 31 Jan 2012 22:25:35 +0000 (14:25 -0800)]
aacdec: Use correct speaker order for 7.1.

The spec says the following speaker mapping is default:
center front speaker
left, right center front speakers,
left, right outside front speakers,
left surround, right surround rear speakers,
front low frequency effects speaker

12 years agoaacdec: Remove incorrect comment.
Alex Converse [Tue, 31 Jan 2012 23:49:45 +0000 (15:49 -0800)]
aacdec: Remove incorrect comment.

It was only correct when element ids met very specific criteria.

12 years agoaacdec: Simplify output configuration.
Alex Converse [Tue, 31 Jan 2012 23:49:06 +0000 (15:49 -0800)]
aacdec: Simplify output configuration.

12 years agoRemove Sun medialib glue code.
Diego Biurrun [Wed, 1 Feb 2012 13:43:06 +0000 (14:43 +0100)]
Remove Sun medialib glue code.

It is obscure, most likely unused and not bit-exact compared to
libavcodec due to a different IDCT transform algorithm.

12 years agodsputil: set STRIDE_ALIGN to 16 for x86 also.
Ronald S. Bultje [Tue, 7 Feb 2012 22:54:46 +0000 (14:54 -0800)]
dsputil: set STRIDE_ALIGN to 16 for x86 also.

This fixes crashes in e.g. PNG decoding with SSE2 enabled. In fact, many
x86 optimizations for codecs assume that our buffer strides are 16-byte
aligned.

12 years agopngdsp: swap argument inversion.
Ronald S. Bultje [Tue, 7 Feb 2012 20:51:21 +0000 (12:51 -0800)]
pngdsp: swap argument inversion.

12 years agoswscale: make yuv2yuv1 use named registers.
Ronald S. Bultje [Sat, 4 Feb 2012 09:00:27 +0000 (10:00 +0100)]
swscale: make yuv2yuv1 use named registers.

12 years agoh264: mark h264_idct_add8_10 with number of XMM registers.
Michael Kostylev [Sat, 4 Feb 2012 08:16:35 +0000 (00:16 -0800)]
h264: mark h264_idct_add8_10 with number of XMM registers.

This fixes XMM register clobber problems on Win64.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agoswscale: fix V plane memory location in bilinear/unscaled RGB/YUYV case.
Ronald S. Bultje [Tue, 7 Feb 2012 19:33:20 +0000 (11:33 -0800)]
swscale: fix V plane memory location in bilinear/unscaled RGB/YUYV case.

Fixes bug 221.

CC: libav-stable@libav.org
12 years agovp8: always update next_framep[] before returning from decode_frame().
Ronald S. Bultje [Tue, 31 Jan 2012 23:17:59 +0000 (15:17 -0800)]
vp8: always update next_framep[] before returning from decode_frame().

Also slightly move around code not allocate a new frame if we won't
decode it. This prevents us from putting undecoded frames in frame
pointers, which (in mt decoding) other threads will use and wait on
as references, causing a deadlock (if we skipped decoding) or a crash
(if we didn't initialized next_framep[] at all).

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
12 years agoavconv: estimate next_dts from framerate if it is set.
Anton Khirnov [Thu, 2 Feb 2012 12:18:49 +0000 (13:18 +0100)]
avconv: estimate next_dts from framerate if it is set.

12 years agoavconv: better next_dts usage.
Anton Khirnov [Thu, 2 Feb 2012 11:21:37 +0000 (12:21 +0100)]
avconv: better next_dts usage.

next_dts is used for estimating the dts of the next packet if it's
missing. Therefore, it makes no sense to set it from the pts of the last
decoded frame. Also it should be estimated from the current packet
duration/ticks_per_frame always, not only when a frame was successfully
decoded.

12 years agoavconv: rename InputStream.pts to last_dts.
Anton Khirnov [Sun, 5 Feb 2012 20:12:43 +0000 (21:12 +0100)]
avconv: rename InputStream.pts to last_dts.

It more accurately describes what does this variable store.

12 years agoavconv: reduce overloading for InputStream.pts.
Anton Khirnov [Sun, 5 Feb 2012 19:56:24 +0000 (20:56 +0100)]
avconv: reduce overloading for InputStream.pts.

It currently has different meanings at different times (dts of the last
read packet/pts of the last decoded frame). Reduce obfuscation by
storing pts of the decoded frame in the frame itself.

12 years agoavconv: rename InputStream.next_pts to next_dts.
Anton Khirnov [Fri, 3 Feb 2012 14:32:51 +0000 (15:32 +0100)]
avconv: rename InputStream.next_pts to next_dts.

It's used to predict dts, not pts.

12 years agoavconv: rework -t handling for encoding.
Anton Khirnov [Sun, 5 Feb 2012 13:32:10 +0000 (14:32 +0100)]
avconv: rework -t handling for encoding.

Current code compares the desired recording time with InputStream.pts,
which has a very unclear meaning. Change the code to use actual
timestamps of the frames passed to the encoder.

In several tests, one less frame is encoded, which is more correct.

In the idroq test one more frame is encoded, which is again more
correct.

Behavior with stream copy should be unchanged.

12 years agoavconv: set encoder timebase for subtitles.
Anton Khirnov [Sun, 5 Feb 2012 13:28:19 +0000 (14:28 +0100)]
avconv: set encoder timebase for subtitles.

The actual number (1/1000) will probably require some
discussion/tweaking in the future, but should be good enough for now,
since the timestamps in AVSubtitle are in this timebase by definition.

12 years agopva-demux test: add -vn
Anton Khirnov [Sun, 5 Feb 2012 11:18:14 +0000 (12:18 +0100)]
pva-demux test: add -vn

The output is obviously not supposed to contain video (since only
-acodec copy is specified), but that only happens because of the way -t
handling is implemented currently.

12 years agoswscale: K&R formatting cosmetics for SPARC code
Diego Biurrun [Wed, 18 Jan 2012 17:33:16 +0000 (18:33 +0100)]
swscale: K&R formatting cosmetics for SPARC code

12 years agoapedec: allow the user to set the maximum number of output samples per call
Justin Ruggles [Mon, 6 Feb 2012 22:46:41 +0000 (17:46 -0500)]
apedec: allow the user to set the maximum number of output samples per call

It makes sense in some cases to split up the output packet to save on memory
usage (ape frames can be very large), but the current/default size is
arbitrary. Allowing the user to configure this gives more flexibility and
requires minimal additional code.

12 years agoapedec: do not unnecessarily zero output samples for mono frames
Justin Ruggles [Mon, 6 Feb 2012 21:34:50 +0000 (16:34 -0500)]
apedec: do not unnecessarily zero output samples for mono frames

12 years agoapedec: allocate a single flat buffer for decoded samples
Justin Ruggles [Mon, 6 Feb 2012 21:31:26 +0000 (16:31 -0500)]
apedec: allocate a single flat buffer for decoded samples

This will allow the decoder to return samples for the full packet, and it also
makes the decoded buffer pointers aligned.

12 years agoapedec: use sizeof(field) instead of sizeof(type)
Justin Ruggles [Mon, 6 Feb 2012 18:36:42 +0000 (13:36 -0500)]
apedec: use sizeof(field) instead of sizeof(type)

12 years agoswscale: split C output functions into separate file.
Ronald S. Bultje [Wed, 1 Feb 2012 15:38:56 +0000 (07:38 -0800)]
swscale: split C output functions into separate file.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agoswscale: Split C input functions into separate file.
Ronald S. Bultje [Wed, 1 Feb 2012 15:38:55 +0000 (07:38 -0800)]
swscale: Split C input functions into separate file.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agobytestream: Add bytestream2 writing API.
Aneesh Dogra [Mon, 6 Feb 2012 20:09:22 +0000 (01:39 +0530)]
bytestream: Add bytestream2 writing API.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agoRevert "v210enc: use FFALIGN()"
Paul B Mahol [Mon, 6 Feb 2012 17:54:39 +0000 (17:54 +0000)]
Revert "v210enc: use FFALIGN()"

FFALIGN doesn't work with non-powers-of-2.

This reverts commit 7ad1b612c8a2a1b1b47f6c3c580ced4bca17e1c7.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agodoxygen: Do not include license boilerplates in Doxygen comment blocks.
Diego Biurrun [Sun, 5 Feb 2012 10:31:33 +0000 (11:31 +0100)]
doxygen: Do not include license boilerplates in Doxygen comment blocks.

12 years agoavplay: reset decoder flush state when seeking
Justin Ruggles [Sat, 4 Feb 2012 22:32:26 +0000 (17:32 -0500)]
avplay: reset decoder flush state when seeking

Fixes seeking after decoder has already been flushed for codecs using
CODEC_CAP_DELAY.

12 years agoape: skip packets with invalid size
Justin Ruggles [Sat, 4 Feb 2012 22:08:34 +0000 (17:08 -0500)]
ape: skip packets with invalid size

12 years agoape: calculate final packet size instead of guessing
Justin Ruggles [Sat, 4 Feb 2012 22:01:03 +0000 (17:01 -0500)]
ape: calculate final packet size instead of guessing

Calculates based on total file size and wavetaillength from the header.
Falls back to multiplying finalframeblocks by 8 instead of 4 so that it will
at least be overestimating for 24-bit. Currently it can underestimate the
final packet size, leading to decoding errors.

12 years agoape: stop reading after the last frame has been read
Justin Ruggles [Sat, 4 Feb 2012 21:34:20 +0000 (16:34 -0500)]
ape: stop reading after the last frame has been read

This avoids buffer overread when the last packet size estimate is too small.

12 years agoape: return AVERROR_EOF instead of AVERROR(EIO) when demuxing is finished
Justin Ruggles [Sat, 4 Feb 2012 21:31:37 +0000 (16:31 -0500)]
ape: return AVERROR_EOF instead of AVERROR(EIO) when demuxing is finished

12 years agoape: return error if seeking to the current packet fails in ape_read_packet()
Justin Ruggles [Sat, 4 Feb 2012 21:29:37 +0000 (16:29 -0500)]
ape: return error if seeking to the current packet fails in ape_read_packet()

12 years agoavcodec: Clarify AVFrame member documentation.
Kieran Kunhya [Sun, 5 Feb 2012 10:28:58 +0000 (04:28 -0600)]
avcodec: Clarify AVFrame member documentation.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agov210dec: check for coded_frame allocation failure
Paul B Mahol [Sun, 5 Feb 2012 21:14:39 +0000 (21:14 +0000)]
v210dec: check for coded_frame allocation failure

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agov210enc: use stride as it is already calculated
Paul B Mahol [Sun, 5 Feb 2012 21:14:38 +0000 (21:14 +0000)]
v210enc: use stride as it is already calculated

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agov210enc: use FFALIGN()
Paul B Mahol [Sun, 5 Feb 2012 21:14:37 +0000 (21:14 +0000)]
v210enc: use FFALIGN()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agov210enc: return proper AVERROR codes instead of -1
Paul B Mahol [Sun, 5 Feb 2012 21:14:36 +0000 (21:14 +0000)]
v210enc: return proper AVERROR codes instead of -1

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agov210enc: do not set coded_frame->key_frame
Paul B Mahol [Sun, 5 Feb 2012 21:14:35 +0000 (21:14 +0000)]
v210enc: do not set coded_frame->key_frame

It is already set in avcodec_alloc_frame().

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agov210enc: check for coded_frame allocation failure
Paul B Mahol [Sun, 5 Feb 2012 21:14:34 +0000 (21:14 +0000)]
v210enc: check for coded_frame allocation failure

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agodrawtext: add 'fix_bounds' option on coords fixing
Andrey Utkin [Sun, 5 Feb 2012 12:41:01 +0000 (14:41 +0200)]
drawtext: add 'fix_bounds' option on coords fixing

Before, drawtext filter deliberately altered given text coordinates if
text didn't fully fit on the picture. This breaks the use case of
scrolling large text, e.g. movie closing credits.
Add 'fix_bounds', to make it usable in such cases (by setting its value to 0).
Default behavior is not changed, and non-fitting text coords are fixed.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agodrawtext: fix text_{w, h} expression vars
Andrey Utkin [Sat, 4 Feb 2012 22:14:16 +0000 (00:14 +0200)]
drawtext: fix text_{w, h} expression vars

Before, {text_,}{w,h} vars hadn't got initialized

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agodrawtext: add missing braces around an if() block.
Andrey Utkin [Sat, 4 Feb 2012 22:14:15 +0000 (00:14 +0200)]
drawtext: add missing braces around an if() block.

Prevents uninitialized read.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agoape: fix seeking
Paul B Mahol [Fri, 3 Feb 2012 18:30:18 +0000 (18:30 +0000)]
ape: fix seeking

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agoapedec: 8bit and 24bit support
Paul B Mahol [Fri, 3 Feb 2012 15:37:06 +0000 (15:37 +0000)]
apedec: 8bit and 24bit support

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
12 years agodsputil: remove debug message in dsputil_init().
Justin Ruggles [Wed, 10 Aug 2011 13:39:43 +0000 (09:39 -0400)]
dsputil: remove debug message in dsputil_init().

AVCodecContext.bits_per_raw_sample is used for audio too, and values other
than 8, 9, and 10 are valid.

12 years agomovdec: Avoid av_malloc(0) in stss
Alex Converse [Fri, 3 Feb 2012 18:43:21 +0000 (10:43 -0800)]
movdec: Avoid av_malloc(0) in stss

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
12 years agobuild: Drop YASM-OBJS-FFT from SUBDIR_VARS.
Diego Biurrun [Thu, 2 Feb 2012 22:39:23 +0000 (23:39 +0100)]
build: Drop YASM-OBJS-FFT from SUBDIR_VARS.

FFT code only appears in libavcodec, so there is no need to reset the variable
when the build templates are instantiated for other libraries.

12 years agobuild: Drop unused X86-OBJS variable.
Diego Biurrun [Thu, 2 Feb 2012 22:37:30 +0000 (23:37 +0100)]
build: Drop unused X86-OBJS variable.

12 years agoavconv: remove debugging cruft from do_video_out().
Anton Khirnov [Wed, 1 Feb 2012 09:25:19 +0000 (10:25 +0100)]
avconv: remove debugging cruft from do_video_out().

12 years agoavconv: factorize setting stream_index for the output packet.
Anton Khirnov [Wed, 1 Feb 2012 09:23:28 +0000 (10:23 +0100)]
avconv: factorize setting stream_index for the output packet.

12 years agoframe{crc/md5}: set the stream timebase from codec timebase.
Anton Khirnov [Thu, 2 Feb 2012 13:20:43 +0000 (14:20 +0100)]
frame{crc/md5}: set the stream timebase from codec timebase.

Right now those muxers use the default timebase in all cases(1/90000).

This patch avoid unnecessary rescaling and makes the printed timestamps
more readable.

Also, extend the printed information to include the timebases and packet
pts/duration and align the columns.

Obviously changes the results of all fate tests which use those two
muxers.

12 years agoapedec: remove unneeded #include of get_bits.h and associated macro
Justin Ruggles [Thu, 2 Feb 2012 01:14:42 +0000 (20:14 -0500)]
apedec: remove unneeded #include of get_bits.h and associated macro

12 years agoapedec: av_fast_malloc() instead of av_realloc()
Justin Ruggles [Mon, 30 Jan 2012 19:57:21 +0000 (14:57 -0500)]
apedec: av_fast_malloc() instead of av_realloc()

av_realloc() does not guarantee alignment, which is required for
DSPContext.bswap_buf().

12 years agoapedec: fix handling of packet sizes that are not a multiple of 4 bytes
Justin Ruggles [Thu, 2 Feb 2012 01:11:36 +0000 (20:11 -0500)]
apedec: fix handling of packet sizes that are not a multiple of 4 bytes

12 years agolibx264: fix indentation.
Anton Khirnov [Wed, 1 Feb 2012 09:56:14 +0000 (10:56 +0100)]
libx264: fix indentation.

12 years agovorbis: fix overflows in floor1[] vector and inverse db table index.
Ronald S. Bultje [Wed, 11 Jan 2012 01:01:26 +0000 (17:01 -0800)]
vorbis: fix overflows in floor1[] vector and inverse db table index.

12 years agowin64: add a XMM clobber test configure option.
Ronald S. Bultje [Thu, 2 Feb 2012 19:48:13 +0000 (11:48 -0800)]
win64: add a XMM clobber test configure option.

This will be useful to test more aggressively for failures to mark XMM
registers as clobbered in Win64 builds, and prevent regressions thereof.

Based on a patch by Ramiro Polla <ramiro.polla@gmail.com>

12 years agomovdec: Parse the dvc1 atom
Martin Storsjö [Sat, 21 Jan 2012 23:32:16 +0000 (01:32 +0200)]
movdec: Parse the dvc1 atom

Normally, the actual payload data contains sequence headers, too,
and the parser can extract this and set it as extradata. However,
the data in the dvc1 atom is the "official" extradata for the file.

This is required for proper stream copy of vc1 from ismv to ismv.

Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agoARM: ac3: fix ac3_bit_alloc_calc_bap_armv6
Mans Rullgard [Wed, 1 Feb 2012 22:25:10 +0000 (22:25 +0000)]
ARM: ac3: fix ac3_bit_alloc_calc_bap_armv6

This function was broken when the start bin was not at the start
of a band.

Signed-off-by: Mans Rullgard <mans@mansr.com>
12 years agoswscale: K&R formatting cosmetics for Blackfin code
Diego Biurrun [Wed, 18 Jan 2012 22:56:49 +0000 (23:56 +0100)]
swscale: K&R formatting cosmetics for Blackfin code

Also prettyprint some comments in Assembly code.

12 years agofrwu: lowercase the FRWU codec name
Piotr Bandurski [Wed, 1 Feb 2012 20:23:33 +0000 (20:23 +0000)]
frwu: lowercase the FRWU codec name

This is more consistent with all the other codec names.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agomovdec: fix dts generation in fragmented files
Janne Grunau [Thu, 2 Feb 2012 15:30:27 +0000 (16:30 +0100)]
movdec: fix dts generation in fragmented files

Do not use AVStream's duration for dts generation since it contains in
some cases the duration of the whole file instead of duration of the
samples in the moov. This happens if the mdhd holds the duration of the
whole file but has no entries or a zero duration in its stts.

12 years agofate: make acodec-ac3_fixed test output raw AC3
Mans Rullgard [Thu, 2 Feb 2012 01:46:05 +0000 (01:46 +0000)]
fate: make acodec-ac3_fixed test output raw AC3

There is no point in this test using the RM format.

Signed-off-by: Mans Rullgard <mans@mansr.com>
12 years agoAPIchanges: add missing commit hashes
Janne Grunau [Wed, 1 Feb 2012 18:22:54 +0000 (19:22 +0100)]
APIchanges: add missing commit hashes

12 years agoswscale: implement MMX, SSE2 and AVX functions for RGB32 input.
Ronald S. Bultje [Thu, 2 Feb 2012 05:55:32 +0000 (21:55 -0800)]
swscale: implement MMX, SSE2 and AVX functions for RGB32 input.