ffmpeg.git
8 years agoaacenc: Move Q^3/4 calculation to it's own table
Nathan Caldwell [Fri, 6 Jan 2012 21:24:37 +0000 (14:24 -0700)]
aacenc: Move Q^3/4 calculation to it's own table

This should be moved to tablegen at some point.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
8 years agoaacenc: Request normalized float samples instead of converting s16 samples to float.
Nathan Caldwell [Sun, 18 Dec 2011 01:45:55 +0000 (18:45 -0700)]
aacenc: Request normalized float samples instead of converting s16 samples to float.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
8 years agoaacpsy: Replace an if with FFMAX in LAME windowing.
Nathan Caldwell [Sat, 7 Jan 2012 21:21:35 +0000 (14:21 -0700)]
aacpsy: Replace an if with FFMAX in LAME windowing.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
8 years agoaacenc: cosmetics, replace 'rd' with 'bits' in codebook_trellis_rate to make it more...
Nathan Caldwell [Mon, 9 Jan 2012 01:38:39 +0000 (18:38 -0700)]
aacenc: cosmetics, replace 'rd' with 'bits' in codebook_trellis_rate to make it more clear what is being calculated.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
8 years agoaacpsy: cosmetics, change a FIXME to a NOTE about subshort comparisons
Nathan Caldwell [Sat, 7 Jan 2012 21:16:10 +0000 (14:16 -0700)]
aacpsy: cosmetics, change a FIXME to a NOTE about subshort comparisons

Also fix a typo.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
8 years agoaacenc: cosmetics: move init() and end() to the bottom of the file.
Nathan Caldwell [Thu, 15 Dec 2011 02:50:23 +0000 (19:50 -0700)]
aacenc: cosmetics: move init() and end() to the bottom of the file.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
8 years agoaacenc: aac_encode_init() cleanup
Nathan Caldwell [Fri, 2 Dec 2011 22:08:55 +0000 (15:08 -0700)]
aacenc: aac_encode_init() cleanup

Macroify sanity checks and check return values of allocs and other functions.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
8 years agoXWD encoder and decoder
Paul B Mahol [Sat, 21 Jan 2012 17:45:52 +0000 (17:45 +0000)]
XWD encoder and decoder

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
8 years agovc1: don't read the interpfrm and bfraction elements for interlaced frames
Hendrik Leppkes [Fri, 13 Jan 2012 17:41:21 +0000 (18:41 +0100)]
vc1: don't read the interpfrm and bfraction elements for interlaced frames

This matches the spec as well as the reference decoder, and fixes a bug
with interlaced frame decoding.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
8 years agomxfdec: fix memleak on mxf_read_close()
Janne Grunau [Sun, 22 Jan 2012 18:57:13 +0000 (19:57 +0100)]
mxfdec: fix memleak on mxf_read_close()

8 years agowestwood: split the AUD and VQA demuxers into separate files.
Justin Ruggles [Fri, 20 Jan 2012 18:56:51 +0000 (13:56 -0500)]
westwood: split the AUD and VQA demuxers into separate files.

They have no code in common.

8 years agoriff: fix invalid av_freep() calls on EOF in ff_read_riff_info
Janne Grunau [Thu, 5 Jan 2012 19:15:53 +0000 (20:15 +0100)]
riff: fix invalid av_freep() calls on EOF in ff_read_riff_info

8 years agopam: Fix a typo that broke writing and reading PAM files.
Carl Eugen Hoyos [Wed, 28 Dec 2011 04:54:59 +0000 (05:54 +0100)]
pam: Fix a typo that broke writing and reading PAM files.

Reported and reviewed by Derek Buitenhuis.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: fix memleak on av_realloc failures
Janne Grunau [Wed, 21 Dec 2011 19:12:24 +0000 (20:12 +0100)]
mxfdec: fix memleak on av_realloc failures

