Commit Graph

17853 Commits

Author SHA1 Message Date
Clément Bœsch
23b639c44f Fix "ouput" typo and add a check. 2012-01-28 11:04:19 +01:00
Michael Niedermayer
81ab42a334 dirac_yasm: fix linking failure due to %ifndef
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-28 09:06:03 +01:00
Michael Niedermayer
e37f161e66 Merge remote-tracking branch 'qatar/master'
* qatar/master: (71 commits)
  movenc: Allow writing to a non-seekable output if using empty moov
  movenc: Support adding isml (smooth streaming live) metadata
  libavcodec: Don't crash in avcodec_encode_audio if time_base isn't set
  sunrast: Document the different Sun Raster file format types.
  sunrast: Add a check for experimental type.
  libspeexenc: use AVSampleFormat instead of deprecated/removed SampleFormat
  lavf: remove disabled FF_API_SET_PTS_INFO cruft
  lavf: remove disabled FF_API_OLD_INTERRUPT_CB cruft
  lavf: remove disabled FF_API_REORDER_PRIVATE cruft
  lavf: remove disabled FF_API_SEEK_PUBLIC cruft
  lavf: remove disabled FF_API_STREAM_COPY cruft
  lavf: remove disabled FF_API_PRELOAD cruft
  lavf: remove disabled FF_API_NEW_STREAM cruft
  lavf: remove disabled FF_API_RTSP_URL_OPTIONS cruft
  lavf: remove disabled FF_API_MUXRATE cruft
  lavf: remove disabled FF_API_FILESIZE cruft
  lavf: remove disabled FF_API_TIMESTAMP cruft
  lavf: remove disabled FF_API_LOOP_OUTPUT cruft
  lavf: remove disabled FF_API_LOOP_INPUT cruft
  lavf: remove disabled FF_API_AVSTREAM_QUALITY cruft
  ...

Conflicts:
	doc/APIchanges
	libavcodec/8bps.c
	libavcodec/avcodec.h
	libavcodec/libx264.c
	libavcodec/mjpegbdec.c
	libavcodec/options.c
	libavcodec/sunrast.c
	libavcodec/utils.c
	libavcodec/version.h
	libavcodec/x86/h264_deblock.asm
	libavdevice/libdc1394.c
	libavdevice/v4l2.c
	libavformat/avformat.h
	libavformat/avio.c
	libavformat/avio.h
	libavformat/aviobuf.c
	libavformat/dv.c
	libavformat/mov.c
	libavformat/utils.c
	libavformat/version.h
	libavformat/wtv.c
	libavutil/Makefile
	libavutil/file.c
	libswscale/x86/input.asm
	libswscale/x86/swscale_mmx.c
	libswscale/x86/swscale_template.c
	tests/ref/lavf/ffm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-28 07:53:34 +01:00
Alex Converse
7181c4edee cosmetics: Remove extra newlines at EOF 2012-01-27 17:19:09 -08:00
Michael Niedermayer
f21b6159cf mpegvideoenc: Fail if a buffer size is specified without a max rate.
This combination makes not much sense.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-28 01:36:44 +01:00
Michael Niedermayer
49f2056289 pngdec: Convert 2/4 bit formats to 8bit.
This way 2 and 4 bit gray, rgb & rgba are supported.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-28 01:36:43 +01:00
Michael Niedermayer
eb3f81e4ef targadec: Simplify RLE out of packet check.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-28 01:36:42 +01:00
Martin Storsjö
9a7dc618c5 libavcodec: Don't crash in avcodec_encode_audio if time_base isn't set
Earlier, calling avcodec_encode_audio worked fine even if time_base
wasn't set. Now it crashes due to trying to scale the output pts to
the codec context time base. This affects e.g. VLC.

If no time_base is set for audio codecs, set it to the sample
rate.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-01-27 20:52:32 +02:00
Aneesh Dogra
bca77a1a64 sunrast: Document the different Sun Raster file format types.
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-01-27 13:21:46 -05:00
Aneesh Dogra
1bbb173652 sunrast: Add a check for experimental type.
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-01-27 11:35:39 -05:00
Justin Ruggles
2c577155a7 libspeexenc: use AVSampleFormat instead of deprecated/removed SampleFormat
Fixes build with --enable-libspeex
2012-01-27 11:28:21 -05:00
Anton Khirnov
3b4aaa6190 lavc: remove disabled FF_API_AVFRAME_AGE cruft. 2012-01-27 10:38:35 +01:00
Anton Khirnov
d803775e81 lavc: remove disabled FF_API_DATA_POINTERS cruft. 2012-01-27 10:38:35 +01:00
Anton Khirnov
10e1ae5eff lavc: remove disabled FF_API_TIFFENC_COMPLEVEL cruft. 2012-01-27 10:38:35 +01:00
Anton Khirnov
370e923e0b lavc: remove disabled FF_API_INTERNAL_CONTEXT cruft. 2012-01-27 10:38:35 +01:00
Anton Khirnov
ac84395d6a lavc: remove disabled FF_API_PARSE_FRAME cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
8b9b6041d7 lavc: remove disabled FF_API_GET_ALPHA_INFO cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
99ace37e68 lavc: remove disabled FF_API_MJPEG_GLOBAL_OPTS cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
96e9b96fcd lavc: remove disabled FF_API_SNOW_GLOBAL_OPTS cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
b9de160c3e lavc: remove disabled FF_API_LAME_GLOBAL_OPTS cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
3211932c51 lavc: remove disabled FF_API_AVCODEC_INIT cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
491f443e1f lavc: remove disabled FF_API_ER cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
f326501a65 lavc: remove disabled FF_API_DRC_SCALE cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
d2d931500b lavc: remove disabled FF_API_AVCODEC_OPEN cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
ec104eef51 lavc: remove disabled FF_API_ALLOC_CONTEXT cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
8e5746d461 lavc: remove disabled FF_API_GET_PIX_FMT_NAME cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
0dc6bab092 lavc: remove disabled FF_API_FLAC_GLOBAL_OPTS cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
fbca04e6f6 lavc: remove disabled FF_API_OLD_FF_PICT_TYPES cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
9a79bb552a lavc: remove disabled FF_API_THREAD_INIT cruft. 2012-01-27 10:38:34 +01:00
Anton Khirnov
7831a7e4ec lavc: remove disabled FF_API_ANTIALIAS_ALGO cruft. 2012-01-27 10:38:33 +01:00
Anton Khirnov
62dfea6535 lavc: remove disabled FF_API_OLD_AUDIOCONVERT cruft. 2012-01-27 10:38:33 +01:00
Anton Khirnov
284e65d64e lavc: remove disabled FF_API_OLD_SAMPLE_FMT cruft. 2012-01-27 10:38:33 +01:00
Anton Khirnov
6c8dab98b8 lavc: remove disabled FF_API_PALETTE_CONTROL cruft. 2012-01-27 10:38:33 +01:00
Anton Khirnov
9ce2a91b84 lavc: remove disabled FF_API_MPEGVIDEO_GLOBAL_OPTS cruft. 2012-01-27 10:38:33 +01:00
Anton Khirnov
7232bfbd93 lavc: remove disabled FF_API_X264_GLOBAL_OPTS cruft. 2012-01-27 10:38:33 +01:00
Anton Khirnov
7460398b89 lavc: remove the deprecated opt.h header. 2012-01-27 10:38:33 +01:00
Anton Khirnov
041cd5a0c5 lavc: remove the deprecated "ab" option. 2012-01-27 10:38:33 +01:00
Anton Khirnov
7063b6eaee lavc: increase major version to 54.
The lavf-ffm test results change because ffmenc writes
AVCodecContext.flags/flags2 and the defaults for those change.
2012-01-27 10:38:30 +01:00
Mashiat Sarker Shakkhar
bfbd22f9f0 Cosmetics: Fix some whitespace errors and indentation 2012-01-27 01:16:36 -08:00
Ronald S. Bultje
3b15a6d742 config.asm: change %ifdef directives to %if directives.
This allows combining multiple conditionals in a single statement.
2012-01-27 10:19:57 +08:00
Paul B Mahol
5eda82aac9 frwu: check if allocation was successful
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-27 09:31:06 +08:00
Mashiat Sarker Shakkhar
d51d6ae9c4 vc1dec.c: Don't use uninitialized values of dmv_[x, y]
MVDATA may or may not be transmitted. If it is not, both
dmv_x and dmv_y is to be assumed zero.

This may not trigger wrong picture in all systems, but
it's a bug nevertheless. Fixes SA10116.vc1 on my 64-bit
Windows 7.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-27 09:24:13 +08:00
Michael Niedermayer
01fcbdf9ce Merge remote-tracking branch 'qatar/master'
* qatar/master:
  smacker: Sanity check huffman tables found in the headers.
  smacker: remove dead store
  qdm2: Check data block size for bytes to bits overflow.
  mxfdec: Fix files with essence containers larger than 2 GiB.
  mxfdec: Employ correct printf conversion specifiers for POSIX int types.
  vc1: always read the bfraction element for interlaced fields
  fate: add XWD image regression test
  lavf: prevent infinite loops while flushing in avformat_find_stream_info
  matroskadec: Pad AAC extradata.
  ismindex: Fix build on mingw

Conflicts:
	libavformat/mxfdec.c
	libavformat/utils.c
	tests/lavf-regression.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-27 02:09:58 +01:00
Alex Converse
b57d262412 mjpegbdec: Fix overflow in SOS.
Based in part by a fix from Michael Niedermayer <michaelni@gmx.at>

Fixes CVE-2011-3947

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
2012-01-26 15:47:36 -08:00
Paul B Mahol
324e818093 8bps: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-01-26 22:44:37 +01:00
Alex Converse
a8ae00b68c qdm2: Check data block size for bytes to bits overflow.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind

CC: libav-stable@libav.org
(cherry picked from commit dac56d9ce0)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 22:28:25 +01:00
Michael Niedermayer
22eef8d738 snowenc: dont crash with gray but exit with an error msg.
Fixes Ticket839

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 20:05:15 +01:00
Michael Niedermayer
9decfc17bb h264_sei: Fix infinite loop.
Fixes not yet fixed parts of CVE-2011-3946.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 19:54:38 +01:00
Alex Converse
9adf25c1cf smacker: Sanity check huffman tables found in the headers.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind

CC: libav-stable@libav.org
2012-01-26 10:18:00 -08:00
Alex Converse
90c0c83e14 smacker: remove dead store 2012-01-26 10:17:04 -08:00
Alex Converse
dac56d9ce0 qdm2: Check data block size for bytes to bits overflow.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind

CC: libav-stable@libav.org
2012-01-26 10:17:04 -08:00
Michael Niedermayer
7ed6b1a128 mpeg1videoenc: disable slice threads
It doesnt work (and as far as i tested also didnt in the past)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 18:45:46 +01:00
Michael Niedermayer
70dba1e3c8 kvmc: Check palsize.
Fixes: CVE-2011-3952

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 17:30:49 +01:00
Michael Niedermayer
92115bb685 dpcm: Round output buffer size up.
Fixes: CVE-2011-3951

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 17:05:57 +01:00
Michael Niedermayer
ddf0c1d86a diracdec: Check num_refs.
Fixes: CVE-2011-3950

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 17:05:57 +01:00
Michael Niedermayer
e2291ea153 diracdec: Check dirac_unpack_idwt_params parameters before storing them.
Fixes CVE-2011-3949

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 17:05:57 +01:00
Hendrik Leppkes
feaa40020b vc1: always read the bfraction element for interlaced fields
Previously, it would not be read if refdist_flag was not set, however
according to the spec and the reference decoder, it should always be read.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-01-26 15:19:27 +01:00
Michael Niedermayer
46095f427e mp3dec: Check for memcpy size to be positive.
No, ive no testcase.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 03:30:46 +01:00
Thierry Foucu
10e9d1f76b Fix a heap-buffer-overflow
In some case, what left to read from ptr is smaller than EXTRABYTES.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 03:28:12 +01:00
Michael Niedermayer
3c5fe5b527 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  wma: Clip WMA1 and WMA2 frame length to 11 bits.
  movenc: Don't require frame_size to be set for modes other than mov
  doc: Update APIchanges with info on muxer flushing
  movenc: Reindent a block
  tools: Remove some unnecessary #undefs.
  rv20: prevent calling ff_h263_decode_mba() with unset height/width
  tools: K&R reformatting cosmetics
  Ignore generated aviocat and ismindex tools.
  build: Automatically include architecture-specific library Makefile snippets.
  indeo5: prevent null pointer dereference on broken files
  pktdumper: Use usleep instead of sleep
  cosmetics: Remove some unnecessary block braces.
  Drop unnecessary prefix from *sink* variable and struct names.
  Add a tool for creating smooth streaming manifests
  movdec: Calculate an average bit rate for fragmented streams, too
  movenc: Write the sample rate instead of time scale in the stsd atom
  movenc: Add a separate ismv/isma (smooth streaming) muxer
  movenc: Allow the caller to decide on fragmentation
  libavformat: Add a flag for muxers that support write_packet(NULL) for flushing
  movenc: Add support for writing fragmented mov files
  ...

Conflicts:
	Changelog
	cmdutils.c
	cmdutils.h
	doc/APIchanges
	ffmpeg.c
	ffplay.c
	libavfilter/Makefile
	libavformat/Makefile
	libavformat/avformat.h
	libavformat/movenc.c
	libavformat/movenc.h
	libavformat/version.h
	tools/graph2dot.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-26 02:23:56 +01:00
Michael Niedermayer
01e5e97026 mjpegbdec: Fix incorrect bitstream buffer size.
Fixes CVE-2011-3947

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-25 23:56:09 +01:00
Paul B Mahol
dd453f197c r210, r10k and avrp encoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-25 23:40:06 +01:00
Michael Niedermayer
807a045ab7 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>
2012-01-25 23:25:45 +01:00
Michael Niedermayer
1285baaab5 smackerdec: Check that the last indexes are within the table.
Fixes CVE-2011-3944

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-25 22:32:11 +01:00
Alex Converse
d78bb1a4b2 wma: Clip WMA1 and WMA2 frame length to 11 bits.
The MDCT buffers in the decoder are only sized for up to 11 bits. The
reverse engineered documentation for WMA1/2 headers say that that for
all samplerates above 32kHz 11 bits are used. 12 and 13 bit support
were added for WMAPro. I was unable to make any Microsoft tools generate
a test file at a samplerate above 48kHz.

Discovered by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind

CC: libav-stable@libav.org
2012-01-25 12:31:37 -08:00
Michael Niedermayer
247d30a7db vp3: Copy all 3 frames for thread updates.
This fixes a double release of the current frame on deinit.
Fixes CVE-2011-3934

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-25 21:12:00 +01:00
Hendrik Leppkes
6071644287 indeo3: fix motion vector validation
The index of the motion vector has to be checked before being
multiplied by 2 for the array index.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-25 18:55:32 +01:00
Janne Grunau
c3e10ae412 rv20: prevent calling ff_h263_decode_mba() with unset height/width
Prevents a crash of VLC during playback of a invalid matroska file,
found by John Villamil <johnv@matasano.com>.

