Commit Graph

19103 Commits

Author SHA1 Message Date
Michael Niedermayer
70f133fb54 h263enc: check w/h for validity
Fixes Ticket1063

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-12 18:49:34 +02:00
Carl Eugen Hoyos
db11fc5392 Fix flashsv2 encoder error message. 2012-05-12 13:11:56 +02:00
Michael Niedermayer
2a37ac042f flashsv2enc: fix division by zero
Fixes other half of Ticket1105

Found-by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-12 12:07:02 +02:00
Michael Niedermayer
40d8c89cb6 flashsvenc: fix image sizes below 192x192
Fixes half of Ticket1105

Found-by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-12 12:06:37 +02:00
Michael Niedermayer
d04956344d tiffenc: fix out of array read
Fixes ticket1112

Found-by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-12 10:58:08 +02:00
Michael Niedermayer
3b5632479e snow: fix 32x32 encoding
Fixes ticket1083

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-12 03:36:17 +02:00
Michael Niedermayer
9eb99ab25b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: employ better names and add a convenient shorthand for vp6 tests
  arm/neon: dsputil: use correct size specifiers on vld1/vst1
  arm: dsputil: prettify some conditional instructions in put_pixels macros
  vqavideo: change x/y loop counters to the usual pattern
  avconv: use lrint() for rounding double timestamps

Conflicts:
	tests/ref/fate/vc1-ism

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-11 20:57:39 +02:00
Michael Niedermayer
de1824e970 mpeg12: fix logic that prevents extradata from being parsed twice.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-11 18:46:56 +02:00
Michael Niedermayer
e20f46481b mpeg12: print an error when there was a frame in extradata.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-11 18:46:56 +02:00
Carl Eugen Hoyos
6d376346eb Allow decoding of j2k images with bpp<8 and 8<bpp<16 with libopenjpeg.
Fixes one of several problems described in ticket #1279.
2012-05-11 17:50:28 +02:00
Michael Niedermayer
940be96540 dcaenc: fix out of array read
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-11 03:33:59 +02:00
Mans Rullgard
e54e6f25cf arm/neon: dsputil: use correct size specifiers on vld1/vst1
Change the size specifiers to match the actual element sizes
of the data.  This makes no practical difference with strict
alignment checking disabled (the default) other than somewhat
documenting the code.  With strict alignment checking on, it
avoids trapping the unaligned loads.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-10 22:56:37 +01:00
Mans Rullgard
2eba6898c9 arm: dsputil: prettify some conditional instructions in put_pixels macros
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-10 22:56:09 +01:00
Mans Rullgard
c776531aef vqavideo: change x/y loop counters to the usual pattern
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-10 22:55:42 +01:00
Michael Niedermayer
015903294c Merge remote-tracking branch 'qatar/master'
* qatar/master: (25 commits)
  rv40dsp x86: MMX/MMX2/3DNow/SSE2/SSSE3 implementations of MC
  ape: Use unsigned integer maths
  arm: dsputil: fix overreads in put/avg_pixels functions
  h264: K&R formatting cosmetics for header files (part II/II)
  h264: K&R formatting cosmetics for header files (part I/II)
  rtmp: Implement check bandwidth notification.
  rtmp: Support 'rtmp_swfurl', an option which specifies the URL of the SWF player.
  rtmp: Support 'rtmp_flashver', an option which overrides the version of the Flash plugin.
  rtmp: Support 'rtmp_tcurl', an option which overrides the URL of the target stream.
  cmdutils: Add fallback case to switch in check_stream_specifier().
  sctp: be consistent with socket option level
  configure: Add _XOPEN_SOURCE=600 to Solaris preprocessor flags.
  vcr1enc: drop pointless empty encode_init() wrapper function
  vcr1: drop pointless write-only AVCodecContext member from VCR1Context
  vcr1: group encoder code together to save #ifdefs
  vcr1: cosmetics: K&R prettyprinting, typos, parentheses, dead code, comments
  mov: make one comment slightly more specific
  lavr: replace the SSE version of ff_conv_fltp_to_flt_6ch() with SSE4 and AVX
  lavfi: move audio-related functions to a separate file.
  lavfi: remove some audio-related function from public API.
  ...

Conflicts:
	cmdutils.c
	libavcodec/h264.h
	libavcodec/h264_mvpred.h
	libavcodec/vcr1.c
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/defaults.c
	libavfilter/internal.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10 23:30:42 +02:00
Michael Niedermayer
afcb67113d Revert "Remove libvorbis Vorbis decoding support. Our native decoder is complete"
Its useful to support the official decoder for comparission and debugging.

This reverts commit f9def9ccc6.

Conflicts:

	Changelog
	configure
	libavcodec/allcodecs.c
	libavcodec/libvorbis.c

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10 19:24:32 +02:00
Christophe Gisquet
110d0cdc9d rv40dsp x86: MMX/MMX2/3DNow/SSE2/SSSE3 implementations of MC
Code mostly inspired by vp8's MC, however:
- its MMX2 horizontal filter is worse because it can't take advantage of
  the coefficient redundancy