8 years agomxfdec: Do not parse slices or DeltaEntryArrays.
Tomas Härdin [Fri, 16 Dec 2011 10:02:04 +0000 (11:02 +0100)]
mxfdec: Do not parse slices or DeltaEntryArrays.

The most recent demuxing/seeking code does not need them.

8 years agomxfdec: hybrid demuxing/seeking solution
Janne Grunau [Thu, 8 Dec 2011 19:28:49 +0000 (20:28 +0100)]
mxfdec: hybrid demuxing/seeking solution

This uses the old demuxing code for OP1a and separate demuxing code for OPAtom.
Timestamp output is added to the old demuxing code.

The seeking code is made to seek to the start of the desired EditUnit only,
from which the normal demuxing code takes over (if OP1a). This means we
do not use delta entries or slices, only StreamOffsets. OPAtom seeking
basically works like before.

This also makes D-10 seeking behave the same way as OP1a and OPAtom. In other
words, we allow seeking before the start or past the end for D-10 too.

Based on several patches by Tomas Härdin <tomas.hardin@codemill.se> and
Reimar Döffinger <Reimar.Doeffinger@gmx.de>.

Changed av_calloc to av_mallocz, added overflow checks.

8 years agomxfdec: Add Avid's essence element key.
Tomas Härdin [Sat, 10 Dec 2011 11:11:11 +0000 (12:11 +0100)]
mxfdec: Add Avid's essence element key.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomfxdec: Separate mxf_essence_container_uls for audio and video.
Carl Eugen Hoyos [Sat, 10 Dec 2011 13:58:57 +0000 (14:58 +0100)]
mfxdec: Separate mxf_essence_container_uls for audio and video.

It is a really bad idea to assign a video codec id
when we have set codec_type to audio and vice versa.

Prevents detection of mp2 in mxf as mpeg2video.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: Compute packet offsets properly.
Tomas Härdin [Thu, 8 Dec 2011 11:23:36 +0000 (12:23 +0100)]
mxfdec: Compute packet offsets properly.

This replaces the old essence_offset code.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: Use MaterialPackage - Track - TrackID instead of the system_item hack.
Tomas Härdin [Thu, 8 Dec 2011 10:53:57 +0000 (11:53 +0100)]
mxfdec: Use MaterialPackage - Track - TrackID instead of the system_item hack.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: use av_dlog() for 'no corresponding source package found'
Tomas Härdin [Thu, 8 Dec 2011 10:21:58 +0000 (11:21 +0100)]
mxfdec: use av_dlog() for 'no corresponding source package found'

This is not an error and expected behavior for OPAtom files.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: Make mxf->partitions sorted by offset.
Tomas Härdin [Thu, 8 Dec 2011 10:06:23 +0000 (11:06 +0100)]
mxfdec: Make mxf->partitions sorted by offset.

This also zeroes new entries for good measure (used by future patches).

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: parse ThisPartition
Tomas Härdin [Wed, 7 Dec 2011 16:43:36 +0000 (17:43 +0100)]
mxfdec: parse ThisPartition

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: Speed up metadata and index parsing.
Tomas Härdin [Mon, 14 Mar 2011 16:00:21 +0000 (17:00 +0100)]
mxfdec: Speed up metadata and index parsing.

Specifically, this means parsing as before until we run into essence.
At that point we seek to the footer and parse until EOF. After that we start
seeking backward to the previous partition and parse that until we run into
essence or the next partition. This procedure is repeated until we encounter
the last partition we parsed in the forward direction.

The end result of all this is that large essence containers are not needlessly
parsed. This speeds up parsing large files a lot.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: Make sure DataDefinition is consistent between material track and source...
Tomas Härdin [Mon, 28 Nov 2011 09:51:00 +0000 (10:51 +0100)]
mxfdec: Make sure DataDefinition is consistent between material track and source track.