CC: libav-stable@libav.org
2012-01-25 16:18:54 +01:00
Diego Biurrun
07a873a277 build: Automatically include architecture-specific library Makefile snippets. 2012-01-25 15:04:28 +01:00
Janne Grunau
366ac22ea5 indeo5: prevent null pointer dereference on broken files
Found by John Villamil <johnv@matasano.com>
2012-01-25 14:31:57 +01:00
Diego Biurrun
33ad8c3cab cosmetics: Remove some unnecessary block braces. 2012-01-25 13:14:49 +01:00
Ronald S. Bultje
c3af52fa8b dsputil: use vertical component for drawing bottom edge.
Current code only writes 8 pixels of vertical edge for YUV422, which
causes MC artifacts when subsequent frames use data from that edge.
2012-01-25 18:06:36 +08:00
Michael Niedermayer
59e95fa4a8 h263dec: Disallow width/height changing with frame threads.
Fixes CVE-2011-3937

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-25 06:48:30 +01:00
Carl Eugen Hoyos
7988dd1b9a Fix multi-channel encoding with libfaac. 2012-01-25 03:51:49 +01:00
Michael Niedermayer
1d9569f9e8 Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  aacenc: Fix identification padding when the bitstream is already aligned.
  aacenc: Write correct length for long identification strings.
  aud: remove unneeded field, audio_stream_index from context
  aud: fix time stamp calculation for ADPCM IMA WS
  aud: simplify header parsing
  aud: set pts_wrap_bits to 64.
  cosmetics: indentation
  aud: support Westwood SND1 audio in AUD files.
  adpcm_ima_ws: fix stereo decoding
  avcodec: add a new codec_id for CRYO APC IMA ADPCM.
  vqa: remove unused context fields, audio_samplerate and audio_bits
  vqa: clean up audio header parsing
  vqa: set time base to frame rate as coded in the header.
  vqa: set packet duration.
  vqa: use 1/sample_rate as the audio stream time base
  vqa: set stream start_time to 0.
  lavc: postpone the removal of AVCodecContext.request_channels.
  lavf: postpone removing av_close_input_file().
  lavc: postpone removing old audio encoding and decoding API
  avplay: remove the -er option.
  ...

Conflicts:
	Changelog
	libavcodec/version.h
	libavdevice/v4l.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-24 22:53:59 +01:00
Alex Converse
efe68076da aacenc: Fix identification padding when the bitstream is already aligned. 2012-01-24 12:55:21 -08:00
Michael Niedermayer
cdfe94c5ab aacenc: Write correct length for long identification strings.
When the length is the escape value (15), the new length is calculated by
15 + get_bits(8) - 1.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-24 12:54:59 -08:00
Michael Niedermayer
c77be3a35a error concealment: initialize block index.
Fixes CVE-2011-3941 (out of bounds write)

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-24 21:08:41 +01:00
Justin Ruggles
02e7dbf5ad adpcm_ima_ws: fix stereo decoding
Stereo ADPCM IMA WS is planar for VQA version 3 and 2-sample interleaved for
VQA version 2.
2012-01-24 14:13:46 -05:00
Justin Ruggles
220506d23f avcodec: add a new codec_id for CRYO APC IMA ADPCM.
The stereo layout and extradata is significantly different from that in
Westwood IMA ADPCM, so a separate codec_id is warranted.
2012-01-24 14:13:41 -05:00
Anton Khirnov
1381e9bc92 lavc: postpone the removal of AVCodecContext.request_channels.
Although it has been deprecated for a long time, its intended
replacement (request_channel_layout) is not actually used anywhere, so
request_channels is currently the only way to access that functionality.
2012-01-24 18:04:19 +01:00
Anton Khirnov
af0292f33a lavc: postpone removing old audio encoding and decoding API
It has been deprecated only recently.
2012-01-24 18:04:19 +01:00
Michael Niedermayer
beb19a0444 h264: Disallow w/h/pixfmt changes for frame threads.
Previously this was just checked in case of slice threads,
but frame threads do not support this either currently.

Making them support this is of course the long term goal

Fixes bug155

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-24 15:36:38 +01:00
Michael Niedermayer
b2be1dabb1 mpegvideo: Draw edges based on the pictures linesize instead of the contexts.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-24 15:36:38 +01:00
Michael Niedermayer
0bb57f8bf0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Remove ffmpeg.
  aacenc: Simplify windowing
  aacenc: Move saved overlap samples to the beginning of the same buffer as incoming samples.
  aacenc: Deinterleave input samples before processing.
  aacenc: Store channel count in AACEncContext.
  aacenc: Move Q^3/4 calculation to it's own table
  aacenc: Request normalized float samples instead of converting s16 samples to float.
  aacpsy: Replace an if with FFMAX in LAME windowing.
  aacenc: cosmetics, replace 'rd' with 'bits' in codebook_trellis_rate to make it more clear what is being calculated.
  aacpsy: cosmetics, change a FIXME to a NOTE about subshort comparisons
  aacenc: cosmetics: move init() and end() to the bottom of the file.
  aacenc: aac_encode_init() cleanup
  XWD encoder and decoder
  vc1: don't read the interpfrm and bfraction elements for interlaced frames
  mxfdec: fix memleak on mxf_read_close()
  westwood: split the AUD and VQA demuxers into separate files.

Conflicts:
	.gitignore
	Changelog
	Makefile
	configure
	doc/ffmpeg.texi
	ffmpeg.c
	libavcodec/Makefile
	libavcodec/aacenc.c
	libavcodec/allcodecs.c
	libavcodec/avcodec.h
	libavcodec/version.h
	libavformat/Makefile
	libavformat/img2.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-24 02:41:53 +01:00
Michael Niedermayer
b955d4072e Revert "Fix multi-channel AAC encoding."
This reverts commit b3452771c4.

A better solution was implemented by Nathan Caldwell.

Conflicts:

	libavcodec/aacenc.c
2012-01-24 02:31:56 +01:00
Janne Grunau
1d3a9e63e0 rv10: verify slice offsets against buffer size
Found by John Villamil <johnv@matasano.com> in fuzzed rv20 in mkv files.
2012-01-24 02:16:02 +01:00
Nathan Caldwell
9292fe4a1d aacenc: Simplify windowing
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-23 11:40:46 -08:00
Nathan Caldwell
7946a5acfb aacenc: Move saved overlap samples to the beginning of the same buffer as incoming samples.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-23 11:40:46 -08:00
Nathan Caldwell
9b8e2a8709 aacenc: Deinterleave input samples before processing.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-23 11:40:46 -08:00
Nathan Caldwell
04af2efaae aacenc: Store channel count in AACEncContext.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-23 11:40:46 -08:00
Nathan Caldwell
80d44277e6 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>
2012-01-23 11:40:46 -08:00
Nathan Caldwell
025ccf1f8b aacenc: Request normalized float samples instead of converting s16 samples to float.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-23 11:40:46 -08:00
Nathan Caldwell
6381f913d1 aacpsy: Replace an if with FFMAX in LAME windowing.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-23 11:40:45 -08:00
Nathan Caldwell
207bf44d16 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>
2012-01-23 11:40:45 -08:00
Nathan Caldwell
843cd4a3ed aacpsy: cosmetics, change a FIXME to a NOTE about subshort comparisons
Also fix a typo.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-23 11:40:45 -08:00
Nathan Caldwell
5310704190 aacenc: cosmetics: move init() and end() to the bottom of the file.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-23 11:40:45 -08:00
Nathan Caldwell
17ae608127 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>
2012-01-23 11:40:45 -08:00
David Mitchell
d150a147da Improve support for PGS subtitles.
The previous implementation assumed that a new picture would always
supersede the previous picture. Similarly, presentation segments
were assumed to pertain to the most-recently-read picture.

However, each presentation segment may refer to 0 or more pictures
by their ID. Picture IDs may repeat, and a repeated picture ID
indicates that the old picture for that ID is no longer needed
and may be discarded.

The new implementation allocates a buffer with one slot for each
possible picture ID (the picture ID is a 16-bit field) and
properly decodes presentation segments so that all relevant
pictures are output upon encountering a display segment.

Given that most PGS streams are unlikely to use more than a small
fraction of the available picture IDs, it would probably be better
to use a more memory-efficient data structure. I'm lazy though, so
I leave this to a more motivated individual.

I've tested the code with MKV files in VLC (a recent revision from
their git repo) and with HandBrake (a version that I hacked up to
use ffmpeg's PGS subtitle decoder).

Review-by: Hendrik Leppkes <h.leppkes@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-23 19:47:49 +01:00
Michael Niedermayer
cf7c7f13cd pthreads: Generic progress lubrication support.
Fixes bug118, bug120 and bug125 at least

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-23 19:47:49 +01:00
Michael Niedermayer
575d494de5 pthreads: reset got_frames on flush.
This fixes memory corruption when seeking in broken streams.
a random mpeg4 in nut file was used to debug.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-23 19:47:49 +01:00
Paul B Mahol
27ed027bcd XWD encoder and decoder
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-01-23 19:04:35 +01:00
Hendrik Leppkes
7662a532fb 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>
2012-01-23 19:04:14 +01:00
Michael Niedermayer
feb997577b Merge remote-tracking branch 'qatar/master'
* qatar/master: (25 commits)
  riff: fix invalid av_freep() calls on EOF in ff_read_riff_info
  pam: Fix a typo that broke writing and reading PAM files.
  mxfdec: fix memleak on av_realloc failures
  mxfdec: Do not parse slices or DeltaEntryArrays.
  mxfdec: hybrid demuxing/seeking solution
  mxfdec: Add Avid's essence element key.
  mfxdec: Separate mxf_essence_container_uls for audio and video.
  mxfdec: Compute packet offsets properly.
  mxfdec: Use MaterialPackage - Track - TrackID instead of the system_item hack.
  mxfdec: use av_dlog() for 'no corresponding source package found'
  mxfdec: Make mxf->partitions sorted by offset.
  mxfdec: parse ThisPartition
  mxfdec: Speed up metadata and index parsing.
  mxfdec: Make sure DataDefinition is consistent between material track and source track.
  mxfdec: add EssenceContainer UL found in 0001GL00.MXF.A1.mxf_opatom.mxf
  mxfdec: Add hack that adjusts the n_delta calculation when system items are present.
  mxfdec: Parse IndexTableSegments and convert them into AVIndexEntry arrays.
  mxfdec: Move FooterPartition to MXFContext and make sure it is never zero.
  mxfdec: check return value of avio_seek
  mxfdec: skip to end of structural sets
  ...

Conflicts:
	configure
	libavcodec/pnm.c
	libavformat/mxfdec.c
	libavformat/riff.c
	libavformat/rtsp.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-23 01:05:20 +01:00
Philip Langdale
9bf9c314a0 CrystalHD: Back up extradata to allow decoder reinit to work.
This was a regression that came in when I switched to using the
h.264 annex b filter all the time. As the filter modifies extradata,
its use violates the statelessness assumption that exists in the
'ffmpeg' command line tool, and maybe elsewhere. It assumes that
a docoder can be reinitalised and pointed to an existing stream and
get the same results.

For now, the only way to meet this requirement is to backup the
extradata.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 23:40:24 +01:00
Philip Langdale
eaf4bf6df2 CrystalHD: Initialise variables to silence valgrind.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 23:40:24 +01:00
Michael Niedermayer
199d4478de pthread: Change a signal to a broadcast as multiple threads
have been seen waiting and deadlocking on it in bug125.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 23:07:09 +01:00
Carl Eugen Hoyos
66b9d7065a 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>
2012-01-22 16:38:20 +01:00
Hendrik Leppkes
378b7beff5 mpeg12: fixed parsing in some mpeg2 streams
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 14:42:53 +01:00
Michael Niedermayer
e9a6152e17 lavc: fix FF_LOSS_COLORQUANT detection for gray8a->pal8
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 14:42:53 +01:00
Reimar Döffinger
b4ec645f47 Extract some duplicated code.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-22 14:41:15 +01:00
Reimar Döffinger
b64b1608d8 Remove pointless and distracting ()
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-22 14:41:15 +01:00
Reimar Döffinger
57608d9029 Simplify: just add header_size directly.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-22 14:41:15 +01:00
Reimar Döffinger
b09c93d7bc Move some duplicated code, simplify.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-22 14:41:15 +01:00
Reimar Döffinger
0a403588d2 Make variable that always has the same value const.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-22 14:41:15 +01:00
Mashiat Sarker Shakkhar
6ca1016b3a Use correct variable type for 32-bit samples buffer 2012-01-22 18:17:09 +06:00
Michael Niedermayer
9e34adfc02 RC: Fix initial buffer occupancy.
Fixes Ticket880
Regression since bf174a70cd

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 06:46:24 +01:00
Michael Niedermayer
018a6645bc aacenc: Fix bug in writing libavcodec_ident.
the written length was off by 2 causing aac decoders to fail with the data.
lucky the encoder was marked as experimental and not used much

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 06:46:23 +01:00
Carl Eugen Hoyos
f746f37901 Support decoding gray8a tiff images. 2012-01-22 04:49:46 +01:00
Michael Niedermayer
d1c48025a7 pngdec: Do not use SIMD paeth prediction for bpp=2
Fixes decoding of basi4a08.png

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 00:46:19 +01:00
Michael Niedermayer
fd8a8373aa pngdec: Fix masks for interlaced decoding
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 00:46:19 +01:00
Michael Niedermayer
602e97dfaa pngdec: Add some FF_DEBUG based av_logs.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-22 00:46:19 +01:00
Michael Niedermayer
2478612fc0 lavc: Mark the err_detect constants as audio+video as they also apply to audio.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-21 23:48:50 +01:00
Michael Niedermayer
44d4fe9dad error_detection: put the old error detection constants back.
The old constants are more useful to the end user and have
orthogonal meanings to the new ones.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-21 23:46:36 +01:00
Michael Niedermayer
b5a69e79c5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtpdec: Use our own SSRC in the SDES field when sending RRs
  Finalize changelog for 0.8 Release
  Prepare for 0.8 Release
  threads: change the default for threads back to 1
  threads: update slice_count and slice_offset from user context
  aviocat: Remove useless includes
  doc/APIChanges: fill in missing dates and hashes
  Revert "avserver: fix build after the next bump."
  mpegaudiodec: switch error detection check to AV_EF_BUFFER
  lavf: rename fer option and document resulting (f_)err_detect options
  lavc: rename err_filter option to err_detect and document it
  mpegvideo: fix invalid memory access for small video dimensions
  movenc: Reorder entries in the MOVIentry struct, for tigheter packing
  rtsp: Remove extern declarations for variables that don't exist
  aviocat: Flush the output before closing

Conflicts:
	Changelog
	RELEASE
	libavcodec/mpegaudiodec.c
	libavcodec/pthread.c
	libavformat/options.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-21 23:11:27 +01:00
Janne Grunau
2473a45c85 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.
2012-01-21 13:26:44 +01:00
Janne Grunau
afb8b207d6 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.
2012-01-21 13:26:44 +01:00
Dustin Brody
d2a0041c20 mpegaudiodec: switch error detection check to AV_EF_BUFFER
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-01-21 08:38:12 +01:00
Dustin Brody
f88949214c lavc: rename err_filter option to err_detect and document it
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-01-21 08:28:18 +01:00
John Brooks
9b6aafba6c 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>
2012-01-21 08:28:08 +01:00
Michael Niedermayer
99a42f3fa9 ac3dec: Move center&surround mix level tables to parser.
That way all mix levels as exported by the parser
will have the same meaning.

Previously the 3bit center mix level for eac3 was
used to index in a 4 entry table leading to out of array reads.
this change removes the table and offsets the ac3 variable by 4
so it matches the meanings for eac3 except the reserved case.
The reserved case is then explicitly handled.

Idea-by: Justin Ruggles <justin.ruggles@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-21 05:29:47 +01:00
Michael Niedermayer
8f0768cc22 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add a tool that uses avio to read and write, doing a plain copy of data
  ARM: fix build with FFT enabled and MDCT disabled
  lavf: force single-threaded decoding in avformat_find_stream_info
  avidec: migrate last of lavf from FF_ER_* to AV_EF_*
  avserver: fix build after the next bump.

Conflicts:
	libavformat/Makefile
	libavformat/avidec.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-21 01:33:31 +01:00
Felipe Contreras
c3d5e290ca 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>
2012-01-20 16:14:01 +00:00
Michael Niedermayer
48706f41e1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpeg12: check for available bits to avoid an infinite loop
  fate: add some shorthands to run groups of tests
  fate: Give some tests more sensible names.
  cosmetics: Rename ffsink to avsink.

Conflicts:
	avconv.c
	cmdutils.c
	cmdutils.h
	ffmpeg.c
	ffplay.c
	tests/fate/audio.mak
	tests/fate/demux.mak
	tests/fate/dpcm.mak
	tests/fate/image.mak
	tests/fate/lossless-audio.mak
	tests/fate/lossless-video.mak
	tests/fate/microsoft.mak
	tests/fate/pcm.mak
	tests/fate/real.mak
	tests/fate/screen.mak
	tests/fate/video.mak
	tests/fate/voice.mak
	tests/fate/wma.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-20 02:14:54 +01:00
Michael Bradshaw
de07355026 Changed indexing in libopenjpeg to shorten lines 2012-01-19 23:31:22 +01:00
Carl Eugen Hoyos
df42dd7323 Support gray8a encoding with libopenjpeg.
Reviewed-by: Michael Bradshaw
Reviewed-by: Paul B Mahol
2012-01-19 23:31:22 +01:00
Carl Eugen Hoyos
e209a37777 Simplify 32bit png decoding. 2012-01-19 23:31:22 +01:00
Carl Eugen Hoyos
21a1006109 Support encoding 16bit pixel formats to sgi. 2012-01-19 23:31:22 +01:00
Carl Eugen Hoyos
b614c14767 Simplify 32bit pam decoding.
Reviewed-by: Paul B Mahol
2012-01-19 23:31:21 +01:00
Carl Eugen Hoyos
34aadeaa2c Simplify PIX_FMT_RGB555LE selection in targa decoder.
Suggested by Jean First.
2012-01-19 23:31:21 +01:00
Carl Eugen Hoyos
b4634a006c Simplify targa decoding on big endian. 2012-01-19 23:31:21 +01:00
Javier Cabezas
1406d9ddc6 DNxHD: frame multithreading
Signed-off-by: Javier Cabezas <jcabgz@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-19 17:12:43 +01:00
Jindřich Makovička
a85ce653fb 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>
2012-01-19 14:14:21 +01:00
Michael Niedermayer
1ce8377c78 wmalossless: Fix incompatoble pointer type warnings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-19 08:51:56 +01:00
Michael Niedermayer
c130428ab5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avprobe, cmdutils: K&R formatting cosmetics
  tests: K&R formatting cosmetics for test programs
  lavf: free packets for muxers implementing interleave_packet().
  lavf: fix and extend av_interleaved_write_frame() doxy.
  mov: Remove dead stores for spherical coordinates for channel position.
  error_resilience: K&R formatting cosmetics
  RELEASE_NOTES: mention hiding private symbols in shared builds.
  RELEASE_NOTES: mention some notable API changes in 0.8

Conflicts:
	cmdutils.h
	doc/RELEASE_NOTES
	ffprobe.c
	libavcodec/error_resilience.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-19 01:19:38 +01:00
Reimar Döffinger
6fd4b8a6ef Replace a av_fast_malloc with av_fast_padded_malloc.
This one was missed in the previous fraps fix, the
allocation is exactly the same in both cases.
Fixes fraps-v5 under valgrind.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-18 22:04:14 +01:00
Reimar Döffinger
e8b060f7e7 Use av_fast_padded_malloc in mimic and truemotion2 decoders.
Fixes use of uninitialized data errors under valgrind.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-18 22:04:14 +01:00
Reimar Döffinger
f9ced97543 Use av_fast_padded_malloc in fraps and mpc decoders.
Fixes FATE failures due to uninitialized reads under valgrind
for these two codecs.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-18 21:22:01 +01:00
Donald Ovcharov
ac84f2edd4 error_resilience: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-01-18 18:10:01 +01:00
Michael Niedermayer
e49780f749 lavc: call ff_init_buffer_info() from default reget buffer.
This is needed in case the get_buffer() callback doesnt set
width/height.
Ideally all decoders would make calls through some wraper
to the callbacks and that wraper would call ff_init_buffer_info()
But until thats done, the default reget buffer must call this
itself as it needs the values for the changed size check later.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-18 16:25:36 +01:00
Michael Niedermayer
2fb65d3e55 lavc: when w/h changes in reget buffer, print the values.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-18 16:25:36 +01:00
Michael Niedermayer
e191f1f414 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  tta: cast output data pointer to the correct type
  avconv: fix -frames for video encoders with delay.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-18 02:08:12 +01:00
Reimar Döffinger
178f8ea76e Use ff_packet_free_side_data instead of duplicating it.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-17 22:16:07 +01:00
Paul B Mahol
aff9cb8377 lavc: remove unused headers
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-17 20:55:19 +01:00
Reimar Döffinger
3b55429d56 Add and use av_fast_padded_malloc.
The same as av_fast_malloc but uses av_mallocz and keeps extra
always-0 padding.
This does not mean the memory will be 0-initialized after each call,
but actually only after each growth of the buffer.
However this makes sure that
a) all data anywhere in the buffer is always initialized
b) the padding is always 0
c) the user does not have to bother with adding the padding themselves
Fixes another valgrind warning about use of uninitialized data,
this time with fate-vsynth1-jpegls.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-17 20:16:35 +01:00
Michael Niedermayer
a129622390 lavc: Check CODEC_CAP_VARIABLE_FRAME_SIZE && !frame
This combination is quite odd and almost certainly a bug if
it happens.

