Commit Graph

17153 Commits

Author SHA1 Message Date
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
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
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
Carl Eugen Hoyos
7c10d3ca2e Simplify 32bit RGB pam encoding.
Reviewed-by: Paul B Mahol
2012-01-14 00:58:40 +01: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