This fixes 0001GL.MXF.V1.mxf_opatom.mxf and 0001GL00.MXF.A1.mxf_opatom.mxf
getting two streams each due to both using the same SourcePackageID.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: add EssenceContainer UL found in 0001GL00.MXF.A1.mxf_opatom.mxf
Tomas Härdin [Mon, 28 Nov 2011 08:53:10 +0000 (09:53 +0100)]
mxfdec: add EssenceContainer UL found in 0001GL00.MXF.A1.mxf_opatom.mxf

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: Add hack that adjusts the n_delta calculation when system items are present.
Tomas Härdin [Fri, 11 Nov 2011 14:01:34 +0000 (15:01 +0100)]
mxfdec: Add hack that adjusts the n_delta calculation when system items are present.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: Parse IndexTableSegments and convert them into AVIndexEntry arrays.
Janne Grunau [Wed, 9 Nov 2011 10:47:57 +0000 (11:47 +0100)]
mxfdec: Parse IndexTableSegments and convert them into AVIndexEntry arrays.

Based on patch from Tomas Härdin <tomas.hardin@codemill.se>
and work by Georg Lippitsch <georg.lippitsch@gmx.at>

Changed av_calloc to av_mallocz and added overflow checks.

8 years agomxfdec: Move FooterPartition to MXFContext and make sure it is never zero.
Tomas Härdin [Fri, 7 Oct 2011 13:48:00 +0000 (15:48 +0200)]
mxfdec: Move FooterPartition to MXFContext and make sure it is never zero.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: check return value of avio_seek
Joakim Plate [Wed, 14 Sep 2011 17:26:48 +0000 (19:26 +0200)]
mxfdec: check return value of avio_seek

Avoid modifying state if avio_seek fails.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: skip to end of structural sets
Philip de Nier [Mon, 12 Sep 2011 10:13:44 +0000 (11:13 +0100)]
mxfdec: skip to end of structural sets

This fixes reading of partition packs. The code stops reading after the
operational pattern and should skip the array of essence container
labels that follow.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agomxfdec: parse MXF partitions
Tomas Härdin [Mon, 7 Feb 2011 15:07:41 +0000 (16:07 +0100)]
mxfdec: parse MXF partitions

8 years agoavserver: fix build after the next bump.
Anton Khirnov [Thu, 12 Jan 2012 08:51:23 +0000 (09:51 +0100)]
avserver: fix build after the next bump.

Now that 0.8 is out we can reapply this commit. It breaks shared
avserver builds due to avserver using internal libavformat symbols,
which are now hidden, so this commit also disables avserver with
--enable-shared.

8 years agortsp: Use a random offset for trying to open UDP ports for RTP
Dmitry Volyntsev [Wed, 18 Jan 2012 09:46:37 +0000 (13:46 +0400)]
rtsp: Use a random offset for trying to open UDP ports for RTP

This avoids (for all practical cases) the issue of reusing
the same UDP port as for an earlier connection. If the remote
doesn't know the previous session was closed, he might keep
on sending packets to that port. If we always start off trying
to open the same UDP port, we might get those packets intermixed
with the new ones.

This is occasionally an issue when testing RTSP stuff with
DSS, perhaps also with other servers.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agortsp: Allow specifying the UDP port range via AVOptions
Martin Storsjö [Sat, 21 Jan 2012 21:28:11 +0000 (23:28 +0200)]
rtsp: Allow specifying the UDP port range via AVOptions

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agortsp: Remove a leftover, currently pointless check
Dmitry Volyntsev [Wed, 18 Jan 2012 09:54:16 +0000 (13:54 +0400)]
rtsp: Remove a leftover, currently pointless check

This check isn't relevant in the way the code currently works.

Also change a case of if (x == 0) into if (!x).

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agortpdec: Use our own SSRC in the SDES field when sending RRs
Martin Storsjö [Sat, 21 Jan 2012 15:20:45 +0000 (17:20 +0200)]
rtpdec: Use our own SSRC in the SDES field when sending RRs