Reviewed-by: Justin Ruggles <justin.ruggles@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-17 20:08:29 +01:00
Michael Niedermayer
af5004b557 lavc: use av_freep() for freeing extended_data
This is safer

Reviewed-by: Justin Ruggles <justin.ruggles@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-17 20:07:50 +01:00
Justin Ruggles
01ed1c390d tta: cast output data pointer to the correct type
fixes "warning: assignment from incompatible pointer type"
2012-01-17 09:41:13 -05:00
Stefano Sabatini
9f7144b44c lavc/mpegvideo_enc: improve log message in case of too large GOP
Change log level from ERROR to WARNING and provide more specific
information in the message itself.
2012-01-17 12:03:30 +01:00
Michael Bradshaw
56af084cb5 libopenjpegenc: Remove two redundant function parameters. 2012-01-17 12:01:42 +01:00
Michael Bradshaw
a02694c926 libopenjpegenc: Simplify gray encoding. 2012-01-17 11:57:36 +01:00
Michael Bradshaw
0abe25aa7b libopenjpegenc: Add error messages. 2012-01-17 11:47:08 +01:00
Michael Bradshaw
ee33eb40fc libopenjpegenc: Rename four conversion functions. 2012-01-17 11:43:44 +01:00
Reimar Döffinger
7e62315c91 Use correct register size.
Fixes compilation with NASM.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-17 08:41:39 +01:00
Michael Niedermayer
67f5650a78 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rv34: add NEON rv34_idct_add
  rv34: 1-pass inter MB reconstruction
  add SMJPEG muxer
  avformat: split out common SMJPEG code
  pictordec: Use bytestream2 functions
  avconv: use avcodec_encode_audio2()
  pcmenc: use AVCodec.encode2()
  avcodec: bump minor version and add APIChanges for the new audio encoding API
  avcodec: Add avcodec_encode_audio2() as replacement for avcodec_encode_audio()
  avcodec: add a public function, avcodec_fill_audio_frame().
  rv34: Intra 16x16 handling
  rv34: Inter/intra MB code split

Conflicts:
	Changelog
	libavcodec/avcodec.h
	libavcodec/pictordec.c
	libavcodec/utils.c
	libavcodec/version.h
	libavcodec/x86/rv34dsp.asm
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-17 02:37:30 +01:00
Michael Niedermayer
905c4dc2b0 dpxenc: Dont store lavc indent when bitexact is set.
This avoids fate breakage from bumping version.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-17 01:37:59 +01:00
Carl Eugen Hoyos
00430075bd Support 64bit pam decoding. 2012-01-17 00:42:17 +01:00
Carl Eugen Hoyos
328e79329a Support gray8a pam decoding. 2012-01-17 00:42:17 +01:00
Carl Eugen Hoyos
dc2f652ae4 Fix pix_fmt_info for yuva420.
This allows correct output pix_fmt auto-selection
if the input pix_fmt is yuva420.

Fixes ticket #290.
2012-01-17 00:42:17 +01:00
Maksym Veremeyenko
94bf9ac473 fix av_dlog call with non-AVClass struct
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-16 20:32:16 +01:00
Janne Grunau
9e12002f11 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
2012-01-16 19:26:41 +01:00
Christophe GISQUET
9ba9c34024 rv34: 1-pass inter MB reconstruction
Implement 1-pass inverse transform and reconstruction for inter blocks.
2012-01-16 19:26:41 +01:00
Reimar Döffinger
7594791541 Rework VP8 decoder frame skipping code.
This reworks the frame skipping code such that the reference
buffers are still updated according to the header.
However it also ensures that the current frame will not end
up in any reference buffer.
Also fixes a hang with frame-multithreading, probably because
get_buffer was already called and would have reset the progress,
however the frame could remain in framep due to the missing update
(or it could be assigned to next_framep and a skip_frame skip would
then write it into framep - there might be even more failure modes).
Sample might become available at samples/nsv/vp8.nsv

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-16 19:21:24 +01:00
Carl Eugen Hoyos
203ea375ca Support rgb64 dpx encoding. 2012-01-16 10:59:27 +01:00
Laurentiu Ion
d859191322 pictordec: Use bytestream2 functions
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-01-15 22:44:00 -05:00
Michael Niedermayer
ebc9ff8e7d vorbisdec: Check that the x values of floor1 are unique.
This is required by the spec and fixes video-1frag.ogg.48.ogg. (FPE)

Based on the debuging work of Oana Stratulat and ubitux.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-16 03:30:27 +01:00
Justin Ruggles
05f95443ca pcmenc: use AVCodec.encode2() 2012-01-15 21:24:18 -05:00
Justin Ruggles
a6ccae3f4c avcodec: bump minor version and add APIChanges for the new audio encoding API 2012-01-15 21:24:17 -05:00
Justin Ruggles
b2c75b6e63 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.
2012-01-15 21:24:17 -05:00
Justin Ruggles
5ee5fa021f avcodec: add a public function, avcodec_fill_audio_frame().
This is a convenience function for the user to fill audio AVFrame information.
2012-01-15 21:24:17 -05:00
Michael Niedermayer
4a4c4278b7 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: split ADPCM and DPCM test references into separate files.
  mov, mxfdec: Employ more meaningful return values.
  lavc: Relax API strictness in avcodec_decode_audio3 with a custom get_buffer()
  wavpack: fix clipping for 32-bit lossy mode
  vb: Use bytestream2 functions

Conflicts:
	libavcodec/utils.c
	libavcodec/vb.c
	libavformat/mxfdec.c
	tests/fate/dpcm.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-16 01:33:35 +01:00
Christophe GISQUET
d78062386e 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.
2012-01-16 00:41:51 +01:00
Christophe GISQUET
3eeb755763 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>
2012-01-16 00:41:51 +01:00
Carl Eugen Hoyos
f94ce3bcab Support rgb48 and rgba64 png encoding. 2012-01-15 22:04:25 +01:00
Carl Eugen Hoyos
107f55cb01 Simplify RGB32 png encoding. 2012-01-15 22:00:11 +01:00
Carl Eugen Hoyos
fdc013da78 Support gray16 png encoding. 2012-01-15 21:57:02 +01:00
Carl Eugen Hoyos
ed10ca4c76 Support gray8a png encoding. 2012-01-15 21:53:01 +01:00
Reinhard Tartler
e2ff436ef6 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 (c3846e3eba) in FFmpeg.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2012-01-15 21:40:59 +01:00
Kostya Shishkov
e6e7bfc11e 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.
2012-01-15 15:27:55 +01:00
Peter Ross
69224582da iff: support masking plane feature
Fixes ticket 705.

Reported-by: ami-stuff
Signed-off-by: Peter Ross <pross@xvid.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-15 14:13:25 +01:00
Reimar Döffinger
8af6b9711e Fix uninitialized reads for fate-vsynth1-asv2 test.
This is not a real error and memsetting always even when the
size did not change is overkill, but it still should be
an acceptable trade-off.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-15 13:54:19 +01:00
Laurentiu Ion
4fccc7c46c vb: Use bytestream2 functions
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-01-14 22:12:53 -05:00
Michael Niedermayer
d9816cd5df imgconvert: add PIX_FMT_GRAY8A to pix_fmt_info
Fixes selecting gray8a for PAM

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-15 02:40:18 +01:00
Michael Niedermayer
4640da7e58 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  sgidec: Use bytestream2 functions to prevent buffer overreads.
  cosmetics: Move static and inline attributes to more standard places.
  configure: provide libavfilter/version.h header to get_version()
  swscale: change yuv2yuvX code to use cpuflag().
  libx264: Don't leave max_b_frames as -1 if the user didn't set it
  FATE: convert output to rgba for the targa tests which currently output pal8
  fate: add missing reference files for targa tests in 9c2f9b0e2
  FATE: enable the 2 remaining targa conformance suite tests
  targa: add support for rgb555 palette
  FATE: fix targa tests on big-endian systems

Conflicts:
	libavcodec/sgidec.c
	libavcodec/targa.c
	libswscale/x86/output.asm
	tests/fate/image.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-15 01:16:54 +01:00
Michael Niedermayer
a91f206665 ljpegdec: reset restart interval for each plane of a non interleaved file.
Fixes Ticket907

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-15 00:53:59 +01:00
Michael Niedermayer
1843e6c8aa thp: Fix handling of restart interval
Fixes Ticket903

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-15 00:53:59 +01:00
Reimar Döffinger
7a1723086a Fix compilation without HAVE_AVX, HAVE_YASM etc.
At the very least this should fix warnings about unused static
functions if one or more of these is not defined.
However even compilation might be broken if the compiler does
not optimize the function away completely.
This actually happens in case of the AVX function, since the
function pointer is used in an assignment that is not under
an #if and thus probably only optimized away after the function
was already marked as used.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-14 23:09:39 +01:00
Jean First
c48883163d timecode: fix typo
Signed-off-by: Jean First <jeanfirst@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 22:58:19 +01:00
Michael Niedermayer
52889b543d mpeg12dec: BW10 support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 19:25:15 +01:00
Michael Niedermayer
0d5c810bd5 mpeg12dec: check uppercased codec_tag.
We do this for all other codec_tag checks in mpegvideo*/h26*
doing it here too makes the code more consistent.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 19:25:15 +01:00
Aneesh Dogra
4cd0bdae9a 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>
2012-01-14 12:35:53 -05:00
Reimar Döffinger
83b12c16af Use correct register size, fixes compilation with NASM.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-14 17:43:47 +01:00
Diego Biurrun
e44c11e9fa cosmetics: Move static and inline attributes to more standard places.
Fixes several "‘static’ is not at beginning of declaration" warnings.
2012-01-14 17:32:36 +01:00
Reimar Döffinger
c4ba5198ea Fix leaking of side data.
While we correctly "register" the side data when we split it,
the application (in this case FFmpeg) might not update the
AVPacket pool it uses to finally free the packet, thus
causing a leak.
This also makes the av_dup_packet unnecessary which could
cause an even worse leak in this situation.
Also change the code to not modify the user-provide AVPacket at all.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-14 17:23:57 +01:00
Carl Eugen Hoyos
28002030f2 Support transparency in iff images.
Fixes ticket #707.

Reviewed-by: Peter Ross
2012-01-14 10:38:42 +01:00
Carl Eugen Hoyos
6ba74be511 Add CR/LF to a reget_buffer warning message. 2012-01-14 10:35:03 +01:00
Michael Niedermayer
44e191457a utils: check that parameters havnt changed in reget_buffer()
Fixes Ticket902

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 04:55:15 +01:00
Michael Niedermayer
2422e8271c cabac_functions: fix license header, this wasnt developed in libav
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 04:51:13 +01:00
Michael Niedermayer
c834c7e39c 1000l commit forgotten cabac fix
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 04:47:27 +01:00
Michael Niedermayer
e986a5d10d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  FATE: add tests for targa
  ARM: fix Thumb-mode simple_idct_arm
  ARM: 4-byte align start of all asm functions
  rgb2rgb: rgb12to15()
  swscale-test: fix stack overread.
  swscale: fix invalid conversions and memory problems.
  cabac: split cabac.h into declarations and function definitions
  cabac: Mark ff_h264_mps_state array as static, it is only used within cabac.c.
  cabac: Remove ff_h264_lps_state array.

