]> git.sesse.net Git - ffmpeg/log
ffmpeg
12 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Tue, 31 Jan 2012 00:14:58 +0000 (01:14 +0100)]
Merge remote-tracking branch 'qatar/master'

* qatar/master: (26 commits)
  avconv: deprecate the -deinterlace option
  doc: Fix the name of the new function
  aacenc: make sure to encode enough frames to cover all input samples.
  aacenc: only use the number of input samples provided by the user.
  wmadec: Verify bitstream size makes sense before calling init_get_bits.
  kmvc: Log into a context at a log level constant.
  mpeg12: Pad framerate tab to 16 entries.
  kgv1dec: Increase offsets array size so it is large enough.
  kmvc: Check palsize.
  nsvdec: Propagate errors
  nsvdec: Be more careful with av_malloc().
  nsvdec: Fix use of uninitialized streams.
  movenc: cosmetics: Get rid of camelCase identifiers
  swscale: more generic check for planar destination formats with alpha
  doc: Document mov/mp4 fragmentation options
  build: Use order-only prerequisites for creating FATE reference file dirs.
  x86 dsputil: provide SSE2/SSSE3 versions of bswap_buf
  rtsp: Remove some unused variables from ff_rtsp_connect().
  avutil: make intfloat api public
  avformat_write_header(): detail error message
  ...

Conflicts:
doc/APIchanges
doc/ffmpeg.texi
doc/muxers.texi
ffmpeg.c
libavcodec/kmvc.c
libavcodec/x86/Makefile
libavcodec/x86/dsputil_yasm.asm
libavcodec/x86/pngdsp-init.c
libavformat/movenc.c
libavformat/movenc.h
libavformat/mpegtsenc.c
libavformat/nsvdec.c
libavformat/utils.c
libavutil/avutil.h
libswscale/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
12 years agoavidec: print informative error messages if seeking fails.
Michael Niedermayer [Mon, 30 Jan 2012 22:52:03 +0000 (23:52 +0100)]
avidec: print informative error messages if seeking fails.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agoAllow decoding of 64bit png images.
Carl Eugen Hoyos [Mon, 30 Jan 2012 23:13:24 +0000 (00:13 +0100)]
Allow decoding of 64bit png images.

Fixes a part of ticket #639.

12 years agoSimplify "deloco" and support decoding of 48bit loco png.
Carl Eugen Hoyos [Mon, 30 Jan 2012 23:03:26 +0000 (00:03 +0100)]
Simplify "deloco" and support decoding of 48bit loco png.

12 years agoSupoort decoding of gray16 images with libopenjpeg.
Michael Bradshaw [Mon, 30 Jan 2012 22:53:25 +0000 (23:53 +0100)]
Supoort decoding of gray16 images with libopenjpeg.

12 years agomp3dec: fix truncating packet error message while decoding a complete MP3.
Clément Bœsch [Sat, 21 Jan 2012 21:53:57 +0000 (22:53 +0100)]
mp3dec: fix truncating packet error message while decoding a complete MP3.

The MP3 demuxer split the data in packets of 1024B which are later split
in MP3 frames by the MPEG audio parser. The last read is "truncated",
but this should not raise any error.

Solution-by: Michael Niedermayer
12 years agoassdec: fix wrong alloc pointer check.
Clément Bœsch [Sun, 29 Jan 2012 13:47:04 +0000 (14:47 +0100)]
assdec: fix wrong alloc pointer check.

12 years agoass: use av_asprintf() instead of a temporary stack buffer.
Clément Bœsch [Sat, 28 Jan 2012 17:13:07 +0000 (18:13 +0100)]
ass: use av_asprintf() instead of a temporary stack buffer.

12 years agoavconv: deprecate the -deinterlace option
Anton Khirnov [Mon, 30 Jan 2012 15:05:28 +0000 (16:05 +0100)]
avconv: deprecate the -deinterlace option

Its quality is horrible, yadif should always be used instead.