The s->ssrc field is the sender's SSRC, we use ssrc + 1 to get
a collision free "unique" SSRC for ourselves in the RR part.
The SDES block in the RTCP packet should describe ourselves,
not the sender.

This was fixed for the RR part in 952139a3226b, but wasn't
fixed for the SDES part until now.

This could cause some Axis cameras to send RTCP BYE packets
to us due to the SSRC collision.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoFinalize changelog for 0.8 Release
Reinhard Tartler [Sat, 21 Jan 2012 17:37:25 +0000 (18:37 +0100)]
Finalize changelog for 0.8 Release

8 years agoPrepare for 0.8 Release
Reinhard Tartler [Sat, 21 Jan 2012 13:54:31 +0000 (14:54 +0100)]
Prepare for 0.8 Release

8 years agothreads: change the default for threads back to 1
Janne Grunau [Wed, 18 Jan 2012 09:53:41 +0000 (10:53 +0100)]
threads: change the default for threads back to 1

Using threaded decoding by default breaks backward compatibility if
AVHWAccel is used or if an appliction sets threadunsafe callbacks.
Avconv and avplay still use -threads auto if not specified.

8 years agothreads: update slice_count and slice_offset from user context
Janne Grunau [Fri, 20 Jan 2012 12:37:00 +0000 (13:37 +0100)]
threads: update slice_count and slice_offset from user context

They are used to signal the number of slices and offsets of each slice
out of band to the decoder.

8 years agoaviocat: Remove useless includes
Martin Storsjö [Sat, 21 Jan 2012 09:33:35 +0000 (11:33 +0200)]
aviocat: Remove useless includes

Also include stdlib.h explicitly - currently it is used
implicitly via avformat.h.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agodoc/APIChanges: fill in missing dates and hashes
Anton Khirnov [Sat, 21 Jan 2012 07:48:53 +0000 (08:48 +0100)]
doc/APIChanges: fill in missing dates and hashes

8 years agoRevert "avserver: fix build after the next bump."
Anton Khirnov [Sat, 21 Jan 2012 07:40:47 +0000 (08:40 +0100)]
Revert "avserver: fix build after the next bump."

This temporarily (until 0.8 is released) reverts commit
8e1340abc316e038bb89e5a3b46e92ff58c98a88. That commit breaks shared
builds because of symbol hiding. Reverting it will enable shared builds
for 0.8

8 years agompegaudiodec: switch error detection check to AV_EF_BUFFER
Dustin Brody [Mon, 16 Jan 2012 13:25:04 +0000 (08:25 -0500)]
mpegaudiodec: switch error detection check to AV_EF_BUFFER

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agolavf: rename fer option and document resulting (f_)err_detect options
Dustin Brody [Fri, 20 Jan 2012 08:53:54 +0000 (03:53 -0500)]
lavf: rename fer option and document resulting (f_)err_detect options

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agolavc: rename err_filter option to err_detect and document it
Dustin Brody [Fri, 20 Jan 2012 08:57:32 +0000 (03:57 -0500)]
lavc: rename err_filter option to err_detect and document it

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agompegvideo: fix invalid memory access for small video dimensions
John Brooks [Tue, 13 Dec 2011 00:04:14 +0000 (17:04 -0700)]
mpegvideo: fix invalid memory access for small video dimensions

When either video dimension is only one macroblock, subtractions
based on v_edge_pos and the macroblock size may be negative. In
that situation, an unsigned comparison isn't sufficent to test for
MV overruns, because a limit of (unsigned)-1 will let any other
value pass.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agomovenc: Reorder entries in the MOVIentry struct, for tigheter packing
Martin Storsjö [Fri, 20 Jan 2012 18:48:19 +0000 (20:48 +0200)]
movenc: Reorder entries in the MOVIentry struct, for tigheter packing