Conflicts:
	libswscale/rgb2rgb.h
	libswscale/swscale_unscaled.c
	tests/fate/image.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 02:22:09 +01:00
Carl Eugen Hoyos
36397ea1c7 RGBA64 encoding with libopenjpeg.
Reviewed-by: Michael Bradshaw
2012-01-14 01:34:16 +01:00
Carl Eugen Hoyos
ffd1017fb8 Gray16 encoding with libopenjpeg.
Reviewed-by: Michael Bradshaw
2012-01-14 01:31:53 +01:00
Baptiste Coudurier
89fc7e36c7 alacdec: support 32 bps
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 01:17:06 +01:00
Michael Niedermayer
8d95eb6702 lavc: Prevent opening of experimental codecs if strict_std_compliance > FF_COMPLIANCE_EXPERIMENTAL.
Some of these encoders may produce invalid bitstreams, which should not
be done without the user knowing.
Some of these decoders may be unfinished and may contain security issues.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-14 01:17:06 +01:00
Carl Eugen Hoyos
dd55adb1a7 Support reading 64bit dpx images.
Reviewed-by: Jean First
2012-01-14 01:15:42 +01:00
Carl Eugen Hoyos
0b1f20e23c Support reading 64bit sgi images.
Reviewed-by: Jean First
2012-01-14 01:14:51 +01:00
Carl Eugen Hoyos
3fe4540b08 Support 64bit pam encoding. 2012-01-14 01:13:20 +01:00
Carl Eugen Hoyos
c714cd3bd4 Support 64bit tiff images.
Fixes a part of ticket #503.

Reviewed-by: Paul B Mahol
Reviewed-by: Jean First
2012-01-14 01:10:13 +01:00
Martin Storsjö
57facb73ab 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>
2012-01-14 02:08:42 +02:00
Carl Eugen Hoyos
7c10d3ca2e Simplify 32bit RGB pam encoding.
Reviewed-by: Paul B Mahol
2012-01-14 00:58:40 +01:00
Justin Ruggles
faaebcdf6b targa: add support for rgb555 palette 2012-01-13 17:11:41 -05:00
Mans Rullgard
71b3a63e9c 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>
2012-01-13 19:09:59 +00:00
Mans Rullgard
5c5e1ea3cd 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>
2012-01-13 19:09:59 +00:00
Reimar Döffinger
4cef928ef7 j2kdec: Fix memleak, ensure cleanup is called also on error.
Fixes valgrind fate with fate-suite/r3d/4MB-sample.r3d.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-13 19:51:19 +01:00
Clément Bœsch
f2193569a5 8svx: fix memleak in iff-fibonacci fate test. 2012-01-13 16:22:25 +01:00
Michael Niedermayer
b18e17eabf Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  utils: Check for extradata size overflows.
  ARM: rv34: fix asm syntax in dc transform functions
  avio: Fix the value of the deprecated URL_FLAG_NONBLOCK
  rv34: fix and optimise frame dependency checking
  rv34: NEON optimised dc only inverse transform
  avprobe: use avio_size() instead of deprecated AVFormatContext.file_size.
  ffmenc: remove references to deprecated AVFormatContext.timestamp.
  lavf: undeprecate read_seek().
  avserver: remove code using deprecated CODEC_CAP_PARSE_ONLY.
  lavc: replace some remaining FF_I_TYPE with AV_PICTURE_TYPE_I
  lavc: ifdef out parse_only AVOption
  nellymoserdec: SAMPLE_FMT -> AV_SAMPLE_FMT
  mpegvideo_enc: ifdef out/replace references to deprecated codec flags.
  riff: remove references to sonic codec ids
  indeo4: add some missing static and const qualifiers
  rv34: DC-only inverse transform
  avconv: use AVFrame.width/height/format instead of corresponding AVCodecContext fields
  lavfi: move version macros to a new installed header version.h
  vsrc_buffer: release the buffer on uninit.
  rgb2rgb: rgb12tobgr12()
  ...

Conflicts:
	avconv.c
	doc/APIchanges
	ffprobe.c
	libavfilter/Makefile
	libavfilter/avfilter.h
	libswscale/rgb2rgb.c
	libswscale/rgb2rgb.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-13 01:29:48 +01:00
Carl Eugen Hoyos
2c90204598 Fix decoding of progressive jpgs with unusual pixel formats.
Fixes ticket #892.
2012-01-12 23:20:33 +01:00
Diego Biurrun
55b9ef18e4 cabac: split cabac.h into declarations and function definitions
This fixes standalone compilation of some decoders with --disable-optimizations.
cabac.h defines some inline functions that use symbols from cabac.c.  Without
optimizations these inline functions are not eliminated and linking fails with
references to non-existing symbols.

Splitting the inline functions off into their own header and only #including
it in the places where the inline functions are used allows #including cabac.h
from anywhere without ill effects.
2012-01-12 23:08:23 +01:00
Diego Biurrun
0a60780c7f cabac: Mark ff_h264_mps_state array as static, it is only used within cabac.c. 2012-01-12 22:57:42 +01:00
Diego Biurrun
64d779f2f7 cabac: Remove ff_h264_lps_state array.
It was only ever used in the cabac test program, but never initialized.
2012-01-12 22:54:24 +01:00
Alex Converse
4df30f7114 utils: Check for extradata size overflows. 2012-01-12 13:26:13 -08:00
Mans Rullgard
81dc6a2a3c ARM: rv34: fix asm syntax in dc transform functions
Signed-off-by: Mans Rullgard <mans@mansr.com>
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-01-12 22:11:13 +01:00
Janne Grunau
3547f8e8f8 rv34: fix and optimise frame dependency checking
The sporadic threading errors during fate-rv30 were caused by calling
ff_thread_await_progress with mb row -1 as argument. That returns
immediately since progress is initialized to -1. Not yet computed
motion vectors from the reference could be used for the first
macroblocks.
2012-01-12 18:38:08 +01:00
Janne Grunau
e1e369049e rv34: NEON optimised dc only inverse transform
30-50% faster than the C implementation, 0.5% overall speedup on
bourne.rmvb.
2012-01-12 18:33:55 +01:00
Anton Khirnov
f3d02a8b28 lavc: replace some remaining FF_I_TYPE with AV_PICTURE_TYPE_I 2012-01-12 18:18:23 +01:00
Anton Khirnov
a29c25a9b2 lavc: ifdef out parse_only AVOption 2012-01-12 18:18:23 +01:00
Anton Khirnov
d54f1e6407 nellymoserdec: SAMPLE_FMT -> AV_SAMPLE_FMT 2012-01-12 18:18:23 +01:00
Anton Khirnov
0c71cc6526 mpegvideo_enc: ifdef out/replace references to deprecated codec flags. 2012-01-12 18:18:22 +01:00
Carl Eugen Hoyos
01616f12e2 Fix linesize for rawvideo in mov.
Fixes ticket #823.
2012-01-12 17:02:13 +01:00
Carl Eugen Hoyos
ef3a19d595 Fix compilation with yasm-0.6.2 2012-01-12 16:35:49 +01:00
Paul B Mahol
3e8a368b2b lavc: constify enums for .pix_fmts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-12 16:32:55 +01:00
Paul B Mahol
bd36ec55be bmpdec: proper check for alpha
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-12 16:32:55 +01:00
Kostya Shishkov
08bab32cf1 indeo4: add some missing static and const qualifiers
From the patch by Reimar Döffinger.
2012-01-12 13:54:41 +01:00
Christophe GISQUET
3faa303a47 rv34: DC-only inverse transform
When decoding coefficients, detect whether the block is DC-only, and take
advantage of this knowledge to perform DC-only inverse transform.

This is achieved by:
- first, changing the 108x4 element modulo_three_table into a 108 element
  table (kind of base4), and accessing each value using mask and shifts.
- then, checking low bits for 0 (as they represent the presence of higher
  frequency coefficients)

Also provide x86 SIMD code for the DC-only inverse transform.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-01-12 09:52:33 +01:00
Michael Niedermayer
794006f8fe Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fft: init functions with INIT_XMM/YMM.
  pcmenc: set frame_size to 0.
  gsm demuxer: use generic seeking instead of a gsm-specific function.
  gsm demuxer: return packets with only 1 gsm block at a time.
  avcodec: add GSM parser
  doc: Replace ffmpeg references in avserver config file by avconv.
  doc: Fix names of av_log color environment variables.
  Fix a bunch of platform name and other typos.
  Add some missing changelog entries and release 0.8_beta2
  No longer build libpostproc by default
  wtv: fix memleaks during normal operation
  threads: add CODEC_CAP_AUTO_THREADS for libvpx and xavs

Conflicts:
	Changelog
	RELEASE
	cmdutils.c
	configure
	doc/ffserver.conf
	doc/platform.texi
	ffplay.c
	libavcodec/Makefile
	libavcodec/version.h
	libavformat/wtv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-12 01:10:32 +01:00
Carl Eugen Hoyos
4093d130d1 Support encoding RGB48 with libopenjpeg.
Reviewed-by: Michael Bradshaw
2012-01-11 23:58:43 +01:00
Alex Converse
b5fc571e4f latmdec: Check AudioSpecificConfig length before decoding extradata.
This is different than a normal get_bits() over read because
decode_audio_specific_config() creates its own GetBitContext.

Fixes Bug 170.
2012-01-11 14:40:47 -08:00
Michael Niedermayer
5387f9917f cabac: Try to disable problematic ASM for gcc-llvm 4.2.1
This should fix compilation with gcc-llvm (see darwin fate box)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-11 22:30:21 +01:00
Paul B Mahol
8b87fd9825 bmpenc: support for BGRA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-11 21:29:25 +01:00
Michael Niedermayer
84d0fcf268 libmp3lame: It appears the buffer used is a bit too small.
Increase it by an arbitrary amount.
Fixes part of Ticket676

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-11 21:26:12 +01:00
Henrik Gramner
e7d02b04dc fft: init functions with INIT_XMM/YMM.
This is required to handle clobbering of XMM registers on Win64
correctly. Fixes FFT and all tests depending on FFT on Win64.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-01-11 20:12:26 +01:00
Clément Bœsch
ca1bae3983 timecode: support >24h timecode. 2012-01-11 18:14:13 +01:00
Clément Bœsch
f1db99166b timecode: string representation can be negative.
Timecode can be specified with a negative value in MOV...
2012-01-11 18:14:09 +01:00
Clément Bœsch
98aafc5bbf timecode: set a fixed buffer size of 16B for tc string. 2012-01-11 18:14:03 +01:00
Justin Ruggles
56f22b7e16 pcmenc: set frame_size to 0.
This indicates that the actual frame size is based on the buf_size passed to
avcodec_encode_audio().
2012-01-11 09:09:56 -05:00
Paul B Mahol
7c4b397508 bmpdec: support various bitfields for 32 bit depth
Fixes #740

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-11 14:57:56 +01:00
Justin Ruggles
82390f57d1 avcodec: add GSM parser
The WAVE demuxer returns packets with many blocks per frame, which needs to be
parsed into single blocks. This has a side-effect of fixing the timestamps.
2012-01-11 08:56:24 -05:00
Diego Biurrun
5ea20630b4 Fix a bunch of platform name and other typos. 2012-01-11 13:48:30 +01:00
Paul B Mahol
98dfdfdd8e tiffdec: notify user that tile support is missing
Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
2012-01-11 11:15:05 +01:00
Michael Niedermayer
0e7fc3cafe Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  rv34: frame-level multi-threading
  mpegvideo: claim ownership of referenced pictures
  aacsbr: prevent out of bounds memcpy().
  ipmovie: fix pts for CODEC_ID_INTERPLAY_DPCM
  sierravmd: fix audio pts
  bethsoftvideo: Use bytestream2 functions to prevent buffer overreads.
  bmpenc: support for PIX_FMT_RGB444
  swscale: fix crash in fast_bilinear code when compiled with -mred-zone.
  swscale: specify register type.
  rv34: use get_bits_left()
  avconv: reinitialize the filtergraph on resolution change.
  vsrc_buffer: error on changing frame parameters.
  avconv: fix -copyinkf.
  fate: Update file checksums after the mov muxer change in a78dbada55
  movenc: Don't store a nonzero creation time if nothing was set by the caller
  bmpdec: support for rgb444 with bitfields compression
  rgb2rgb: allow conversion for <15 bpp
  doc: fix stray reference to FFmpeg
  v4l2: use C99 struct initializer
  v4l2: poll the file descriptor
  ...

Conflicts:
	avconv.c
	libavcodec/aacsbr.c
	libavcodec/bethsoftvideo.c
	libavcodec/kmvc.c
	libavdevice/v4l2.c
	libavfilter/vsrc_buffer.c
	libswscale/swscale_unscaled.c
	libswscale/x86/input.asm
	tests/ref/acodec/alac
	tests/ref/acodec/pcm_s16be
	tests/ref/acodec/pcm_s24be
	tests/ref/acodec/pcm_s32be
	tests/ref/acodec/pcm_s8
	tests/ref/lavf/mov
	tests/ref/vsynth1/dnxhd_1080i
	tests/ref/vsynth1/mpeg4
	tests/ref/vsynth1/qtrle
	tests/ref/vsynth1/svq1
	tests/ref/vsynth2/dnxhd_1080i
	tests/ref/vsynth2/mpeg4
	tests/ref/vsynth2/qtrle
	tests/ref/vsynth2/svq1

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-11 02:44:43 +01:00
Janne Grunau
f6a152db11 threads: add CODEC_CAP_AUTO_THREADS for libvpx and xavs 2012-01-11 00:23:07 +01:00
Michael Niedermayer
a9bd29e15e Merge remote-tracking branch 'richardpl/sws'
* richardpl/sws:
  rgb2rgb: remove unused bgr8torgb8()
  rgb2rgb: rgb12tobgr12()
  rgb2rgb: allow conversion for <15 bpp
  bmpenc: support for PIX_FMT_RGB444
  bmpdec: support for rgb444 with bitfields compression

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-10 23:12:24 +01:00
Michael Niedermayer
24be30de64 ljpegdec: Fix the left column of rgb24 decoding
Fixes Ticket894

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-10 23:12:18 +01:00
Janne Grunau
9472d37d8e rv34: frame-level multi-threading
Statistics for bourne.rmvb -an -f null

1 thread:  37.12s user 0.03s system  99% cpu 37.174 total
2 threads: 47.63s user 0.24s system 185% cpu 25.807 total
4 threads: 41.21s user 0.30s system 327% cpu 12.674 total
2012-01-10 22:51:56 +01:00
Janne Grunau
3ab7700018 mpegvideo: claim ownership of referenced pictures
Under certain conditions pictures could be released before they were
returned with frame-threading. Broken mv computation in the upcoming
rv34 frame-threading patch was caused by this.

To prevent contexts from running out of available pictures the loop
releasing "unused" pictures has to be run for B frames too.
2012-01-10 22:51:56 +01:00
Alex Converse
17ce52912f aacsbr: prevent out of bounds memcpy().
Fixes Libav Bug 195.

This doesn't make the code handle sample rate or upsample/downsample
change properly but this is still a good sanity check.