12 years agodiracdec: Fix integer overflow leading to out of global array read.
Michael Niedermayer [Sun, 29 Jan 2012 02:38:58 +0000 (03:38 +0100)]
diracdec: Fix integer overflow leading to out of global array read.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agofate: add support for specifying the shell used to run configure
Michael Niedermayer [Mon, 30 Jan 2012 00:57:33 +0000 (01:57 +0100)]
fate: add support for specifying the shell used to run configure

Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agodoc: Fix the name of the new function
Martin Storsjö [Mon, 30 Jan 2012 19:11:33 +0000 (21:11 +0200)]
doc: Fix the name of the new function

Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agoaacenc: make sure to encode enough frames to cover all input samples.
Justin Ruggles [Sat, 28 Jan 2012 22:51:22 +0000 (17:51 -0500)]
aacenc: make sure to encode enough frames to cover all input samples.

Currently, any samples in the final frame are not decoded because they are
only represented by one frame instead of two. So we encode two final frames to
cover both the analysis delay and the MDCT delay.

12 years agoaacenc: only use the number of input samples provided by the user.
Justin Ruggles [Sat, 28 Jan 2012 22:18:18 +0000 (17:18 -0500)]
aacenc: only use the number of input samples provided by the user.

Fixes handling of CODEC_CAP_SMALL_LAST_FRAME.

12 years agowmadec: Verify bitstream size makes sense before calling init_get_bits.
Alex Converse [Fri, 27 Jan 2012 22:24:07 +0000 (14:24 -0800)]
wmadec: Verify bitstream size makes sense before calling init_get_bits.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
12 years agokmvc: Log into a context at a log level constant.
Alex Converse [Mon, 30 Jan 2012 18:27:50 +0000 (10:27 -0800)]
kmvc: Log into a context at a log level constant.

12 years agompeg12: Pad framerate tab to 16 entries.
Alex Converse [Fri, 27 Jan 2012 23:50:24 +0000 (15:50 -0800)]
mpeg12: Pad framerate tab to 16 entries.

There are many places where we read an unchecked 4-bit index into it.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
12 years agokgv1dec: Increase offsets array size so it is large enough.
Michael Niedermayer [Wed, 25 Jan 2012 22:23:35 +0000 (23:23 +0100)]
kgv1dec: Increase offsets array size so it is large enough.

Fixes CVE-2011-3945

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 807a045ab7f51993a2c1b3116016cbbd4f3d20d6)

Signed-off-by: Alex Converse <alex.converse@gmail.com>
12 years agokmvc: Check palsize.
Alex Converse [Thu, 26 Jan 2012 16:30:49 +0000 (17:30 +0100)]
kmvc: Check palsize.

Fixes: CVE-2011-3952
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Based on fix by Michael Niedermayer

12 years agonsvdec: Propagate errors
Alex Converse [Fri, 27 Jan 2012 01:23:09 +0000 (17:23 -0800)]
nsvdec: Propagate errors

Related to CVE-2011-3940.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
12 years agonsvdec: Be more careful with av_malloc().
Alex Converse [Fri, 27 Jan 2012 01:21:46 +0000 (17:21 -0800)]
nsvdec: Be more careful with av_malloc().

Check results for av_malloc() and fix an overflow in one call.

Related to CVE-2011-3940.

Based in part on work from Michael Niedermayer.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
12 years agonsvdec: Fix use of uninitialized streams.
Michael Niedermayer [Tue, 24 Jan 2012 21:20:26 +0000 (22:20 +0100)]
nsvdec: Fix use of uninitialized streams.

Fixes CVE-2011-3940 (Out of bounds read resulting in out of bounds write)

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 5c011706bc752d34bc6ada31d7df2ca0c9af7c6b)

Signed-off-by: Alex Converse <alex.converse@gmail.com>
12 years agohuffman: use a simple assignment instead of FFSWAP.
Reimar Döffinger [Sun, 29 Jan 2012 20:45:19 +0000 (21:45 +0100)]
huffman: use a simple assignment instead of FFSWAP.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoDeobfuscate ff_huff_build_tree.
Reimar Döffinger [Sun, 29 Jan 2012 20:23:59 +0000 (21:23 +0100)]
Deobfuscate ff_huff_build_tree.

I have no idea what the idea was behind the original code,
but the new code is equivalent to it.
In that loop that places the new node nodes[j] contains
always the data of the new node (since the steps are always
in order: FFSWAP copies node[j] to node[j-1], j is decremented).
Thus nodes[j].no == i and nodes[j].sym == HNODE.
make fate still passes and contains VP6 samples which use
FF_HUFFMAN_FLAG_HNODE_FIRST.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agomovenc: cosmetics: Get rid of camelCase identifiers
Martin Storsjö [Mon, 30 Jan 2012 14:19:15 +0000 (16:19 +0200)]
movenc: cosmetics: Get rid of camelCase identifiers