Originally, sizeof(struct MOVIentry) was 48, after the reordering,
it is 40 in my build configuration.

When writing really long mov/mp4 files, this can make a difference
- this saves a bit over 2 MB of memory per hour of video (down to
10.3 MB per hour from 12.3 MB per hour initially) for a video with
75 packets per second - 25 fps + 50 audio packets (which is the
case for AMR audio).

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agortsp: Remove extern declarations for variables that don't exist
Martin Storsjö [Fri, 20 Jan 2012 14:57:23 +0000 (16:57 +0200)]
rtsp: Remove extern declarations for variables that don't exist

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoaviocat: Flush the output before closing
Martin Storsjö [Fri, 20 Jan 2012 20:53:18 +0000 (22:53 +0200)]
aviocat: Flush the output before closing

Without this, the end of the file might not be transmitted/written.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoAdd a tool that uses avio to read and write, doing a plain copy of data
Martin Storsjö [Thu, 19 Jan 2012 12:01:19 +0000 (14:01 +0200)]
Add a tool that uses avio to read and write, doing a plain copy of data

It also optionally can throttle its operation to a particular
speed, to simulate realtime writing.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoARM: fix build with FFT enabled and MDCT disabled
Felipe Contreras [Fri, 20 Jan 2012 16:01:07 +0000 (16:01 +0000)]
ARM: fix build with FFT enabled and MDCT disabled

Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com>
Signed-off-by: Mans Rullgard <mans@mansr.com>
8 years agolavf: force single-threaded decoding in avformat_find_stream_info
Janne Grunau [Wed, 18 Jan 2012 19:32:32 +0000 (20:32 +0100)]
lavf: force single-threaded decoding in avformat_find_stream_info

The H.264 decoder needs SPS and PPS for initialization during
multi-threaded decoding. When probed single-threaded SPS and PPS are
copied to extradata and are available for proper initialization of
the decoder before the first frame is decoded.

8 years agoavidec: migrate last of lavf from FF_ER_* to AV_EF_*
Dustin Brody [Wed, 18 Jan 2012 09:16:42 +0000 (04:16 -0500)]
avidec: migrate last of lavf from FF_ER_* to AV_EF_*

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agoavserver: fix build after the next bump.
Anton Khirnov [Thu, 12 Jan 2012 08:51:23 +0000 (09:51 +0100)]
avserver: fix build after the next bump.

8 years agompeg12: check for available bits to avoid an infinite loop
Jindřich Makovička [Wed, 18 Jan 2012 21:07:22 +0000 (22:07 +0100)]
mpeg12: check for available bits to avoid an infinite loop

Signed-off-by: Jindrich Makovicka <makovick@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
8 years agofate: add some shorthands to run groups of tests
Diego Biurrun [Wed, 11 Jan 2012 12:42:17 +0000 (13:42 +0100)]
fate: add some shorthands to run groups of tests

8 years agofate: Give some tests more sensible names.
Diego Biurrun [Wed, 11 Jan 2012 12:37:29 +0000 (13:37 +0100)]
fate: Give some tests more sensible names.

8 years agocosmetics: Rename ffsink to avsink.
Diego Biurrun [Wed, 18 Jan 2012 22:00:12 +0000 (23:00 +0100)]
cosmetics: Rename ffsink to avsink.

8 years agoavprobe, cmdutils: K&R formatting cosmetics
Gaurav Narula [Wed, 18 Jan 2012 19:54:04 +0000 (20:54 +0100)]
avprobe, cmdutils: K&R formatting cosmetics

8 years agotests: K&R formatting cosmetics for test programs
Gaurav Narula [Wed, 18 Jan 2012 19:51:54 +0000 (20:51 +0100)]
tests: K&R formatting cosmetics for test programs

8 years agolavf: free packets for muxers implementing interleave_packet().
Anton Khirnov [Wed, 18 Jan 2012 07:07:40 +0000 (08:07 +0100)]
lavf: free packets for muxers implementing interleave_packet().