Based on change by Michael Niedermayer.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
2012-01-10 13:13:34 -08:00
Aneesh Dogra
29112db8c0 bethsoftvideo: Use bytestream2 functions to prevent buffer overreads.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-10 10:34:16 -08:00
Paul B Mahol
047a28f759 bmpenc: support for PIX_FMT_RGB444 2012-01-10 18:00:37 +00:00
Paul B Mahol
a6839c4e60 bmpdec: support for rgb444 with bitfields compression
Do not display garbage for invalid/unsupported bitfields values.
2012-01-10 18:00:37 +00:00
Paul B Mahol
84e5159e25 bmpenc: support for PIX_FMT_RGB444
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-10 09:29:22 -08:00
Janne Grunau
e652cc9606 rv34: use get_bits_left()
It is not necessary to store the bit stream length in a RV34DecContext
field.
2012-01-10 16:58:53 +01:00
Paul B Mahol
353a2d2164 bmpdec: support for rgb444 with bitfields compression
Do not display garbage for invalid/unsupported bitfields values.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-10 05:58:19 -08:00
anonymous
7e2ba2df28 mjpeg: update whitespaces to qatar 2012-01-10 06:58:02 +01:00
Michael Niedermayer
dd3ca3ea15 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: Add tests for more AAC features.
  aacps: Add missing newline in error message.
  fate: Add tests for vc1/wmapro in ism.
  aacdec: Add a fate test for 5.1 channel SBR.
  aacdec: Turn off PS for multichannel files that use PCE based configs.
  cabac: remove put_cabac_u/ueg from cabac-test.
  swscale: RGB4444 and BGR444 input
  FATE: add test for xWMA demuxer.
  FATE: add test for SMJPEG demuxer and associated IMA ADPCM audio decoder.
  mpegaudiodec: optimized iMDCT transform
  mpegaudiodec: change imdct window arrangment for better pointer alignment
  mpegaudiodec: move imdct and windowing function to mpegaudiodsp
  mpegaudiodec: interleave iMDCT buffer to simplify future SIMD implementations
  swscale: convert yuy2/uyvy/nv12/nv21ToY/UV from inline asm to yasm.
  FATE: test to exercise WTV demuxer.
  mjpegdec: K&R formatting cosmetics
  swscale: K&R formatting cosmetics for code examples
  swscale: K&R reformatting cosmetics for header files
  FATE test: cvid-grayscale; ensures that the grayscale Cinepak variant is exercised.

Conflicts:
	libavcodec/cabac.c
	libavcodec/mjpegdec.c
	libavcodec/mpegaudiodec.c
	libavcodec/mpegaudiodsp.c
	libavcodec/mpegaudiodsp.h
	libavcodec/mpegaudiodsp_template.c
	libavcodec/x86/Makefile
	libavcodec/x86/imdct36_sse.asm
	libavcodec/x86/mpegaudiodec_mmx.c
	libswscale/swscale-test.c
	libswscale/swscale.c
	libswscale/swscale_internal.h
	libswscale/x86/swscale_template.c
	tests/fate/demux.mak
	tests/fate/microsoft.mak
	tests/fate/video.mak
	tests/fate/wma.mak
	tests/ref/lavfi/pixfmts_scale

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-10 03:50:41 +01:00
Laurentiu Ion
da2e774fd6 kmvc: Use bytestream2 functions to prevent buffer overreads.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-09 17:26:33 -08:00
Carl Eugen Hoyos
ceb0dd9f1e Support decoding 1bpp and 4bpp palettized sunrast images.
Fixes ticket #864 and ticket #897.
2012-01-09 22:39:47 +01:00
Paul B Mahol
e20a4881ff pngdec: show verbose message for unsupported files 2012-01-09 22:35:19 +01:00
Alex Converse
9de3cbc182 aacps: Add missing newline in error message. 2012-01-09 11:06:14 -08:00
Alex Converse
4acd43a295 aacdec: Turn off PS for multichannel files that use PCE based configs.
Fixes al_sbr_cm_48_5.1.mp4.
2012-01-09 11:04:05 -08:00
Michael Niedermayer
f247f4cf47 cabac: 3rd try at working around a compiler bug in clang.
Switch to a broader detection of versions.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-09 16:04:26 +01:00
Diego Biurrun
1ef8ff4534 cabac: remove put_cabac_u/ueg from cabac-test.
The functions are not used in any part of Libav, therefore testing them in the
cabac-test is unnecessary. Since this makes them unused, remove the functions.
2012-01-09 14:10:41 +01:00
Reimar Döffinger
4231bbbf4c sgidec: make compiler optimize away memcpy call in inner loop.
Using an always_inline function makes the memcpy length a constant,
any reasonable compiler will replace it by a single mov instruction
without us having to duplicate the actual code.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-09 11:02:21 +01:00
Michael Niedermayer
444632eae6 cabac: Disable get_cabac_inline_x86() for clang 2.9 on x86_32
This should finally fix the compilation issue on darwin

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-09 03:43:56 +01:00
Michael Niedermayer
2138a89e71 Revert "Revert commit 599b4c6efddaed33b1667c386b34b07729ba732b"
This reverts commit c4f237a981.
This didnt fix compilation on darwin with current clang.
2012-01-09 03:32:06 +01:00
Vitor Sessak
39df0c434c mpegaudiodec: optimized iMDCT transform
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 17:40:55 -08:00
Vitor Sessak
06677d0dd9 mpegaudiodec: change imdct window arrangment for better pointer alignment
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 17:37:23 -08:00
Vitor Sessak
6dfcf53092 mpegaudiodec: move imdct and windowing function to mpegaudiodsp
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 17:37:07 -08:00
Vitor Sessak
421c99a4a7 mpegaudiodec: interleave iMDCT buffer to simplify future SIMD implementations
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 17:37:03 -08:00
Michael Niedermayer
9273efac1b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  bfi: Use bytestream2 functions to prevent buffer overreads.
  dpcm: Fix invalid writes
  utvideo: frame multithreading.
  vorbis: An additional defense in the Vorbis codec.
  vorbisdec: Fix decoding bug with channel handling

Conflicts:
	libavcodec/dpcm.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-09 00:32:38 +01:00
Michael Niedermayer
b143562639 ljpegdec: Support MCU in ljpeg_decode_yuv_scan()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-09 00:06:23 +01:00
Daniel Huang
8549cf073b mjpegdec: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-01-08 23:33:00 +01:00
Aneesh Dogra
ccc27e2139 bfi: Use bytestream2 functions to prevent buffer overreads.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 13:26:54 -08:00
Laurentiu Ion
529a25d6e5 dpcm: Fix invalid writes
Fixes bug: #152

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 13:13:11 -08:00
Aneesh Dogra
12e984aed7 utvideo: frame multithreading.
>> time ./avconv -i file.avi -f null -
Before : real	0m7.784s
After  : real   0m3.662s

Tested on a Intel Core i3 Processor (2 cores, 4 threads).

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-08 12:21:10 -08:00
Michael Niedermayer
cd2a27e1e5 Merge remote-tracking branch 'dilaroga/master'
* dilaroga/master:
  vda: cosmetic.
  vda: removes useless doxygen command.
  vda: uses pthreads directly.
  vda: convert 3 byte NAL sizes to 4 byte.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-08 20:26:55 +01:00
Paul B Mahol
dd319f17e6 tta: remove obsolete and useless error message
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-08 20:26:39 +01:00
Carl Eugen Hoyos
73ddc5869d Support 48bit rgb pam encoding. 2012-01-08 20:22:17 +01:00
Sebastien Zwickert
186980bf0f vda: cosmetic. 2012-01-08 20:22:12 +01:00
Sebastien Zwickert
e953b8b7be vda: removes useless doxygen command. 2012-01-08 20:22:12 +01:00
Sebastien Zwickert
75be547f77 vda: uses pthreads directly. 2012-01-08 20:22:12 +01:00
Sebastien Zwickert
5ada64a549 vda: convert 3 byte NAL sizes to 4 byte. 2012-01-08 20:22:12 +01:00
Carl Eugen Hoyos
fac2a6fa0c Support 16bit gray pam encoding. 2012-01-08 20:20:29 +01:00
Carl Eugen Hoyos
2f21c50784 Support decoding 32bit sunrast images.
Fixes ticket #895.
2012-01-08 20:16:57 +01:00
Reimar Döffinger
aeeb0e6deb indeo4, swresample: add some missing static/const to tables.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-08 19:11:58 +01:00
Reimar Döffinger
ee4ba9aecd Fix incorrect increment in sgidec.c
Fixes trac issue #899.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-08 17:26:23 +01:00
Chris Evans
afb2aa5379 vorbis: An additional defense in the Vorbis codec.
Fixes Bug: #190
Chromium Bug: #100543
Related to CVE-2011-3893

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2012-01-08 09:09:26 +01:00
Michael Niedermayer
757473831c Merge remote-tracking branch 'qatar/master'
* qatar/master: (29 commits)
  cabac: Move code only used within the CABAC test program into the test program.
  vp56: Drop unnecessary cabac.h #include.
  h264-test: Initialize AVCodecContext.av_class.
  build: Skip compiling network.h and rtsp.h if networking is not enabled.
  cosmetics: drop some pointless parentheses
  Disable annoying warning without changing behavior
  faq: Solutions for common problems with sample paths when running FATE.
  avcodec: attempt to clarify the CODEC_CAP_DELAY documentation
  avcodec: fix avcodec_encode_audio() documentation.
  FATE: xmv-demux test; exercise the XMV demuxer without decoding the perceptual codecs inside.
  vqf: recognize more metadata chunks
  FATE test: BMV demuxer and associated video and audio decoders.
  FATE: indeo4 video decoder test.
  FATE: update xxan-wc4 test to a sample with more code coverage.
  Change the recent h264_mp4toannexb bitstream filter test to output to an elementary stream rather than a program stream.
  g722enc: validate AVCodecContext.trellis
  g722enc: set frame_size, and also handle an odd number of input samples
  g722enc: split encoding into separate functions for trellis vs. no trellis
  mpegaudiodec: Use clearer pointer math
  tta: Fix returned error code at EOF
  ...

Conflicts:
	libavcodec/h264.c
	libavcodec/indeo3.c
	libavcodec/interplayvideo.c
	libavcodec/ivi_common.c
	libavcodec/libxvidff.c
	libavcodec/mpegvideo.c
	libavcodec/ppc/mpegvideo_altivec.c
	libavcodec/tta.c
	libavcodec/utils.c
	libavfilter/vsrc_buffer.c
	libavformat/Makefile
	tests/fate/indeo.mak
	tests/ref/acodec/g722

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-08 03:34:22 +01:00
Michael Niedermayer
a407baba85 g723_1: Fix "libavcodec/g723_1.c:988:8: warning: assignment from incompatible pointer type [enabled by default]"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-08 00:18:36 +01:00
Michael Niedermayer
53918a1c54 dca: Fix uninitialized variable warnings.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-08 00:18:36 +01:00
Michael Niedermayer
2d6f317d71 jpegdec: support ilv=1 grayscale jpeg-ls.
Fixes Ticket851

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-08 00:18:36 +01:00
Michael Niedermayer
bbe25b4f3e ljpegdec: support non zero MCU for RGB. 2nd try
Fixes Ticket875
Compared to patch 1 this fixes a bright line at the right side.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-08 00:18:36 +01:00
Reinhard Tartler
e6d527ff72 vorbisdec: Fix decoding bug with channel handling
Fixes Bug: #191
Chromium Bug: #101458
CVE-2011-3895

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2012-01-07 23:16:52 +01:00
Diego Biurrun
badb195d13 cabac: Move code only used within the CABAC test program into the test program. 2012-01-07 22:13:14 +01:00
Diego Biurrun
1be4b8ccba vp56: Drop unnecessary cabac.h #include. 2012-01-07 22:13:12 +01:00
Diego Biurrun
a7e3cb9d32 h264-test: Initialize AVCodecContext.av_class.
This fixes a segfault on startup.

Also remove a commented-out and completely unused variable.
2012-01-07 22:13:10 +01:00
Diego Biurrun
3dc99a18d4 cosmetics: drop some pointless parentheses 2012-01-07 22:13:07 +01:00
Justin Ruggles
3f6aa85ed4 avcodec: attempt to clarify the CODEC_CAP_DELAY documentation 2012-01-07 14:33:16 -05:00
Justin Ruggles
07837e4158 avcodec: fix avcodec_encode_audio() documentation.
the previous documentation indicated how many bytes are read from the input,
not how many samples are read.
2012-01-07 14:33:15 -05:00
Justin Ruggles
cf1a259ad6 g722enc: validate AVCodecContext.trellis 2012-01-07 13:38:23 -05:00
Justin Ruggles
77c5b66cbe g722enc: set frame_size, and also handle an odd number of input samples
The fate reference is updated because the previous test skipped a sample in
each encode() call due each input frame having an odd number of samples.
2012-01-07 13:38:23 -05:00
Justin Ruggles
34093ba081 g722enc: split encoding into separate functions for trellis vs. no trellis 2012-01-07 13:38:23 -05:00
Carl Eugen Hoyos
19b945dc2a Cosmetics: Fix indentation.
Found by: Alexander Strasser
2012-01-07 19:23:21 +01:00
Vitor Sessak
96219141e2 mpegaudiodec: Use clearer pointer math
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-07 08:23:27 -08:00
Justin Ruggles
52e9854a83 tta: fix 24-bit decoding.
Decode to the correct output buffer.
2012-01-07 09:44:13 -05:00
Paul B Mahol
17aa02b9a1 interplayvideo: Handle changed video dimensions on the fly
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-01-07 15:25:38 +02:00
Martin Storsjö
c5d907b6b0 libavcodec: Handle param change side data in avcodec_decode_video2, too
Also call avcodec_set_dimensions on dimension param change packets.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-01-07 15:25:35 +02:00
Martin Storsjö
867f923df4 libavcodec: Move apply_param_change up above avcodec_decode_video2
This is in preparation to calling it from avcodec_decode_video2.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-01-07 15:25:30 +02:00
Janne Grunau
be540e0cb3 indeo3: check motion vectors for validity
Fixes null pointer dereferences in fuzzed files found by Oana Stratulat.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-01-07 09:41:11 +01:00
Michael Niedermayer
6a56f4e634 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  flicvideo: fix invalid reads
  vorbis: Avoid some out-of-bounds reads
  vqf: add more known extensions
  cabac: remove unused function renorm_cabac_decoder
  h264: Only use symbols from the SVQ3 decoder under proper conditionals.
  add bytestream2_tell() and bytestream2_seek() functions
  parsers: initialize MpegEncContext.slice_context_count to 1
  spdifenc: use special alignment for DTS-HD length_code

Conflicts:
	libavcodec/flicvideo.c
	libavcodec/h264.c
	libavcodec/mpeg4video_parser.c
	libavcodec/vorbis.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-07 02:30:27 +01:00
Michael Niedermayer
b18a0cc781 indeo5: Fix null pointer dereference.
Bug found by: Oana Stratulat

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-01-07 00:18:42 +01:00
Michael Niedermayer
12d8340f16 ljpeg: Fix bits != 8 or 16 support
Fixes 2nd half of Ticket889

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-07 00:11:43 +01:00
Michael Niedermayer
5152beeba8 ljpeg: Add predictor=0 support.
Fixed first half of ticket889

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-07 00:11:43 +01:00
Laurentiu Ion
b348c852aa flicvideo: fix invalid reads
Prevent invalid reads using bytestream2 functions.
Fixes bug #126.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-01-06 16:48:27 -05:00
Chris Evans
57cd6d7095 vorbis: Avoid some out-of-bounds reads
Fixes Bug: #190
Chromium Bug: #100543
Related to CVE-2011-3893

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2012-01-06 19:58:22 +01:00
Diego Biurrun
3aa3fc45fe cabac: remove unused function renorm_cabac_decoder 2012-01-06 13:37:55 +01:00
Diego Biurrun
301fb92131 h264: Only use symbols from the SVQ3 decoder under proper conditionals.
Fixes --disable-everything --enable-decoder=h264 --disable-optimizations.
2012-01-06 13:37:53 +01:00
Clément Bœsch
ed14b7242a timecode: more tolerant frame rate check for drop flag.
This fixes some timecode probing in MOV.
2012-01-06 12:16:06 +01:00
Justin Ruggles
6e8bf6db48 add bytestream2_tell() and bytestream2_seek() functions 2012-01-05 23:36:36 -05:00
Michael Niedermayer
3edff185ab Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  ipmovie: do not read audio packets before the codec is known
  truemotion2: check size before GetBitContext initialisation
  avio: Only do implicit network initialization for network protocols
  avio: Add an URLProtocol flag for indicating that a protocol uses network
  adpcm: ADPCM Electronic Arts has always two channels
  matroskadec: Fix a bug where a pointer was cached to an array that might later move due to a realloc()
  fate: Add missing reference file from 9b4767e4.
  mov: Support MOV_CH_LAYOUT_USE_DESCRIPTIONS for labeled descriptions.
  4xm: Prevent buffer overreads.
  mjpegdec: parse RSTn to prevent skipping other data in mjpeg_decode_scan
  vp3: add fate test for non-zero last coefficient
  vp3: fix streams with non-zero last coefficient
  swscale: remove unused U/V arguments from yuv2rgb_write().
  timer: K&R formatting cosmetics
  lavf: cosmetics, reformat av_read_frame().
  lavf: refactor av_read_frame() to make it easier to understand.
  Report an error if pitch_lag is zero in AMR-NB decoder.
  Revert "4xm: Prevent buffer overreads."
  4xm: Prevent buffer overreads.
  4xm: pass the correct remaining buffer size to decode_i2_frame().
  ...