Also add spacing around operators on touched lines, and split
one line to match the common style.

Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agoswscale: more generic check for planar destination formats with alpha
Paul B Mahol [Mon, 30 Jan 2012 13:58:50 +0000 (13:58 +0000)]
swscale: more generic check for planar destination formats with alpha

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agodoc: Document mov/mp4 fragmentation options
Martin Storsjö [Fri, 20 Jan 2012 18:33:13 +0000 (20:33 +0200)]
doc: Document mov/mp4 fragmentation options

Signed-off-by: Martin Storsjö <martin@martin.st>
12 years agobuild: Use order-only prerequisites for creating FATE reference file dirs.
Diego Biurrun [Sun, 29 Jan 2012 21:08:58 +0000 (22:08 +0100)]
build: Use order-only prerequisites for creating FATE reference file dirs.

12 years agoCosmetics: Add bit per component information to v308 comment.
Carl Eugen Hoyos [Mon, 30 Jan 2012 10:30:52 +0000 (11:30 +0100)]
Cosmetics: Add bit per component information to v308 comment.

12 years agoDetect jps and pns files as (3D) jpg and png images.
Martin Lambers [Mon, 30 Jan 2012 10:28:08 +0000 (11:28 +0100)]
Detect jps and pns files as (3D) jpg and png images.

12 years agoAdd option forced_subs_only for Bluray subtitles.
Carl Eugen Hoyos [Mon, 30 Jan 2012 10:25:59 +0000 (11:25 +0100)]
Add option forced_subs_only for Bluray subtitles.

12 years agoAdd pix_fmt_info for yuva444.
Carl Eugen Hoyos [Mon, 30 Jan 2012 10:24:02 +0000 (11:24 +0100)]
Add pix_fmt_info for yuva444.

Reviewed-by: Paul B Mahol
12 years agox86 dsputil: provide SSE2/SSSE3 versions of bswap_buf
Christophe Gisquet [Thu, 19 Jan 2012 20:48:39 +0000 (21:48 +0100)]
x86 dsputil: provide SSE2/SSSE3 versions of bswap_buf

While pshufb allows emulating bswap on XMM registers for SSSE3, more
shuffling is needed for SSE2. Alignment is critical, so specific codepaths
are provided for this case.

For the huffyuv sequence "angels_480-huffyuvcompress.avi":
C (using bswap instruction): ~ 55k cycles
SSE2:                        ~ 40k cycles
SSSE3 using unaligned loads: ~ 35k cycles
SSSE3 using aligned loads:   ~ 30k cycles

Signed-off-by: Diego Biurrun <diego@biurrun.de>
12 years agortsp: Remove some unused variables from ff_rtsp_connect().
Diego Biurrun [Mon, 30 Jan 2012 08:38:41 +0000 (09:38 +0100)]
rtsp: Remove some unused variables from ff_rtsp_connect().

12 years agoavutil: make intfloat api public
Paul B Mahol [Sun, 29 Jan 2012 20:09:22 +0000 (20:09 +0000)]
avutil: make intfloat api public

The functions are already av_ prefixed and intfloat header is already provided.
Install libavutil/intfloat.h

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agoavformat_write_header(): detail error message
Rafaël Carré [Sun, 29 Jan 2012 04:29:26 +0000 (23:29 -0500)]
avformat_write_header(): detail error message

Give the exact aspect ratios when there is a mismatch between encoder
and muxer.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agos/vbsf/bsf/
Mike Melanson [Mon, 30 Jan 2012 05:29:25 +0000 (21:29 -0800)]
s/vbsf/bsf/

-vbsf doesn't exist anymore. It got renamed to -bsf somewhere along the
line. Update print statement accordingly.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agoyuv4mpeg: allow YUV4MPEG2 demuxer to recognize 'C420' colorspace.
Mike Melanson [Mon, 30 Jan 2012 05:24:41 +0000 (21:24 -0800)]
yuv4mpeg: allow YUV4MPEG2 demuxer to recognize 'C420' colorspace.