Fixes a memleak.

8 years agolavf: fix and extend av_interleaved_write_frame() doxy.
Anton Khirnov [Wed, 18 Jan 2012 06:59:02 +0000 (07:59 +0100)]
lavf: fix and extend av_interleaved_write_frame() doxy.

Specify that lavf is responsible for freeing the data.

8 years agomov: Remove dead stores for spherical coordinates for channel position.
Alex Converse [Wed, 18 Jan 2012 00:58:16 +0000 (16:58 -0800)]
mov: Remove dead stores for spherical coordinates for channel position.

8 years agoerror_resilience: K&R formatting cosmetics
Donald Ovcharov [Sat, 17 Dec 2011 19:30:01 +0000 (21:30 +0200)]
error_resilience: K&R formatting cosmetics

Signed-off-by: Diego Biurrun <diego@biurrun.de>
8 years agoRELEASE_NOTES: mention hiding private symbols in shared builds.
Anton Khirnov [Tue, 17 Jan 2012 12:38:35 +0000 (13:38 +0100)]
RELEASE_NOTES: mention hiding private symbols in shared builds.

8 years agoRELEASE_NOTES: mention some notable API changes in 0.8
Anton Khirnov [Tue, 17 Jan 2012 11:42:34 +0000 (12:42 +0100)]
RELEASE_NOTES: mention some notable API changes in 0.8

8 years agotta: cast output data pointer to the correct type
Justin Ruggles [Sat, 7 Jan 2012 15:25:32 +0000 (10:25 -0500)]
tta: cast output data pointer to the correct type

fixes "warning: assignment from incompatible pointer type"

8 years agoavconv: fix -frames for video encoders with delay.
Anton Khirnov [Mon, 2 Jan 2012 08:22:41 +0000 (09:22 +0100)]
avconv: fix -frames for video encoders with delay.

Frames must be counted when they are passed to the encoder, not when
they come out.

Fixes Bug 202.

8 years agorv34: add NEON rv34_idct_add
Janne Grunau [Sun, 15 Jan 2012 18:16:02 +0000 (19:16 +0100)]
rv34: add NEON rv34_idct_add

Overall almost 4% faster, idct_add down from 350 to 85 cycles, idct_dc_add
down from 83 to 30 cycles.

squash: rv34 idct rearrange partial register loads

8 years agorv34: 1-pass inter MB reconstruction
Christophe GISQUET [Tue, 3 Jan 2012 19:38:29 +0000 (20:38 +0100)]
rv34: 1-pass inter MB reconstruction

Implement 1-pass inverse transform and reconstruction for inter blocks.

8 years agoadd SMJPEG muxer
Paul B Mahol [Sat, 14 Jan 2012 19:29:59 +0000 (19:29 +0000)]
add SMJPEG muxer

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
8 years agoavformat: split out common SMJPEG code
Paul B Mahol [Sat, 14 Jan 2012 16:47:07 +0000 (16:47 +0000)]
avformat: split out common SMJPEG code

This is a preparation for adding SMJPEG muxer.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
8 years agopictordec: Use bytestream2 functions
Laurentiu Ion [Mon, 16 Jan 2012 02:47:07 +0000 (04:47 +0200)]
pictordec: Use bytestream2 functions

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
8 years agoavconv: use avcodec_encode_audio2()
Justin Ruggles [Sat, 31 Dec 2011 14:36:25 +0000 (09:36 -0500)]
avconv: use avcodec_encode_audio2()

8 years agopcmenc: use AVCodec.encode2()
Justin Ruggles [Sun, 8 Jan 2012 22:37:16 +0000 (17:37 -0500)]
pcmenc: use AVCodec.encode2()

8 years agoavcodec: bump minor version and add APIChanges for the new audio encoding API
Justin Ruggles [Mon, 19 Dec 2011 00:47:38 +0000 (19:47 -0500)]
avcodec: bump minor version and add APIChanges for the new audio encoding API