Conflicts:
	libavcodec/4xm.c
	libavcodec/mjpegdec.c
	libavcodec/truemotion2.c
	libavformat/ipmovie.c
	libavformat/mov_chan.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-06 02:45:12 +01:00
Janne Grunau
f907615f08 parsers: initialize MpegEncContext.slice_context_count to 1
The mpeg4 video, H264 and VC-1 parser hold (directly or indirectly)
a MpegEncContext in their private context. Since they do not call the
common mpegvideo init function slice_context_count has explicitly set
to 1.
Prevents a null pointer dereference in the h264 parser and fixes
bug 193.
2012-01-06 01:47:45 +01:00
James Zern
95afa0a573 libvpxenc: restore vp8flags for compatibility
removed in 98df93c, this makes the documentation correct again.

Found-by:  j@v2v.cc

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-06 01:46:51 +01:00
Michael Niedermayer
c88f0b728c tta: Fix regression of 24bit decoding.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-06 01:46:51 +01:00
Michael Niedermayer
c4f237a981 Revert commit 599b4c6efd
Author: Mans Rullgard <mans@mansr.com>
	Date:   Sun Dec 11 21:41:59 2011 +0000

    	x86: cabac: replace explicit memory references with "m" operands

    	This replaces the explicit offset(reg) memory references with
    	"m" operands for the same locations.  As a result, one fewer
    	register operand is needed for these inline asm statements.

This change appears to have broken compilation on darwin, and subsequent
fixes by martin (which did not fix compilation) removed the register
advantage, thus this change seems not a good idea to keep.
See: http://fate.ffmpeg.org/log.cgi?time=20120103122446&log=compile&slot=i386-darwin-llvm-gcc-4.2.1

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-06 01:46:51 +01:00
Carl Eugen Hoyos
e9a591d1f0 Fix compilation with --disable-everything --enable-demuxer=mov. 2012-01-06 01:40:34 +01:00
ami_stuff
febf75f3d2 pam: Reject 64bpp rgba.
Fixes ticket #883
2012-01-06 01:25:54 +01:00
Carl Eugen Hoyos
09f25a9cb0 Allow decoding of uyvy422 CYUV with -vcodec rawvideo.
FourCC CYUV can be Creative YUV and uyvy422 rawvideo.
2012-01-06 00:59:08 +01:00
Carl Eugen Hoyos
d185278c36 Support decoding of some unusual jpeg samples.
Avoid unsupported pix_fmts by upscaling chroma.

Fixes ticket #878.
2012-01-06 00:51:31 +01:00
Janne Grunau
696ace50ea truemotion2: check size before GetBitContext initialisation
Prevents null ptr derefence for negative sizes.
2012-01-05 23:19:13 +01:00
Janne Grunau
bb5b3940b0 adpcm: ADPCM Electronic Arts has always two channels 2012-01-05 22:29:18 +01:00
Reimar Döffinger
4278023240 Check for overread in vqa video decoder.
This issue was discovered while decoding the FATE sample vqa/ws_snd.vqa.
For some unknown reason only audio decoding is tested by FATE for that file,
but not video.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-05 22:24:51 +01:00
Reimar Döffinger
1d0d63052b sipr: fall back to setting mode based on bit_rate.
Not all applications (e.g. MPlayer) set block_align, and
when using a different demuxer it might not even be
easily available.
So fall back to selecting mode based on bit rate as before
if block_align has not useful value.
It can't be worse than failing to decode completely.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-01-05 22:24:51 +01:00
Clément Bœsch
2aa7375a98 timecode: add avpriv_check_timecode_rate(). 2012-01-05 20:59:52 +01:00
ami_stuff
a44b63f6c8 Support 48bpp pam decoding.
Fixes ticket #882.
2012-01-05 20:58:24 +01:00
ami_stuff
871e2f4fac Support 16bpp grayscale pam decoding.
Fixes ticket #881.
2012-01-05 20:57:49 +01:00
Michael Niedermayer
02026d08a9 libvpxenc: Remove duplicate AVOption constants.
Found-by:  j@v2v.cc
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-05 20:37:47 +01:00
Aneesh Dogra
9b55b4bb3a 4xm: Prevent buffer overreads.
4xm decoder while decoding i2 frames can overread the buffer if proper checks
are not made.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-05 09:37:16 -08:00
Janne Grunau
e268a352af mjpegdec: parse RSTn to prevent skipping other data in mjpeg_decode_scan
Check explicitly if enough bits are left to prevent an infinite loop
when the bitstream buffer is not followed by zero-padding.

Based on patches by Michael Niedermayer <michaelni@gmx.at>.
2012-01-05 18:20:35 +01:00
Janne Grunau
9b4767e478 vp3: fix streams with non-zero last coefficient
Fixes a regression introduced in 8b94df0f20.
2012-01-05 18:18:08 +01:00
Oana Stratulat
7f09791d28 Report an error if pitch_lag is zero in AMR-NB decoder.
This fixes an infinite loop in the decoder on specially
crafted files, and fixes bug 151.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-04 21:33:14 -08:00
Ronald S. Bultje
3fa646e859 Revert "4xm: Prevent buffer overreads."
This reverts commit 295a7c0238. The
patch breaks decoding of regular files (e.g. fate-4xm-2).
2012-01-04 21:27:31 -08:00
Aneesh Dogra
295a7c0238 4xm: Prevent buffer overreads.
4xm decoder while decoding i2 frames can overread the buffer if proper checks
are not made.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-04 21:15:50 -08:00
Aneesh Dogra
4b84f68223 4xm: pass the correct remaining buffer size to decode_i2_frame().
frame_size is the number of bytes left in the packet, so if we are passing
buf-4 we can safely read frame_size+4 bytes.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-04 21:10:11 -08:00
Aneesh Dogra
893f137679 4xm: fix calculation of the next output line position in decode_i2_frame().
The current code doesn't work unless width is an exact multiple of 16.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-01-04 21:09:22 -08:00
Michael Niedermayer
7f83db3124 Merge remote-tracking branch 'qatar/master'
* qatar/master: (46 commits)
  mtv: Make sure audio_subsegments is not 0
  v4l2: use V4L2_FMT_FLAG_EMULATED only if it is defined
  avconv: add symbolic names for -vsync parameters
  flvdec: Fix compiler warning for uninitialized variables
  rtsp: Fix compiler warning for uninitialized variable
  ulti: convert to new bytestream API.
  swscale: Use standard multiple inclusion guards in ppc/ header files.
  Place some START_TIMER invocations in separate blocks.
  v4l2: list available formats
  v4l2: set the proper codec_tag
  v4l2: refactor device_open
  v4l2: simplify away io_method
  v4l2: cosmetics
  v4l2: uniform and format options
  v4l2: do not force interlaced mode
  avio: exit early in fill_buffer without read_packet
  vc1dec: fix invalid memory access for small video dimensions
  rv34: fix invalid memory access for small video dimensions
  rv34: joint coefficient decoding and dequantization
  avplay: Don't call avio_set_interrupt_cb(NULL)
  ...

Conflicts:
	Changelog
	avconv.c
	doc/APIchanges
	doc/indevs.texi
	libavcodec/adxenc.c
	libavcodec/dnxhdenc.c
	libavcodec/h264.c
	libavdevice/v4l2.c
	libavformat/flvdec.c
	libavformat/mtv.c
	libswscale/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-05 02:03:12 +01:00
Michael Niedermayer
ff7f198d7f vorbis: make sure ch is non zero before calling vorbis_residue_decode
This possibly makes part of the CVE-2011-3895 fix unneeded.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-04 21:58:08 +01:00
Chris Evans
f74ce3a60d vorbis: An additional defense in the Vorbis codec.
BUG=101458
Review URL: http://codereview.chromium.org/8414025

Fixes second part of CVE-2011-3895

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-04 21:58:08 +01:00
Chris Evans
68226ed9ec vorbis: Fix decoder bug.
BUG=101458
Review URL: http://codereview.chromium.org/8413019

This fixes part of 2011-3895

bigned-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-04 21:58:08 +01:00
Michael Niedermayer
405e99bdfd vorbisdec: Make sure blocksize is not set to an invalid value.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-04 21:58:08 +01:00
Michael Niedermayer
6fcf2bb8af vorbis: Fix last quarter of CVE-2011-3893
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-04 21:58:08 +01:00
Chris Evans
7149fce2ca ogg: Avoid the possibility to read out-of-bounds of a static global array in Vorbis
decoding.

BUG=100543
Review URL: http://codereview.chromium.org/8365014
This fixes 25% of CVE-2011-3893

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-04 21:58:08 +01:00
Philippe Saint-Pierre
f0f2babca2 Fix possible infinite loop decoding als.
Reviewed-by: Thilo Borgmann
2012-01-04 21:00:06 +01:00
Ronald S. Bultje
89d26797f5 ulti: convert to new bytestream API. 2012-01-04 10:57:37 -08:00
Carl Eugen Hoyos
84ce58faf5 Replace deprecated FF_I_TYPE with AV_PICTURE_TYPE_I in v308 and yuv4.
Found-by: Paul B Mahol
2012-01-04 19:45:46 +01:00
Carl Eugen Hoyos
17edc370b2 yuv4 libquicktime packed 4:2:0 encoder and decoder.
Reviewed-by: Derek Buitenhuis
Reviewed-by: Paul B Mahol
2012-01-04 15:37:59 +01:00
Carl Eugen Hoyos
2754514787 v308 Quicktim Uncompressed 4:4:4 encoder and decoder.
Reviewed-by: Derek Buitenhuis
Reviewed-by: Paul B Mahol
2012-01-04 15:37:59 +01:00
Carl Eugen Hoyos
64e4f4836a Add decoder for Avid 1:1 10-bit RGB Packer (AVrp).
Fixes ticket #525.

Reviewed-by: Paul B Mahol
2012-01-04 15:37:58 +01:00
Diego Biurrun
00a1cdd264 Place some START_TIMER invocations in separate blocks.
This fixes compilation failures related to START_TIMER/STOP_TIMER macros and
-Werror=declaration-after-statement.  START_TIMER declares variables and thus
may not be placed after statements outside of a new block.
2012-01-04 15:05:49 +01:00
John Brooks
d209c27b09 vc1dec: fix invalid memory access for small video dimensions
For small video dimensions, these calculations of the upper bound
for pixel access may have a negative result. Using an unsigned
comparison to bound a potentially negative value only works if
the greater operand is non-negative. Fixed by doing edge emulation
when the upper bound is probably negative, everywhere that this
pattern appears.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-01-04 10:35:26 +01:00
John Brooks
aacf6b3a2f rv34: fix invalid memory access for small video dimensions
For small video dimensions calculations of the upper bound for pixel
access may result in negative value. Using an unsigned comparison
works only if the greater operand is non-negative. This is fixed by
doing edge emulation explicitly for such conditions.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-01-04 10:32:23 +01:00
Christophe GISQUET
98f24ecd6c rv34: joint coefficient decoding and dequantization
Perform dequantization while decoding coefficients instead of performing it
on the entire coefficients buffer.

Since quantized coefficients are very sparse, this usually causes a small
speedup. Speedup of around 1% on Panda board compared to the removed here
neon code. Global speedup is probably around 3%.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-01-04 10:30:01 +01:00
Michael Niedermayer
15b219fae9 jpegdec: Fix vlc table check for progressive jpegs.
Fixes Ticket834

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-04 05:03:15 +01:00
Ronald S. Bultje
400ba1d735 h264: return index in buffer on end-of-sequence.
Fixes hangs if the last packet contains an end-of-sequence NAL unit,
bug 158.
2012-01-03 19:50:22 -08:00
Diego Biurrun
54e68fb3b8 Merge some declarations and initializations.
This fixes compilation failures related to START_TIMER/STOP_TIMER macros and
-Werror=declaration-after-statement.  START_TIMER declares variables and thus
may not be placed after statements outside of a new block.
2012-01-04 01:28:28 +01:00
Michael Niedermayer
ad1c8dd673 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: add dxtory test
  adx_parser: rewrite.
  adxdec: Validate channel count to fix a division by zero.
  adxdec: Do not require extradata.
  cmdutils: K&R reformatting cosmetics
  alacdec: implement the 2-pass prediction type.
  alacenc: implement the 2-pass prediction type.
  alacenc: do not generate invalid multi-channel ALAC files
  alacdec: fill in missing or guessed info about the extradata format.
  utvideo: proper median prediction for interlaced videos
  lavu: bump lavu minor for av_popcount64
  dca: K&R formatting cosmetics
  dct: K&R formatting cosmetics
  lavf: flush decoders in avformat_find_stream_info().
  win32: detect number of CPUs using affinity
  Add av_popcount64
  snow: Restore three mistakenly removed casts.

Conflicts:
	cmdutils.c
	doc/APIchanges
	libavcodec/adx_parser.c
	libavcodec/adxdec.c
	libavcodec/alacenc.c
	libavutil/avutil.h
	tests/fate/screen.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-04 01:12:34 +01:00
Diego Biurrun
9dec55748c cabac: drop unused and disabled get_cabac_u() / get_cabac_ueg() functions 2012-01-04 01:09:54 +01:00
Diego Biurrun
e451c26c5f cabac: drop unused STRICT_LIMITS code branch 2012-01-04 01:09:53 +01:00
Justin Ruggles
9785082c15 libspeexenc: fix pts calculations for more than 1 frame per packet 2012-01-03 18:56:41 -05:00
Justin Ruggles
730280f90d adxdec: clear eof flag and channel states when seeking 2012-01-03 18:47:42 -05:00
Justin Ruggles
754ebd1a5b adxenc: check output buffer size before writing 2012-01-03 18:47:42 -05:00
Justin Ruggles
1fb47728cd adxenc: use bytestream functions for header writing.
also add more documentation about the header structure
2012-01-03 18:47:42 -05:00
Justin Ruggles
656e606cae adxenc: use BLOCK_SIZE and BLOCK_SAMPLES macros 2012-01-03 18:47:42 -05:00
Justin Ruggles
f1be41c63d adxenc: use a loop to encode each channel 2012-01-03 18:47:42 -05:00
Justin Ruggles
6c117bd8e0 adxenc: remove unneeded loops
avctx->frame_size is 32, so that is how many samples we process per call.
2012-01-03 18:47:42 -05:00
Justin Ruggles
613668210b adxenc: avoid stereo deinterleaving 2012-01-03 18:47:41 -05:00
Justin Ruggles
6b77f07074 adxenc: remove unnecessary setting of coded_frame->key_frame.
It is already set by avcodec_alloc_frame().
2012-01-03 18:47:41 -05:00
Justin Ruggles
cc40c056d0 adxenc: log an error message and return AVERROR(EINVAL) for invalid channels 2012-01-03 18:47:41 -05:00
Justin Ruggles
a85ab8ad45 adxenc: cosmetics: pretty-printing 2012-01-03 18:47:41 -05:00
Justin Ruggles
25edfc88e3 adxenc: change some data types 2012-01-03 18:47:41 -05:00
Justin Ruggles
c98c6e18d8 adxenc: remove unneeded log message 2012-01-03 18:47:41 -05:00
Justin Ruggles
e3d4f59f95 adxenc: remove unneeded comments 2012-01-03 18:47:41 -05:00
Michael Niedermayer
6429269096 wmall: remove ;;
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-03 23:52:28 +01:00
Michael Niedermayer
dde545c697 Merge remote-tracking branch 'shariman/wmall'
* shariman/wmall:
  Fix audio output
  Suppress dumping of residues buffer
  Use quantizer value read from bitstream
  Cosmetics: Remove two empty lines and realign some code
  Reset acfilter_prevvalues buffer in clear_codec_buffers()
  Fix AC filter buffers and AC filter reversion

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-03 23:45:48 +01:00
Carl Eugen Hoyos
001567c767 Set bits_per_coded_sample when encoding Y41P.
This allows mplayer -vc bt411 to decode files
encoded with FFmpeg.