Current demuxer recognizes several colorspace formats that begin with 'C420'
but does not yet recognize plain 'C420'. GStreamer's y4menc component
generates .y4m files with a 'C420' colorspace. This new comparison is
placed after the other 'C420' checks so that it doesn't interfere with
them.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agopng: add support for bpp>4 to paeth x86 SIMD code.
Ronald S. Bultje [Fri, 27 Jan 2012 15:28:28 +0000 (23:28 +0800)]
png: add support for bpp>4 to paeth x86 SIMD code.

This fixes playback of e.g. RGB48 (bpp=6) content on x86 CPUs. Fixes
bug 214.

12 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Mon, 30 Jan 2012 04:20:58 +0000 (05:20 +0100)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  png: add missing #if HAVE_SSSE3 around function pointer assignment.
  imdct36: mark SSE functions as using all 16 XMM registers.
  png: move DSP functions to their own DSP context.
  sunrast: Add a sample request for TIFF, IFF, and Experimental Rastfile formats.
  sunrast: Cosmetics
  sunrast: Remove if (unsigned int < 0) check.
  sunrast: Replace magic number by a macro.

Conflicts:
libavcodec/dsputil.c
libavcodec/dsputil.h
libavcodec/pngdec.c
libavcodec/sunrast.c
libavcodec/x86/Makefile
libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
12 years agopng: add SSE2 version for add_bytes_l2.
Ronald S. Bultje [Fri, 27 Jan 2012 15:23:05 +0000 (23:23 +0800)]
png: add SSE2 version for add_bytes_l2.

12 years agopng: convert DSP functions to yasm.
Ronald S. Bultje [Fri, 27 Jan 2012 15:21:55 +0000 (23:21 +0800)]
png: convert DSP functions to yasm.

12 years agoFix non-C89 declarations in for loops
Mans Rullgard [Sun, 29 Jan 2012 20:55:10 +0000 (20:55 +0000)]
Fix non-C89 declarations in for loops

Some compilers still do not support this syntax.

Signed-off-by: Mans Rullgard <mans@mansr.com>
12 years agobuild: configure: Restore alphabetical order for CMDLINE_SET
Alexander Strasser [Sun, 29 Jan 2012 21:56:12 +0000 (22:56 +0100)]
build: configure: Restore alphabetical order for CMDLINE_SET

12 years agoFix offset validity checks.
Reimar Döffinger [Sun, 29 Jan 2012 17:16:23 +0000 (18:16 +0100)]
Fix offset validity checks.

Offsets are relative to the end of the header, not the
start of the buffer, thus the buffer size needs to be subtracted.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agofraps: frame threading support.
Reimar Döffinger [Sun, 29 Jan 2012 13:59:32 +0000 (14:59 +0100)]
fraps: frame threading support.

Codec is too simple to gain much from it at lower resolutions,
but should help at very high resolutions, particularly for
v3 and v5 where a not too optimized pseudo-YUV to RGB
is done in the codec.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agofraps: Deduplicate some code.
Reimar Döffinger [Sun, 29 Jan 2012 13:43:28 +0000 (14:43 +0100)]
fraps: Deduplicate some code.

Also moves it before the get_buffer call so that most error exits
happen before it.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agofraps: Minor simplification, use local variable.
Reimar Döffinger [Sun, 29 Jan 2012 13:50:58 +0000 (14:50 +0100)]
fraps: Minor simplification, use local variable.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agopng: add missing #if HAVE_SSSE3 around function pointer assignment.
Ronald S. Bultje [Sun, 29 Jan 2012 20:31:59 +0000 (12:31 -0800)]
png: add missing #if HAVE_SSSE3 around function pointer assignment.

12 years agor210enc: don't write uninitialized data
Paul B Mahol [Sun, 29 Jan 2012 19:03:04 +0000 (19:03 +0000)]
r210enc: don't write uninitialized data

Also fix r210 fate decoding test.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agofate: add v308 encoding/decoding test
Paul B Mahol [Sun, 29 Jan 2012 13:18:59 +0000 (13:18 +0000)]
fate: add v308 encoding/decoding test

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agolibvpxenc: update after FF_API_X264_GLOBAL_OPTS removal
Paul B Mahol [Sun, 29 Jan 2012 15:05:10 +0000 (15:05 +0000)]
libvpxenc: update after FF_API_X264_GLOBAL_OPTS removal

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agofate: add yuv4 encoding/decoding test
Paul B Mahol [Sun, 29 Jan 2012 12:00:56 +0000 (12:00 +0000)]
fate: add yuv4 encoding/decoding test

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agobintext: use private options now that AVFormatParameters has been removed
Peter Ross [Sun, 29 Jan 2012 01:12:57 +0000 (12:12 +1100)]
bintext: use private options now that AVFormatParameters has been removed