8 years agoavcodec: Add avcodec_encode_audio2() as replacement for avcodec_encode_audio()
Justin Ruggles [Sun, 18 Dec 2011 18:20:15 +0000 (13:20 -0500)]
avcodec: Add avcodec_encode_audio2() as replacement for avcodec_encode_audio()

This allows audio encoders to optionally take an AVFrame as input and write
encoded output to an AVPacket.

This also adds AVCodec.encode2() which will also be usable by video and
subtitle encoders once support is implemented in the public functions.

8 years agoavcodec: add a public function, avcodec_fill_audio_frame().
Justin Ruggles [Thu, 15 Dec 2011 22:56:06 +0000 (17:56 -0500)]
avcodec: add a public function, avcodec_fill_audio_frame().

This is a convenience function for the user to fill audio AVFrame information.

8 years agorv34: Intra 16x16 handling
Christophe GISQUET [Mon, 2 Jan 2012 23:22:11 +0000 (00:22 +0100)]
rv34: Intra 16x16 handling

Extract processing of intra 16x16 blocks from intra macroblock
processing.
Also implement a function performing inverse transform and block
reconstruction for DC-only blocks in 1 pass instead of 2.

8 years agorv34: Inter/intra MB code split
Christophe GISQUET [Mon, 2 Jan 2012 19:53:54 +0000 (20:53 +0100)]
rv34: Inter/intra MB code split

Split inter/intra macroblock handling code. This will allow further
optimizations such as performing inverse transform and block reconstruction
in a single pass as well as specialize code.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
8 years agofate: split ADPCM and DPCM test references into separate files.
Diego Biurrun [Thu, 12 Jan 2012 23:58:22 +0000 (00:58 +0100)]
fate: split ADPCM and DPCM test references into separate files.

8 years agomov, mxfdec: Employ more meaningful return values.
Daniel Huang [Sat, 14 Jan 2012 21:25:12 +0000 (15:25 -0600)]
mov, mxfdec: Employ more meaningful return values.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
8 years agolavc: Relax API strictness in avcodec_decode_audio3 with a custom get_buffer()
Reinhard Tartler [Sun, 15 Jan 2012 19:32:11 +0000 (20:32 +0100)]
lavc: Relax API strictness in avcodec_decode_audio3 with a custom get_buffer()