- that same coefficient redundancy allows better code for non-SSSE3 versions

Benchmark (rounded to tens of unit):
        V8x8  H8x8  2D8x8  V16x16  H16x16  2D16x16
C       445    358   985    1785    1559    3280
MMX*    219    271   478     714     929    1443
SSE2    131    158   294     425     515     892
SSSE3   120    122   248     387     390     763

End result is overall around a 15% speedup for SSSE3 version (on 6 sequences);
all loop filter functions now take around 55% of decoding time, while luma MC
dsp functions are around 6%, chroma ones are 1.3% and biweight around 2.3%.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-05-10 18:42:43 +02:00
Michael Niedermayer
8ea5df4fac lavc/utils: fix division by 0
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10 17:36:49 +02:00
Christophe Gisquet
706b998cdc ape: Use unsigned integer maths
This involves a division that should be a shift.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-05-10 16:40:43 +02:00
Mans Rullgard
cbc7d60afa arm: dsputil: fix overreads in put/avg_pixels functions
The vertically interpolating variants of these functions read
ahead one line to optimise the loop.  On the last line processed,
this might be outside the buffer.  Fix these invalid reads by
processing the last line outside the loop.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-05-10 14:39:34 +01:00
Diego Biurrun
1de53d006b h264: K&R formatting cosmetics for header files (part II/II) 2012-05-10 13:13:44 +02:00
Diego Biurrun
be545b8a34 h264: K&R formatting cosmetics for header files (part I/II) 2012-05-10 13:02:47 +02:00
Michael Niedermayer
61930bd0d7 Merge remote-tracking branch 'qatar/master'
* qatar/master: (27 commits)
  libxvid: Give more suitable names to libxvid-related files.
  libxvid: Separate libxvid encoder from libxvid rate control code.
  jpeglsdec: Remove write-only variable in ff_jpegls_decode_lse().
  fate: cosmetics: lowercase some comments
  fate: Give more consistent names to some RealVideo/RealAudio tests.
  lavfi: add avfilter_get_audio_buffer_ref_from_arrays().
  lavfi: add extended_data to AVFilterBuffer.
  lavc: check that extended_data is properly set in avcodec_encode_audio2().
  lavc: pad last audio frame with silence when needed.
  samplefmt: add a function for filling a buffer with silence.
  samplefmt: add a function for copying audio samples.
  lavr: do not try to copy to uninitialized output audio data.
  lavr: make avresample_read() with NULL output discard samples.
  fate: split idroq audio and video into separate tests
  fate: improve dependencies
  fate: add convenient shorthands for ea-vp6, libavcodec, libavutil tests
  fate: split some combined tests into separate audio and video tests
  fate: fix dependencies for probe tests
  mips: intreadwrite: fix inline asm for gcc 4.8
  mips: intreadwrite: remove unnecessary inline asm
  ...

Conflicts:
	cmdutils.h
	configure
	doc/APIchanges
	doc/filters.texi
	ffmpeg.c
	ffplay.c
	libavcodec/internal.h
	libavcodec/jpeglsdec.c
	libavcodec/libschroedingerdec.c
	libavcodec/libxvid.c
	libavcodec/libxvid_rc.c
	libavcodec/utils.c
	libavcodec/version.h
	libavfilter/avfilter.c
	libavfilter/avfilter.h
	libavfilter/buffersink.h
	tests/Makefile
	tests/fate/aac.mak
	tests/fate/audio.mak
	tests/fate/demux.mak
	tests/fate/ea.mak
	tests/fate/image.mak
	tests/fate/libavutil.mak
	tests/fate/lossless-audio.mak
	tests/fate/lossless-video.mak
	tests/fate/microsoft.mak
	tests/fate/qt.mak
	tests/fate/real.mak
	tests/fate/screen.mak
	tests/fate/video.mak
	tests/fate/voice.mak
	tests/fate/vqf.mak
	tests/ref/fate/ea-mad
	tests/ref/fate/ea-tqi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-10 02:25:41 +02:00