Reviewed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agoImprove decoding quality for lossy wavpack.
Carl Eugen Hoyos [Sun, 29 Jan 2012 16:50:17 +0000 (17:50 +0100)]
Improve decoding quality for lossy wavpack.

This reverts e6e7bfc1 and 365e1ec2.
The code may be incorrect both before and after the revert, but we
do not have any samples that were fixed by the original commits.

Fixes ticket #871.

12 years agofraps: optimize pseudo-YUV to RGB conversion.
Reimar Döffinger [Sun, 29 Jan 2012 14:40:48 +0000 (15:40 +0100)]
fraps: optimize pseudo-YUV to RGB conversion.

With gcc 4.6 this part of the code is ca. 4x faster, resulting
in an overall speedup of around 5% for fate-fraps-v5 sample.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoimdct36: mark SSE functions as using all 16 XMM registers.
Ronald S. Bultje [Sun, 29 Jan 2012 16:14:05 +0000 (08:14 -0800)]
imdct36: mark SSE functions as using all 16 XMM registers.

On x86-64, it indeed uses all 16 registers (and on x86-32, this gets
clipped to 8). Not marking it properly causes callers of this function
to fail randomly because of XMM register clobbering.

12 years agopng: move DSP functions to their own DSP context.
Ronald S. Bultje [Fri, 27 Jan 2012 15:00:36 +0000 (23:00 +0800)]
png: move DSP functions to their own DSP context.

12 years agosunrast: Add a sample request for TIFF, IFF, and Experimental Rastfile formats.
Aneesh Dogra [Sat, 28 Jan 2012 13:04:15 +0000 (18:34 +0530)]
sunrast: Add a sample request for TIFF, IFF, and Experimental Rastfile formats.

Signed-off-by: Aneesh Dogra <lionaneesh@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agosunrast: Cosmetics
Aneesh Dogra [Sat, 28 Jan 2012 13:04:14 +0000 (18:34 +0530)]
sunrast: Cosmetics

Signed-off-by: Aneesh Dogra <lionaneesh@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agosunrast: Remove if (unsigned int < 0) check.
Aneesh Dogra [Sun, 29 Jan 2012 05:25:32 +0000 (10:55 +0530)]
sunrast: Remove if (unsigned int < 0) check.

Note: This fixes the following GCC warning :-
libavcodec/sunrast.c:94: warning: comparison of unsigned expression < 0 is always false.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agosunrast: Replace magic number by a macro.
Aneesh Dogra [Sat, 28 Jan 2012 13:04:12 +0000 (18:34 +0530)]
sunrast: Replace magic number by a macro.

Signed-off-by: Aneesh Dogra <lionaneesh@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
12 years agoFix dvb subtitle decoding when display segment is missing.
Paul Kendall [Sun, 29 Jan 2012 13:50:19 +0000 (14:50 +0100)]
Fix dvb subtitle decoding when display segment is missing.

12 years agofraps: Add release_buffer forgotten when reget_buffer was removed.
Reimar Döffinger [Sun, 29 Jan 2012 13:47:36 +0000 (14:47 +0100)]
fraps: Add release_buffer forgotten when reget_buffer was removed.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agofraps: fix indentation.
Reimar Döffinger [Sun, 29 Jan 2012 13:21:36 +0000 (14:21 +0100)]
fraps: fix indentation.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoFRAPS: Do not needlessly use reget_buffer.
Reimar Döffinger [Sat, 28 Jan 2012 22:07:54 +0000 (23:07 +0100)]
FRAPS: Do not needlessly use reget_buffer.

Codec has only I- and skip-frames, so there is no
need for reget_buffer, change it so it works with
get_buffer.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoFallback to input timestamps for non-delay encoders.
Reimar Döffinger [Sun, 22 Jan 2012 10:23:47 +0000 (11:23 +0100)]
Fallback to input timestamps for non-delay encoders.