Do not fail audio decoding with avcodec_decode_audio3 if user has set a
custom get_buffer. Strictly speaking, this was never allowed by the API,
but it seems that some software packages did so anyways. In order to
unbreak applications (cf. http://bugs.debian.org/655890), this change
clarifies the API and overrides the custom get_buffer() with the defaults.

This change is inspired by a similar
commit (c3846e3ebab610be691adb8b40d376dc2f675dc4) in FFmpeg.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
8 years agowavpack: fix clipping for 32-bit lossy mode
Kostya Shishkov [Sun, 15 Jan 2012 13:23:28 +0000 (14:23 +0100)]
wavpack: fix clipping for 32-bit lossy mode

Reference decoder clips data before shifting it to final range and also
forces 32-bit lossy mode to be actually 24-bit lossy mode in order to be
able to perform proper clipping.

8 years agovb: Use bytestream2 functions
Laurentiu Ion [Sat, 14 Jan 2012 19:04:59 +0000 (21:04 +0200)]
vb: Use bytestream2 functions

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
8 years agosgidec: Use bytestream2 functions to prevent buffer overreads.
Aneesh Dogra [Fri, 13 Jan 2012 17:35:57 +0000 (23:05 +0530)]
sgidec: Use bytestream2 functions to prevent buffer overreads.

The patch also adds several bytestream macros to deal with native endian.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
8 years agocosmetics: Move static and inline attributes to more standard places.
Diego Biurrun [Fri, 13 Jan 2012 15:35:54 +0000 (16:35 +0100)]
cosmetics: Move static and inline attributes to more standard places.

Fixes several "‘static’ is not at beginning of declaration" warnings.

8 years agoconfigure: provide libavfilter/version.h header to get_version()
Stefano Sabatini [Fri, 13 Jan 2012 15:23:55 +0000 (16:23 +0100)]
configure: provide libavfilter/version.h header to get_version()

Fix libavfilter library version numbers generation, which was broken in
3167dc9515810bbdd86d99d773bcf84657d2e72a.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agoswscale: change yuv2yuvX code to use cpuflag().
Ronald S. Bultje [Fri, 13 Jan 2012 19:21:15 +0000 (11:21 -0800)]
swscale: change yuv2yuvX code to use cpuflag().

8 years agolibx264: Don't leave max_b_frames as -1 if the user didn't set it
Martin Storsjö [Fri, 13 Jan 2012 21:41:16 +0000 (23:41 +0200)]
libx264: Don't leave max_b_frames as -1 if the user didn't set it

max_b_frames is initialized to -1 for libx264, to allow
distinguishing between an explicit user set 0 and a default not
touched 0 (see bb73cda2).

If max_b_frames is left as -1, this affects dts generation (where
expressions like max_b_frames != 0 are used), so make sure it is
left at the default 0 after the libx264 init function returns.

This avoids unnecessarily producing dts != pts when using
profile=baseline.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoFATE: convert output to rgba for the targa tests which currently output pal8
Justin Ruggles [Fri, 13 Jan 2012 23:40:12 +0000 (18:40 -0500)]
FATE: convert output to rgba for the targa tests which currently output pal8

fixes the tests on big-endian systems

8 years agofate: add missing reference files for targa tests in 9c2f9b0e2
Janne Grunau [Fri, 13 Jan 2012 22:52:59 +0000 (23:52 +0100)]
fate: add missing reference files for targa tests in 9c2f9b0e2

Fixes fate-targa-conformance-CCM8 and fate-targa-conformance-UCM8.

8 years agoFATE: enable the 2 remaining targa conformance suite tests
Justin Ruggles [Fri, 13 Jan 2012 21:41:15 +0000 (16:41 -0500)]
FATE: enable the 2 remaining targa conformance suite tests

8 years agotarga: add support for rgb555 palette
Justin Ruggles [Mon, 2 Jan 2012 20:17:12 +0000 (15:17 -0500)]
targa: add support for rgb555 palette

8 years agoFATE: fix targa tests on big-endian systems
Justin Ruggles [Fri, 13 Jan 2012 21:14:48 +0000 (16:14 -0500)]
FATE: fix targa tests on big-endian systems

8 years agoFATE: add tests for targa
Justin Ruggles [Thu, 12 Jan 2012 01:06:46 +0000 (20:06 -0500)]
FATE: add tests for targa

Based on a patch by Oana Stratulat <oanaandreeastratulat@gmail.com>

8 years agoARM: fix Thumb-mode simple_idct_arm
Mans Rullgard [Fri, 13 Jan 2012 19:03:14 +0000 (19:03 +0000)]
ARM: fix Thumb-mode simple_idct_arm

The alignment directive must obviously precede the label.
This was never noticed in ARM mode since the location is
already aligned there.

Signed-off-by: Mans Rullgard <mans@mansr.com>
8 years agoARM: 4-byte align start of all asm functions
Mans Rullgard [Fri, 13 Jan 2012 18:56:36 +0000 (18:56 +0000)]
ARM: 4-byte align start of all asm functions

Due to apprent bugs in the GNU assembler and/or linker, relocations
can be incorrectly processed if the alignment of a Thumb instruction
is changed in the output file compared to the input object.

This fixes crashes in h264 decoding with Thumb enabled. No effect in
ARM mode since everything is 4-byte aligned there.

Signed-off-by: Mans Rullgard <mans@mansr.com>