Reviewed-by: Paul B Mahol
2012-01-03 23:05:54 +01:00
Michael Niedermayer
b024209b1f adx_parser: rewrite.
The previous code ended in multiple different infinite
loops. See stl_ten_1_big.sfd as example with and without zzuf

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-01-03 16:28:17 -05:00
Justin Ruggles
6fd075f180 adxdec: Validate channel count to fix a division by zero. 2012-01-03 16:28:17 -05:00
Michael Niedermayer
4f1a787744 adxdec: Do not require extradata.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-01-03 16:28:17 -05:00
Justin Ruggles
e49d21306a alacdec: implement the 2-pass prediction type.
The reference encoder does not generate any streams using this, but the
reference decoder can handle it, so we should as well.
2012-01-03 13:15:24 -05:00
Justin Ruggles
bb63475aec alacenc: implement the 2-pass prediction type.
This isn't used by the reference encoder, but it is supported by the decoder.
2012-01-03 13:15:23 -05:00
Justin Ruggles
149e1b0468 alacenc: do not generate invalid multi-channel ALAC files 2012-01-03 13:15:23 -05:00
Justin Ruggles
e76c7b856f alacdec: fill in missing or guessed info about the extradata format.
Now that there is official documentation from Apple about this, we don't have
to guess anymore.
2012-01-03 13:15:23 -05:00
Kostya Shishkov
490dcda6b6 utvideo: proper median prediction for interlaced videos 2012-01-03 17:08:49 +01:00
Shitiz Garg
f37b4efe03 dca: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-01-03 15:25:54 +01:00
Aneesh Dogra
2e70b2de58 dct: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-01-03 15:25:51 +01:00
Daniel Verkamp
02e8f4272c win32: detect number of CPUs using affinity
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-01-03 14:25:57 +01:00
Piotr Bandurski
912e75169b Support 8bpp grayscale Sun Rasterfile images.
Fixes ticket #865.
2012-01-03 13:24:50 +01:00
Diego Biurrun
418f066f8c snow: Restore three mistakenly removed casts. 2012-01-03 10:27:45 +01:00
Michael Bradshaw
2ba3416362 Added yuva420p decoding support for libopenjpeg
Signed-off-by: Michael Bradshaw <mbradshaw@sorensonmedia.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-03 06:21:01 +01:00
Michael Bradshaw
3f07ef1dff Added RGBA and YUV440 decoding support for libopenjpeg decoder
Reviewed-by: Jean First <jeanfirst@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-03 06:19:21 +01:00
Michael Bradshaw
d1669e5fe3 Fixed openjpeg decoding bug with width/linesize issue
The original code wasn't taking into account the fact that linesize may not equal the frame's width.  This is to correct that.

Signed-off-by: Michael Bradshaw <mbradshaw@sorensonmedia.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-03 06:15:33 +01:00
Paul B Mahol
69d766daa0 lavc: replace rest of deprecated SAMPLE_FMT_* with AV_SAMPLE_FMT_*
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-03 04:00:52 +01:00
Paul B Mahol
7099f36578 lavc: replace rest of deprecated FF_*_TYPE with AV_PICTURE_TYPE_*
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-03 03:25:22 +01:00
Jean First
f86c348d46 vp3: remove redeclaration of vp3_decode_flush
Signed-off-by: Jean First <jeanfirst@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-03 03:16:42 +01:00
Michael Niedermayer
7d8f115843 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpegenc: use avctx->slices as number of slices
  v410enc: fix undefined signed left shift caused by integer promotion
  Release notes: mention cleaned up header includes
  fix Changelog file
  Fix a bunch of typos.
  Drop some pointless void* return value casts from av_malloc() invocations.
  wavpack: fix typos in previous cosmetic clean-up commit
  wavpack: cosmetics: K&R pretty-printing
  avconv: remove the 'codec framerate is different from stream' warning
  wavpack: determine sample_fmt before requesting a buffer
  bmv audio: implement new audio decoding API
  mpegaudiodec: skip all channels when skipping granules
  mpegenc: simplify muxrate calculation

Conflicts:
	Changelog
	avconv.c
	doc/RELEASE_NOTES
	libavcodec/h264.c
	libavcodec/mpeg12.c
	libavcodec/mpegaudiodec.c
	libavcodec/mpegvideo.c
	libavformat/mpegenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-03 03:06:45 +01:00
Mashiat Sarker Shakkhar
2083a10abf Fix audio output
Up until now, the decoder didn't output anything
in the data buffer. This fixes all the issues
related to sample format, removes leftover code
and actually outputs some audio to data buffer.

With this, the only sample we have can be played.
Seeking is still broken though.
2012-01-03 01:51:36 +06:00
Mashiat Sarker Shakkhar
f7166f7d8d Suppress dumping of residues buffer 2012-01-03 01:51:17 +06:00
Janne Grunau
881a5e047d mpegenc: use avctx->slices as number of slices
Adds a new member to MpegEncContext to hold the number of used slice
contexts. Fixes segfaults with '-threads 17 -thread_type slice' and
fate-vsynth{1,2}-mpeg{2,4}thread{,_ilace} with --disable-pthreads.
2012-01-02 19:20:23 +01:00
Janne Grunau
264808219d v410enc: fix undefined signed left shift caused by integer promotion 2012-01-02 19:20:23 +01:00
Michael Niedermayer
45552371e3 jpegdec: non interleaved rgb ljpeg support.
Fixes Ticket856

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-02 19:06:46 +01:00
Michael Niedermayer
465eb0eb48 jpegdec: 9-16 bit yuv/gray ljpeg support.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-02 17:53:41 +01:00
Michael Niedermayer
24964f21e4 jpegdec: Only enable rgb mode when there are 3 components.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-02 17:53:40 +01:00
Diego Biurrun
8fd35b1aac Fix a bunch of typos. 2012-01-02 16:41:25 +01:00
Diego Biurrun
44b0edda3f Drop some pointless void* return value casts from av_malloc() invocations. 2012-01-02 16:41:24 +01:00
Michael Niedermayer
a2a12e3358 vp3: fix regression with mplayer-crash.ogv
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-02 15:35:18 +01:00
Justin Ruggles
3a1867deac wavpack: fix typos in previous cosmetic clean-up commit 2012-01-02 08:54:30 -05:00
Justin Ruggles
513c238fa9 wavpack: cosmetics: K&R pretty-printing 2012-01-02 08:52:59 -05:00
Hendrik Leppkes
14165fe125 wavpack: determine sample_fmt before requesting a buffer
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-01-01 23:24:15 -05:00
Justin Ruggles
8893fbdf7a bmv audio: implement new audio decoding API 2012-01-01 22:56:04 -05:00
Justin Ruggles
03fafdec82 mpegaudiodec: skip all channels when skipping granules
Also fix calculation of new position when switching buffers.
This fixes "overread" error messages when seeking.
2012-01-01 22:37:50 -05:00
Paul B Mahol
dfa77dead2 y41p encoder and decoder
y41p is a packed 12-bit 4:1:1 YUV format used by Brooktree.

Fixes issue 1123 / ticket #102.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-02 03:35:23 +01:00
Jean First
b103156235 j2kdec: av_log formatting use %tx instead of %x
Signed-off-by: Jean First <jeanfirst@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-02 03:25:49 +01:00
Michael Niedermayer
157f29f9a6 Revert "mpegvideo: Do not error out on default values of thread_count."
This is not needed anymore.

This reverts commit ca0350f49b.
2012-01-02 03:10:52 +01:00
Michael Niedermayer
4121148388 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: make -frames work for all types of streams, not just video.
  bfi: K&R cosmetics
  bgmc: K&R cleanup
  rawdec: Set start_time to 0 for raw audio files.
  Detect 'yuv2' as rawvideo also in avi.
  rawdec: propagate pict_type information to the output frame
  rawdec: Support more QT 1bpp rawvideo files.
  avconv: free bitstream filters
  threads: limit the number of automatic threads to MAX_AUTO_THREADS
  avplay: K&R cleanup
  fate: use rgb24 as output format for dfa tests
  threads: set thread_count to 1 when thread support is disabled
  threads: introduce CODEC_CAP_AUTO_THREADS and add it to libx264

Conflicts:
	ffplay.c
	libavcodec/avcodec.h
	libavcodec/pthread.c
	libavcodec/version.h
	tests/ref/fate/dfa1
	tests/ref/fate/dfa10
	tests/ref/fate/dfa11
	tests/ref/fate/dfa2
	tests/ref/fate/dfa3
	tests/ref/fate/dfa4
	tests/ref/fate/dfa5
	tests/ref/fate/dfa6
	tests/ref/fate/dfa7
	tests/ref/fate/dfa8
	tests/ref/fate/dfa9

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-02 03:10:30 +01:00
Carl Eugen Hoyos
ef611095f0 Add missing PIX_FMT_NONE to libopenjpegenc
fixes ticket #813

Reviewed-by: Michael Niedermayer <michaelni@gmx.at>
Reviewed-by: Jean First <jeanfirst@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 23:46:58 +01:00
Paul B Mahol
c0f7c574e9 Cosmetics: Replace -1 with PIX_FMT_NONE. 2012-01-01 23:23:58 +01:00
Aneesh Dogra
f7e30cc13b bfi: K&R cosmetics
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-01-01 22:27:04 +01:00
Aneesh Dogra
87d9874864 bgmc: K&R cleanup
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-01-01 22:27:04 +01:00
Stefano Sabatini
28b4af8e38 rawdec: propagate pict_type information to the output frame
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-01-01 22:27:04 +01:00
Piotr Bandurski
d3a5c26986 rawdec: Support more QT 1bpp rawvideo files.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-01-01 22:27:04 +01:00
Michael Niedermayer
9ba43e50ef h264: Fix frame sync / random access handling.
It seems I have misunderstood the spec when I implemented this
originally.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 21:43:44 +01:00
Michael Niedermayer
fba6777363 h264: Fix recovery_frame initialization when recovery_frame is -1
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 21:43:43 +01:00
Michael Niedermayer
36fa781bd6 h264: reset picture->sync on allocation.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 21:43:42 +01:00
Janne Grunau
b12d217339 threads: limit the number of automatic threads to MAX_AUTO_THREADS
The extra thread added in {frame_}*thread_init was not taken into
account. Explicitly sets thread_count to 1 if only one CPU core was
detected. Also fixes two typos in comments.
2012-01-01 21:11:43 +01:00
Michael Niedermayer
ecb14b8af7 h264: add forgotten \n to "Invalid mix of idr and non-idr slices"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 21:04:34 +01:00
Michael Niedermayer
393253b4b3 h264: Print pass in NAL debug output
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 21:04:34 +01:00
Janne Grunau
b6064d9a59 threads: set thread_count to 1 when thread support is disabled 2012-01-01 14:37:38 +01:00
Janne Grunau
b4d44a45f9 threads: introduce CODEC_CAP_AUTO_THREADS and add it to libx264
Some external codecs have their own code to determine the best number
of threads. This number is not necessary the number of cpu cores.
Thread_count will be only 0 if the codec has CODEC_CAP_AUTO_THREADS.
2012-01-01 14:37:37 +01:00
Mashiat Sarker Shakkhar
3d84495128 Use quantizer value read from bitstream
Currently the code initializes quantizer even
before reading it from bitstream and uses that
to dequantize samples.
2012-01-01 14:32:40 +06:00
Carl Eugen Hoyos
03d7d8faef Support gray8a pam encoding. 2012-01-01 04:44:46 +01:00
Michael Niedermayer
57581e4110 pthread: dont autoenable frame threads with visualization
This combination doesnt work

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 02:54:31 +01:00
Michael Niedermayer
e404eee1e1 pthread: Limit automatic threads to mb_height.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 02:39:06 +01:00
Michael Niedermayer
9c1f0493d5 Revert 464f26889c
The code is not needed for us and it doesnt work completely.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 02:38:40 +01:00
Michael Niedermayer
099d6813c2 svq3: Fix memory corruption introduced by automatic thread_count.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 00:46:05 +01:00
Michael Niedermayer
ca0350f49b mpegvideo: Do not error out on default values of thread_count.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 00:46:05 +01:00
Michael Niedermayer
4478e9d8db Merge remote-tracking branch 'qatar/master'
* qatar/master:
  FATE: add tests for dfa
  mpegaudiodec: fix seeking.
  mpegaudiodec: fix compilation when testing the unchecked bitstream reader
  threads: add sysconf based number of CPUs detection
  threads: always include necessary headers for number of CPUs detection
  threads: default to automatic thread count detection
  Changelog: restore version <next> header
  cook: K&R formatting cosmetics

Conflicts:
	Changelog
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-01-01 00:07:31 +01:00
Carl Eugen Hoyos
714d2f9796 Only expand raw and packed 1bpp tiff horizontally if it is palettised. 2011-12-31 20:46:36 +01:00
Michael Niedermayer
9d9316ae34 h264: Fix seeking in 00017.MTS
Fixes Ticket852

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-31 20:32:05 +01:00
Ronald S. Bultje
464f26889c mpegaudiodec: fix seeking.
The safe bitstream reader does not allow using skip_bits_long() to seek to a
point before the start of the buffer, which was needed by the mp3 decoder.
This change instead calculates the start point of the first valid granule and
skips to that position.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2011-12-31 14:19:09 -05:00
Justin Ruggles
481a7ff5bd mpegaudiodec: fix compilation when testing the unchecked bitstream reader 2011-12-31 14:19:09 -05:00
Mashiat Sarker Shakkhar
a6da23f146 Cosmetics: Remove two empty lines and realign some code 2012-01-01 00:00:51 +06:00
Mashiat Sarker Shakkhar
8dc8dd9f6f Reset acfilter_prevvalues buffer in clear_codec_buffers() 2011-12-31 23:57:35 +06:00
Mashiat Sarker Shakkhar
001a74ff53 Fix AC filter buffers and AC filter reversion 2011-12-31 23:57:14 +06:00
Janne Grunau
bcc7396065 threads: add sysconf based number of CPUs detection
Can act as fallback and should work on a couple of Unix systems.
2011-12-31 17:40:12 +01:00
Janne Grunau
937ff3a18a threads: always include necessary headers for number of CPUs detection
Since the conditions for the actual usage are more specific a less
preferred method can be used. This would cause compilation errors
because necessary headers are not included.
2011-12-31 17:40:12 +01:00
Janne Grunau
e4e30256f8 threads: default to automatic thread count detection 2011-12-31 17:40:12 +01:00
Michael Niedermayer
810a14dbcc aacdec: Evaluate further PCE elements.
Fixes Music\ Station\ Super\ Live\ -\ 2011.12.23.mkv

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-31 17:15:31 +01:00
Carl Eugen Hoyos
f69a766d11 Fix mono* pam encoding. 2011-12-31 17:15:43 +01:00
Nicolas George
0098e79f8a libvorbis: proper error logging and return. 2011-12-31 16:47:17 +01:00
Reimar Döffinger
42a1f1d7a8 Avoid uninitialized data in lcldec when ofs is 0 in MSZH.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-12-31 16:31:15 +01:00
Michael Niedermayer
91ab557b68 Revert "aacdec: Avoid unneeded reinit due to ADTS headers"
This has been fixed differently and its revert avoids error messages
when decoding xx.flv. This also reduces the difference to qatar.