Causes FFmpeg to pass through the correct pts values,
instead of clobbering all to AV_NOPTS_VALUE (the av_init_packet
default) to then make up new ones based on only fps when muxing.
Included are also the related FATE ref changes, which all
some reasonable on quick investigation.
Also set all H.264 references to us -vsync drop to reduce the
diff for the ref files.
Otherwise almost all H.264 references need to change, mostly due
to now starting with negative pts values.
About 20 additional H.264 conformance tests needed -vsync
drop anyway because they create pts values that are out of
order and thus not possible to mux otherwise.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agofate: fix r210 test on big endian
Paul B Mahol [Sun, 29 Jan 2012 02:37:11 +0000 (02:37 +0000)]
fate: fix r210 test on big endian

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agofate: add R210 encoding/decoding test
Paul B Mahol [Sun, 29 Jan 2012 00:32:30 +0000 (00:32 +0000)]
fate: add R210 encoding/decoding test

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agor210enc: fix encoding for unaligned widths
Paul B Mahol [Sun, 29 Jan 2012 00:32:16 +0000 (00:32 +0000)]
r210enc: fix encoding for unaligned widths

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agofate: add Y41P encoding/decoding test
Paul B Mahol [Sun, 29 Jan 2012 00:31:17 +0000 (00:31 +0000)]
fate: add Y41P encoding/decoding test

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Sat, 28 Jan 2012 23:34:59 +0000 (00:34 +0100)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  aacenc: Fix LONG_START windowing.
  aacenc: Fix a bug where deinterleaved samples were stored in the wrong place.
  avplay: use the correct array size for stride.
  lavc: extend doxy for avcodec_alloc_context3().
  APIchanges: mention avcodec_alloc_context()/2/3
  avcodec_align_dimensions2: set only 4 linesizes, not AV_NUM_DATA_POINTERS.
  aacsbr: ARM NEON optimised sbrdsp functions
  aacsbr: align some arrays
  aacsbr: move some simdable loops to function pointers
  cosmetics: Remove extra newlines at EOF

Conflicts:
libavcodec/utils.c
libavfilter/formats.c
libavutil/mem.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
12 years agorawenc: initialize coded_frame via avcodec_get_frame_defaults.
Reimar Döffinger [Sat, 28 Jan 2012 21:04:22 +0000 (22:04 +0100)]
rawenc: initialize coded_frame via avcodec_get_frame_defaults.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agolibgsm: Fix compilation.
Reimar Döffinger [Sat, 28 Jan 2012 22:15:02 +0000 (23:15 +0100)]
libgsm: Fix compilation.

Move libgsm_encode_close before its first use and call it
with the correct number of arguments.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agov210x: check for return value of avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 20:27:35 +0000 (20:27 +0000)]
v210x: check for return value of avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agov210enc: remove redundant assignment
Paul B Mahol [Sat, 28 Jan 2012 20:27:17 +0000 (20:27 +0000)]
v210enc: remove redundant assignment

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agov210enc: check return value of avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 20:27:17 +0000 (20:27 +0000)]
v210enc: check return value of avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agov210dec: check return value of avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 20:25:59 +0000 (20:25 +0000)]
v210dec: check return value of avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agoroqaudioenc: check return value of avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 20:12:43 +0000 (20:12 +0000)]
roqaudioenc: check return value of avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agoroqaudioenc: remove redundant assignment
Paul B Mahol [Sat, 28 Jan 2012 20:12:43 +0000 (20:12 +0000)]
roqaudioenc: remove redundant assignment

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agor210dec: check return value of avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 20:09:05 +0000 (20:09 +0000)]
r210dec: check return value of avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agopcm: remove redundant assignment
Paul B Mahol [Sat, 28 Jan 2012 20:06:36 +0000 (20:06 +0000)]
pcm: remove redundant assignment

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agopcm: check return value of avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 20:06:36 +0000 (20:06 +0000)]
pcm: check return value of avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agolibopencore-amr: fix memleak
Paul B Mahol [Sat, 28 Jan 2012 20:01:09 +0000 (20:01 +0000)]
libopencore-amr: fix memleak

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agolibopencore-amr: check return value of avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 20:01:09 +0000 (20:01 +0000)]
libopencore-amr: check return value of avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agolibmp3lame: remove dupe assigment
Paul B Mahol [Sat, 28 Jan 2012 19:55:47 +0000 (19:55 +0000)]
libmp3lame: remove dupe assigment