Diego Biurrun
8ae1914327 vcr1enc: drop pointless empty encode_init() wrapper function 2012-05-09 23:47:37 +02:00
Diego Biurrun
eeeefd5001 vcr1: drop pointless write-only AVCodecContext member from VCR1Context 2012-05-09 23:24:07 +02:00
Diego Biurrun
51c4d87093 vcr1: group encoder code together to save #ifdefs 2012-05-09 23:24:07 +02:00
Diego Biurrun
db1e403cfb vcr1: cosmetics: K&R prettyprinting, typos, parentheses, dead code, comments 2012-05-09 23:24:06 +02:00
Diego Biurrun
c8b4a3999b libxvid: Give more suitable names to libxvid-related files. 2012-05-09 18:18:05 +02:00
Diego Biurrun
5b432d66ce libxvid: Separate libxvid encoder from libxvid rate control code.
This allows compiling the Xvid rate control code without the encoder.
2012-05-09 18:18:05 +02:00
Diego Biurrun
727af82a84 jpeglsdec: Remove write-only variable in ff_jpegls_decode_lse().
libavcodec/jpeglsdec.c:54:9: warning: variable ‘len’ set but not used
2012-05-09 18:12:28 +02:00
Anton Khirnov
c22953b8a3 lavc: check that extended_data is properly set in avcodec_encode_audio2(). 2012-05-09 17:47:11 +02:00
Anton Khirnov
a5117a2444 lavc: pad last audio frame with silence when needed. 2012-05-09 17:46:54 +02:00
Carl Eugen Hoyos
eae77f4631 Fix lagarith YUY2 output. 2012-05-09 11:58:08 +02:00
Jordi Ortiz
38f06a1415 libschroedingerdec: Change AVPicture to AVFrame and use SchroTag to store pts
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-05-08 16:06:49 -07:00
Michael Niedermayer
66337bf9d5 qdm2: print error messages instead of just retunring failures
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08 23:34:53 +02:00
Reimar Döffinger
badb0c07d4 CSCD: must use reget_buffer.
Using release_buffer and get_buffer as currently might
not prefer the previous frame contents which the
decoder relies on.
This leads to horrible playback in players using direct
rendering like MPlayer.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-05-08 23:18:48 +02:00
Michael Niedermayer
1ebf6f941e g723_1: change to encode2()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08 22:04:01 +02:00
Michael Niedermayer
b4178a3f13 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Support 'rtmp_live', an option which specifies if the media is a live stream.
  av_samples_fill_array: Mark unmodified function argument as const.
  lagarith: add YUY2 decoding support
  Support decoding unaligned rgb24 lagarith.
  dv: Split profile handling code into a separate file.
  flvenc: use AVFormatContext, not AVCodecContext for logging.
  mov: Remove write-only variable in mov_read_chan().
  fate: Change the probe-format refs to match the final text format committed.
  fate: Add avprobe as a make dependency
  Add probe fate tests to test for regressions in detecting media types.
  fate: Add oneline comparison method
  qdm2: clip array indices returned by qdm2_get_vlc().
  avplay: properly close/reopen AVAudioResampleContext on channel layout change
  avcodec: do not needlessly set packet size to 0 in avcodec_encode_audio2()
  avcodec: for audio encoding, reset output packet when it is not valid
  avcodec: refactor avcodec_encode_audio2() to merge common branches
  avcodec: remove fallbacks for AVCodec.encode() in avcodec_encode_audio2()

Conflicts:
	ffplay.c
	libavcodec/Makefile
	libavcodec/dvdata.c
	libavcodec/dvdata.h
	libavcodec/qdm2.c
	libavcodec/utils.c
	libavformat/flvenc.c
	libavformat/mov.c
	tests/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08 22:02:59 +02:00
Michael Niedermayer
b4b5848513 shorten: increase max_frame_size.
Fixes Ticket1250

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08 20:18:53 +02:00
Alex Converse
40f81769ae options_table: Add some missing #includes to fix "make checkheaders".
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-05-08 20:05:20 +02:00
Michael Niedermayer
e7117f1c10 aasc: use the correct reader offset
Fixes Ticket1232

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08 16:53:03 +02:00
Carl Eugen Hoyos
541bfba85d Write palettised targa.
Fixes ticket #1190.

Reviewed-by: Paul B Mahol
2012-05-08 11:02:12 +02:00
Carl Eugen Hoyos
299d58e18a Support yuva422p rawvideo in nut. 2012-05-08 10:37:13 +02:00
Carl Eugen Hoyos
4e4634aa16 Support yuva422p in ffv1. 2012-05-08 08:49:36 +02:00
Carl Eugen Hoyos
8ba543eb3b Add Avid Meridien (AVUI) decoder. 2012-05-08 08:41:26 +02:00
Carl Eugen Hoyos
143a5c55ff Add yuva422p pix_fmt. 2012-05-08 08:39:37 +02:00
Kostya Shishkov
464e9ab011 lagarith: add YUY2 decoding support
Unlike other variants, for YUY2 we need to use different prediction:
* on line 0 for luma we should left predict starting from the second pixel
* on line 1 we should left predict first 4 pixels for luma and 2 for chroma
* median prediction employed here is taken directly from HuffYUV
2012-05-08 07:24:31 +02:00
Carl Eugen Hoyos
58637a0b24 Support decoding unaligned rgb24 lagarith.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-05-08 07:23:44 +02:00
Michael Niedermayer
3183c38aaa mp3decoder: discard ID3 tags
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08 03:13:37 +02:00
Michael Niedermayer
011004152f lavc/utils: change a few asserts to av_assert0()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-08 02:33:25 +02:00