This reverts commit 5a2b3f3a52.

Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-31 06:06:05 +01:00
Michael Niedermayer
4392b3d11e tiffdec: hotfix for fate failure.
Only use pal8 as output if the file has a palette or more than 2 colors.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-31 04:54:26 +01:00
Jean First
9bfaeee5f3 8svx: remove unused variable in eightsvx_decode_frame
Signed-off-by: Jean First <jeanfirst@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-31 02:27:10 +01:00
Carl Eugen Hoyos
7ee0649f95 Fix decoding some 1bpp tiff files, they are palettized.
Fixes ticket #830.
2011-12-31 02:00:33 +01:00
Carl Eugen Hoyos
e767968c6e Simplify tiff decoder by merging two functions. 2011-12-31 01:58:16 +01:00
Carl Eugen Hoyos
b46fb615c4 tiff.c: Use switch / case instead of if / else where appropriate. 2011-12-31 01:53:22 +01:00
Michael Niedermayer
1a6a088f7c Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: whitespace cosmetics
  fate: split off video codec FATE tests into their own file
  fate: split off audio codec FATE tests into their own file
  fate: split off Electronic Arts codec FATE tests into their own file
  fate: split off QuickTime codec FATE tests into their own file
  fate: split off voice codec FATE tests into their own file
  fate: split off demuxer FATE tests into their own file
  cosmetics: Drop unnecessary parentheses around return values.
  fate: drop pointless _audio and _video suffixes from xan tests
  qt-faststart: K&R reformatting; fix comment typos
  FATE: Add test for H.264 MP4->annex.B bitstream filter.

Conflicts:
	ffplay.c
	tests/fate.mak
	tests/fate/h264.mak
	tests/fate/image.mak
	tests/fate/lossless-audio.mak
	tests/fate/lossless-video.mak
	tests/fate/qtrle.mak
	tests/fate/real.mak
	tests/fate/screen.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-31 01:16:45 +01:00
Shitiz Garg
c3513477bb cook: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-12-31 01:04:09 +01:00
Michael Niedermayer
e146ad95d7 mlp_parser: Fix infinite loop with 0 bytes_left.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-30 22:32:42 +01:00
Diego Biurrun
d4b63054d9 cosmetics: Drop unnecessary parentheses around return values. 2011-12-30 22:18:07 +01:00
Paul B Mahol
ba10207bbe Use more designated initializers.
Also remove some pointless NULL/0 assigments.

C++ code must be left as it is because named struct
initializers are not supported by C++ standard.
2011-12-30 20:00:53 +01:00
Michael Niedermayer
b0143da806 ljpegdec: fix point transform injection.
Fix Ticket842

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-30 05:12:38 +01:00
Michael Niedermayer
00c0465dbc Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: split off DPCM codec FATE tests into their own file
  fate: split off PCM codec FATE tests into their own file
  libvorbis: K&R reformatting cosmetics
  libmp3lame: K&R formatting cosmetics
  fate: Add a video test for xxan decoder
  mpegvideo_enc: K&R cosmetics (line 1000-2000).
  avconv: K&R cosmetics
  qt-faststart: Fix up indentation
  indeo4: remove two unused variables
  doxygen: cleanup style to support older doxy
  fate: add more tests for VC-1 decoder
  applehttpproto: Apply the same reload interval changes as for the demuxer
  applehttp: Use half the target duration as interval if the playlist didn't update
  applehttp: Use the last segment duration as reload interval
  lagarith: add decode support for arith rgb24 mode

Conflicts:
	avconv.c
	libavcodec/libmp3lame.c
	libavcodec/mpegvideo_enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-30 03:46:24 +01:00
Carl Eugen Hoyos
6ed3565f08 Do not fail when decoding invalid v410 files with odd width.
Reviewed-by; Derek Buitenhuis
2011-12-30 02:34:29 +01:00
Carl Eugen Hoyos
3a15051aba Always assume the bmp palette as being opaque. 2011-12-30 00:48:32 +01:00
Diego Biurrun
ca5ab8cd21 libvorbis: K&R reformatting cosmetics 2011-12-29 23:30:20 +01:00
Aneesh Dogra
c4db344664 libmp3lame: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-12-29 23:30:20 +01:00
Aneesh Dogra
9342ecf02e mpegvideo_enc: K&R cosmetics (line 1000-2000).
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-12-29 13:52:04 -08:00
Michael Niedermayer
f41a6c8f3a indeo5: Fix null pointer dereferences of ref_mb
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-29 21:01:41 +01:00
Michael Niedermayer
7ae251b4d8 h264_mp4toannexb_filter: pass error code through.
Bug-Found-by and Suggested bugfix: Tanami, Ohad
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-29 21:01:41 +01:00
Kostya Shishkov
1fbd3d30ae indeo4: remove two unused variables 2011-12-29 17:42:31 +01:00
Michael Niedermayer
e7c1e38ba6 qpeg: Check for overread in qpeg_decode_intra.
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-29 15:21:02 +01:00
Thad Ward
7af507ea99 lagarith: add decode support for arith rgb24 mode
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-12-29 07:37:33 +01:00
Michael Niedermayer
6071e4d87a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  v410dec: Check for sufficient input data. Fixes crash
  fate: Add v210 codec regression tests
  mpegts: adjustable minimum PES payload
  mpegts: properly output large audio packets
  avformat: Add SMJPEG demuxer.
  Indeo 4 decoder

Conflicts:
	doc/general.texi
	libavcodec/v410dec.c
	libavcodec/version.h
	libavformat/mpegtsenc.c
	libavformat/smjpeg.c
	libavformat/version.h
	tests/codec-regression.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-29 01:40:34 +01:00
Michael Niedermayer
7e5cbb3c2d cljrdec: improve scaling somewhat
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-28 22:05:24 +01:00
Michael Niedermayer
8f5216905f v410dec: Check for sufficient input data. Fixes crash
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-12-28 12:47:36 -08:00
Michael Niedermayer
92e2b59dec indeo5: fix division by 0 in ff_ivi_init_tiles()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-28 21:31:00 +01:00
Michael Niedermayer
a1ca45317d cljrenc: fix scaling
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-28 21:30:26 +01:00
Michael Niedermayer
d46bc4133c indeo5: Fix crash due to partially initialized gop vars.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-28 20:13:00 +01:00
Michael Niedermayer
4b35ee0b7c indeo5: fix null pointer crash with ref_mb
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-28 19:55:42 +01:00
Michael Niedermayer
8e09482e4d vcr1dec: Check that there is sufficient input data.
Fixes crash.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-28 19:05:16 +01:00
Michael Niedermayer
11ca3416f9 v410dec: Check for sufficient input data.
Fixes crash

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-28 18:33:29 +01:00
Kostya Shishkov
adfe0c942e Indeo 4 decoder
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2011-12-28 15:22:18 +01:00
Carl Eugen Hoyos
190a0998c3 Fix a crash when reading gray pam files.
Fixes ticket #837.
2011-12-28 05:59:39 +01:00
Carl Eugen Hoyos
c1bc1967f3 Fix a typo that broke writing (and reading) PAM files.
Reported and reviewed by Derek Buitenhuis.
2011-12-28 05:54:59 +01:00
Michael Niedermayer
0e5fbbd776 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpegvideo_enc: K&R cosmetics
  doxygen: remove unreplaced variables from custom header and footer
  threads: test for sys/param.h and include it for sysctl on OpenBSD
  v4l2: remove unneded linux specific asm/types.h include
  x86: Fix constraints for decode_significance*_x86

Conflicts:
	libavcodec/mpegvideo_enc.c
	libavdevice/v4l2.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-28 02:38:33 +01:00
Frank Vernaillen
ad1c502557 Fixed crash in palette handling when converting certain .png images to .pcx or .bmp.
The existing code expected a palette buffer holding 256 uint32_t's allocated in the data[1] field of the AVFrame structure, but data[1] was NULL. The bug is fixed by using a fixed local array (palette256) to hold the palette instead.

This solves http://ffmpeg.org/trac/ffmpeg/ticket/833

Signed-off-by: Frank Vernaillen <fr_ve@hotmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-27 23:51:02 +01:00
Aneesh Dogra
bd96be6e27 mpegvideo_enc: K&R cosmetics
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-12-27 10:20:20 -08:00
Carl Eugen Hoyos
387d86077f Support decoding yuv442 and yuv421 jpeg images.
Fixes ticket #787.
2011-12-27 18:21:38 +01:00
Carl Eugen Hoyos
613cbf3168 Fix some 1bit png samples, they can be palettised.
Fixes ticket #767.
2011-12-27 18:17:57 +01:00
Janne Grunau
06bb590558 threads: test for sys/param.h and include it for sysctl on OpenBSD 2011-12-27 16:09:41 +01:00
Martin Storsjö
676a9ee1d2 x86: Fix constraints for decode_significance*_x86
Originally, prior to 8742a4ff8, the caller code was compiled
within this condition:

ARCH_X86 && HAVE_7REGS && HAVE_EBX_AVAILABLE && !defined(BROKEN_RELOCATIONS)

Since HAVE_7REGS is defined as
(ARCH_X86_64 || (HAVE_EBX_AVAILABLE && HAVE_EBP_AVAILABLE))
the subcondition HAVE_7REGS && HAVE_EBX_AVAILABLE is equal
to HAVE_7REGS (for 32 bit at least). The correct simplification
of the original condition thus is HAVE_7REGS, not
HAVE_EBX_AVAILABLE.

This fixes compilation in some cases where HAVE_EBP_AVAILABLE = 0
and HAVE_EBX_AVAILABLE = 1.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-12-27 09:05:14 +02:00
Michael Niedermayer
b72544370a mpegvideo: fix visualization buffer size.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-27 05:53:58 +01:00
Marton Balint
7b2dba1c50 dv: fix avpriv_dv_codec_profile with lowres > 0
Fixes ticket #44.

Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-26 22:12:20 +01:00
Clément Bœsch
831f6cd605 timecode: fix drop frame in avpriv_timecode_to_string(). 2011-12-26 11:13:25 +01:00
Michael Niedermayer
484e59a0a0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avs: call release_buffer() at the end.
  Add minor bumps and APIchanges entries for lavc/lavfi changes.
  mpegvideo.c: K&R formatting and cosmetics.
  avconv: avoid memcpy in vsrc_buffer when possible.
  avconv: implement get_buffer()/release_buffer().
  lavfi: add a new function av_buffersrc_buffer().
  lavfi: add avfilter_copy_frame_props()
  lavc: add format field to AVFrame
  lavc: add width and height fields to AVFrame
  lavc: add a sample_aspect_ratio field to AVFrame
  doxy: add website-alike style to the html output
  FAQ: add an entry for common error when using -profile

Conflicts:
	avconv.c
	cmdutils.c
	doc/APIchanges
	libavcodec/avcodec.h
	libavcodec/mpegvideo.c
	libavcodec/utils.c
	libavcodec/version.h
	libavfilter/Makefile
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/src_movie.c
	libavfilter/vsrc_buffer.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-26 04:10:47 +01:00
Anton Khirnov
80dc7c0160 avs: call release_buffer() at the end.
Fixes a memleak.
2011-12-25 20:50:20 +01:00
Anton Khirnov
06e8d38f2b Add minor bumps and APIchanges entries for lavc/lavfi changes. 2011-12-25 20:50:16 +01:00
Konstantin Todorov
c65dfac466 mpegvideo.c: K&R formatting and cosmetics.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-12-25 10:07:19 -08:00
Michael Niedermayer
5e9a56a035 shorten: validate values in fmt chunk search
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-25 18:55:43 +01:00
Michael Niedermayer
18bcfc912e shorten: Fix invalid free()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-25 18:55:43 +01:00
Stefano Sabatini
8a4a5f6ff7 lavc: add format field to AVFrame
The format is a per-frame property, having it in AVFrame simplify the
operation of extraction of that information, since avoids the need to
access the codec/stream context.
2011-12-25 16:18:57 +01:00
Stefano Sabatini
3a2ddf7c2c lavc: add width and height fields to AVFrame
width and height are per-frame properties, setting these values in
AVFrame simplify the operation of extraction of that information,
since avoids the need to check the codec/stream context.
2011-12-25 16:18:57 +01:00
Stefano Sabatini
b58dbb5b03 lavc: add a sample_aspect_ratio field to AVFrame
The sample aspect ratio is a per-frame property, so it makes sense to
define it in AVFrame rather than in the codec/stream context.
Simplify application-level sample aspect ratio information extraction,
and allow further simplifications.
2011-12-25 16:18:57 +01:00
Michael Niedermayer
964506bb97 golomb: Fix infinite loop in svq3_get_ue_golomb()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-25 04:15:56 +01:00
Michael Niedermayer
5257743aee ws_snd1: Fix wrong samples count and crash.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-25 00:10:27 +01:00
Michael Niedermayer
2278ecc434 vmdav: check that theres enough space for a chunk remaining.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-24 22:03:59 +01:00
Michael Niedermayer
fc5c49ab32 mpeg4videodec: Fix division by zero in mpeg4_decode_sprite_trajectory()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-24 20:27:54 +01:00
Michael Niedermayer
282bb02839 j2kdec: Fix crash in get_qcx
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-24 18:51:36 +01:00
Michael Niedermayer
3eedf9f716 j2kdec: Check curtileno for validity
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-24 18:42:55 +01:00
Michael Niedermayer
3132999fdb j2kdec: Check for interger overflow in tile array allocation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-24 18:42:55 +01:00
Michael Niedermayer
628c9dcca3 j2kdec: fix division by zero, check tile dimensions for validity
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-24 18:42:55 +01:00
Carl Eugen Hoyos
f2ed115899 Make the palette in Wing Commander III mve files opaque. 2011-12-24 12:41:44 +01:00
Jean First
0d4a77472a libopenjpeg: support decoding with bits per pixel greater than 8
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Approved-by: Alex Zhukov
2011-12-24 02:21:33 +01:00
Michael Niedermayer
28dff06176 Merge remote-tracking branch 'shariman/wmall'
* shariman/wmall:
  Perform dequantization of channel coefficients
  Perform inverse inter-channel decorrelation and ac-filter
  Implement revert_inter_ch_decorr() and revert_acfilter()
  Enable inverse-MCLMS filter
  Fix inverse-MCLMS filtering routines
  Do not update buffers in case no speed change is necessary
  Use int for channel_coeffs instead of int16_t

Conflicts:
	libavcodec/wmalosslessdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-24 01:54:25 +01:00
Michael Niedermayer
bba6f5b77f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vp3dec: Check coefficient index in vp3_dequant()
  svq1dec: call avcodec_set_dimensions() after dimensions changed.
  Prepare for 0.8_beta1 snapshot release
  threads: check defines before using them in automatic thread detection
  pthread: include sys/types.h before sys/sysctl.h
  4xm: remove unused variables.
  h264: Fix a possible overread in decode_nal_units()
  allfilters: fix type of avfilter_vsrc_buffer.
  w32thread: call ResetEvent() in pthread_cond_broadcast().

Conflicts:
	Changelog
	RELEASE
	doc/RELEASE_NOTES
	libavcodec/pthread.c
	libavcodec/vp3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-24 00:45:02 +01:00
Michael Niedermayer
7de733b752 pthread: sysctl.h needs param.h on openbsd
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-23 16:34:46 +01:00
Janne Grunau
5c33a9a5c1 threads: check defines before using them in automatic thread detection
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-23 16:08:39 +01:00
Janne Grunau
8d4668cc5f pthread: include sys/types.h before sys/sysctl.h
Fixes compilation on FreeBSD with clang 3.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-23 16:08:39 +01:00
Reinhard Tartler
8b94df0f20 vp3dec: Check coefficient index in vp3_dequant()
Based on a patch by Michael Niedermayer <michaelni@gmx.at>

Fixes NGS00145, CVE-2011-4352

Found-by: Phillip Langlois
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-12-23 15:42:24 +01:00
Michael Niedermayer
6e24b9488e svq1dec: call avcodec_set_dimensions() after dimensions changed.
Fixes NGS00148, CVE-2011-4579

Found-by: Phillip Langlois
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-12-23 15:42:24 +01:00
Janne Grunau
7052618c7e threads: check defines before using them in automatic thread detection 2011-12-23 14:41:03 +01:00