It is already done by avcodec_alloc_context().

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agolibgsm: remove dupe assigment.
Paul B Mahol [Sat, 28 Jan 2012 19:46:47 +0000 (19:46 +0000)]
libgsm: remove dupe assigment.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agolibgsm: check return value of gsm_create & avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 19:46:47 +0000 (19:46 +0000)]
libgsm: check return value of gsm_create & avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agoaacenc: Fix LONG_START windowing.
Nathan Caldwell [Sat, 28 Jan 2012 05:23:41 +0000 (22:23 -0700)]
aacenc: Fix LONG_START windowing.

Forgot to add the equivalent amount to the incoming sample pointer as the output pointer.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agoaacenc: Fix a bug where deinterleaved samples were stored in the wrong place.
Nathan Caldwell [Sat, 28 Jan 2012 05:23:40 +0000 (22:23 -0700)]
aacenc: Fix a bug where deinterleaved samples were stored in the wrong place.

10l: Forgot to adjust deinterleave for new location of incoming samples in 7946a5a.

This produced incorrect, but surprisingly listenable results.

Thanks to Justin Ruggles for the report.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
12 years agoAdd -vsync drop.
Reimar Döffinger [Sat, 28 Jan 2012 18:56:13 +0000 (19:56 +0100)]
Add -vsync drop.

This allows to work around any non-monotonic time-stamp errors
by just discarding all time stamps.
This will be necessary to allow H.264 conformance tests to pass
after fixing time stamps to be passed through rawenc.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoCompare video_sync_method against the appropriate defines.
Reimar Döffinger [Sat, 28 Jan 2012 18:48:17 +0000 (19:48 +0100)]
Compare video_sync_method against the appropriate defines.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoDemux all parts of concatenated H.264.
Reimar Döffinger [Sat, 21 Jan 2012 10:11:57 +0000 (11:11 +0100)]
Demux all parts of concatenated H.264.

We may or may not be able to play the latter parts
but not demuxing at all seems like the worst possible behaviour.
Fixes playback of e.g.
http://playlist.yahoo.com/makeplaylist.dll?sid=128114687&sdm=web&pt=rd
As a proper solution either multiple video streams should
be exported or side data should be used to update extradata
if necessary.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoSet AVFMT_TS_NONSTRICT for framecrc muxer.
Reimar Döffinger [Sun, 22 Jan 2012 16:35:41 +0000 (17:35 +0100)]
Set AVFMT_TS_NONSTRICT for framecrc muxer.

Since it is set for e.g. webm muxer we should make it possible
to test such streams with framecrc, too.
Though the primary reason is that this allows the H.264 tests
to not run into this check when fixing raw video encode to
pass pts values on.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoRemove unnecessary -vsync 0.
Reimar Döffinger [Sun, 22 Jan 2012 13:02:18 +0000 (14:02 +0100)]
Remove unnecessary -vsync 0.

The tests work fine without it, and it will cause issues when the
rawvideo decoder is changed to properly handle pts values.
The H.264 conformance tests however are still broken, usually losing
the first frames without it.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoMerge palette-only header with actual video frame.
Reimar Döffinger [Sun, 22 Jan 2012 12:17:53 +0000 (13:17 +0100)]
Merge palette-only header with actual video frame.

This fixes the video frame pts (off by one for each MVIh)
and makes the "key frames" decode stand-alone (MVIh
contains only palette, such a palette-only frame being
marked as key frame is not really correct).

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoDFA: fix "skip frame" TSW1 encoding.
Reimar Döffinger [Sun, 22 Jan 2012 11:41:12 +0000 (12:41 +0100)]
DFA: fix "skip frame" TSW1 encoding.

Previously the decoder would raise an error.
The end result is the same, the time stamps only change
because regression tests create time stamps incorrectly.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
12 years agoadpcmenc: refactor some code.
Paul B Mahol [Sat, 28 Jan 2012 19:06:08 +0000 (19:06 +0000)]
adpcmenc: refactor some code.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agoadpcmenc: check return value of avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 19:06:08 +0000 (19:06 +0000)]
adpcmenc: check return value of avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
12 years agoadxenc: check return value of avcodec_alloc_frame()
Paul B Mahol [Sat, 28 Jan 2012 19:06:44 +0000 (19:06 +0000)]
adxenc: check return value of avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>