Commit Graph

21183 Commits

Author SHA1 Message Date
Nicolas George
9dd8272431 lavc: set AVSubtitle.pts if possible.
If the packet has a PTS and the corresponding time base is known,
set the pts field of the decoded subtitle structure before the
call to the decoder. The decoder is still allowed to change the
PTS if necessary.
2012-09-15 15:58:42 +02:00
Mans Rullgard
cb6632809d libavcodec: remove av_destruct_packet_nofree()
This function was deprecated two major versions ago (2009).

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-09-15 13:50:35 +01:00
Michael Niedermayer
f1ca40ee00 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  riff: Add SVQ3 fourcc
  fate: ac3: add 4.0 and downmix tests
  configure: x86: improve ebp availability check
  vorbisdec: ensure FASTDIV denominator is never 1
  avformat: refactor avformat_close_input
  avformat: simplify avformat_close_input

Conflicts:
	configure
	libavcodec/vorbisdec.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-15 10:35:26 +02:00
Michael Niedermayer
ab94d1be7a bintext: mark hscroll() as unused
This fixes a warning about a unused function
Alternatively the function could be removed

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-15 04:06:32 +02:00
Akihiro Tsukada
c3c646a868 aacdec: add support for dual mono in Japanese DTV
Japanese DTV uses some non standard extensions in AAC audio.
One example is 'dual mono', which combines two independent
audio into one stereo stream, storing them in left and right channels
respectively.  Historically, dual mono audio has been used for
multi-lingual audio, one for local/native language, and another for english,
and usually the "main" (local language) channel should be output without
any user interactions.

The frames of those dual mono audio are allowed to set
ADTS channel_config field to 0, and just contain two SCE's *WITHOUT* PCE,
which is a non standard extension by Japanese DTV standard.
(ref. ARIB STD-B32 PartII 5.2.3)

This patch adds an AVPacket side data, AV_PKT_DATA_JP_DUALMONO,
which indicates that the AVPacket is likely to contain an audio frame
with the above dual mono extension, and has the parameter to specify
the desired channel selection in that case.
It also makes aacdec to detect dual mono and output just the desired
channel when this side data is attached.

Signed-off-by: Akihiro Tsukada <atsukada@users.sourceforge.net>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-15 03:50:04 +02:00
Stefano Sabatini
8bdba0b3e9 tools: move raw-test program to tools, with the name fourcc2pixfmt 2012-09-14 23:04:38 +02:00
Luca Barbato
714508bcb9 vorbisdec: ensure FASTDIV denominator is never 1
In both usages of FASTDIV the denominator might be 1.

Using a branch could make the function slower than using a normal
division.

Both denominator and numerator can be multiplied by 2 safely and
using shifts is faster than using a branch.
2012-09-14 14:26:27 +02:00
Michael Niedermayer
509f502902 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: dsputil: Move Xvid IDCT put/add functions to a more suitable place
  trasher: Include all the necessary headers
  x86: Remove some leftover declarations for non-existent functions
  ARM: libavresample: NEON optimised generic fltp to s16 conversion
  ARM: libavresample: NEON optimised stereo fltp to s16 conversion
  ARM: libavresample: NEON optimised flat float to s16 conversion

Conflicts:
	libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-14 14:13:38 +02:00
Ben Jackson
e3329474a3 pthread: Avoid crashes/odd behavior caused by spurious wakeups
pthread_wait_cond can wake up for no reason (Wikipedia: Spurious_wakeup).
The FF_THREAD_SLICE thread mechanism could spontaneously execute jobs or
allow the caller of avctx->execute to return before all jobs were complete.
This adds tests to both cases to ensure the wakeup is real.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-14 06:36:55 +02:00
Michael Niedermayer
93b240f4a5 mpegaudio_parser: reset state to prevent it to be random
Fixes Ticket1718

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-14 05:55:11 +02:00
Michael Niedermayer
570931d411 aacpsy: psy_3gpp_analyze_channel() handle energy == 0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-14 03:27:25 +02:00
Michael Niedermayer
413b32f808 aacpsy: calc_reduction_3gpp() handle active_lines = 0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-14 03:26:19 +02:00
Diego Biurrun
58139e141b x86: dsputil: Move Xvid IDCT put/add functions to a more suitable place 2012-09-14 01:59:47 +02:00
Michael Niedermayer
c21f81999a mpegaudioenc: replace pow(2,.. by exp2(
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-13 22:44:42 +02:00
Diego Biurrun
2017f0fdb7 x86: Remove some leftover declarations for non-existent functions 2012-09-13 21:38:47 +02:00
Derek Buitenhuis
59db014b5b Revert "lavc/libx264: remap X264_LOG_INFO loglevel from AV_LOG_INFO to VERBOSE"
You should not need to enable verbose logging and all the output that comes
with it in order to get things like the obtained bitrate from a first
pass encode. Many things parse this output.

Also, since it is marked as info in libx264, it should be marked as
info in libavcodec as well.

This reverts commit 911519caec.
2012-09-13 10:57:50 -04:00
Michael Niedermayer
75f3e0ad95 mpegvideo: skip ff_print_debug_info() for VDPAU
Based on code by: MEANX / gruntster (Avidemux Rev 7990 — 2012-05-30 13:02:27)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-13 16:22:42 +02:00
Michael Niedermayer
e3e09f2bad Merge remote-tracking branch 'qatar/master'
* qatar/master:
  os_support: Choose between direct.h and io.h using a configure check
  os_support: Include io.h instead of direct.h on mingw32ce
  x86: ac3dsp: Only refer to the ac3_downmix_sse symbol if it has been declared
  swscale: Remove two bogus asserts
  ac3: move ac3_downmix() from dsputil to ac3dsp
  lavr/audio_mix_matrix: acknowledge the existence of LFE2.
  mlp_parser: avoid mapping multiple disctinct TrueHD channels to the same Libav channel.
  lavu/audioconvert: add a second low frequency channel.

Conflicts:
	doc/APIchanges
	libavcodec/ac3dsp.c
	libavcodec/ac3dsp.h
	libavcodec/mlp_parser.c
	libavutil/audioconvert.c
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-13 15:35:50 +02:00
Martin Storsjö
91ff4e83ca x86: ac3dsp: Only refer to the ac3_downmix_sse symbol if it has been declared
This fixes building without inline assembly.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-13 13:51:52 +03:00
Mans Rullgard
97cb9236cf ac3: move ac3_downmix() from dsputil to ac3dsp
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-09-12 23:39:50 +01:00
Tim Walker
3844572887 mlp_parser: avoid mapping multiple disctinct TrueHD channels to the same Libav channel.
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-09-12 18:26:53 -04:00
Michael Niedermayer
ddabecbbf5 vc1dec: export adv profile color format indication
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-12 21:12:18 +02:00
Carl Eugen Hoyos
8e082df0f4 Support decoding of monochrome tiff images without bpp tag. 2012-09-12 13:33:57 +02:00
Michael Niedermayer
ac0f1ae64b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  utvideoenc: Add missing AV_ prefix to codec ID
  avserver: Add missing #include for av_gettime()
  configure: Only disable aligned stack on MSVC on 32 bit
  configure: indentation cosmetics

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-12 11:46:47 +02:00
Derek Buitenhuis
578bbf8149 diracdsp: Fix unprotected inline asm
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-11 22:59:43 +02:00
Michael Niedermayer
0ea65bbeee ratecontrol: change a commented printf to av_log
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-11 17:50:14 +02:00
Michael Niedermayer
50dba71b7d ratecontrol: fix get_fps() argument
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-11 17:50:14 +02:00
Michael Niedermayer
ce7876cbf4 ratecontrol: Dynamically choose a default for rc_max_available_vbv_use
This improves handling of small buffer sizes

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-11 17:50:14 +02:00
Michael Niedermayer
a990a30883 ratecontrol: correct predictor in case of stuffing
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-11 17:50:14 +02:00
Diego Biurrun
76fa7e09f1 utvideoenc: Add missing AV_ prefix to codec ID 2012-09-11 17:40:38 +02:00
Diego Biurrun
1648a508fa x86: dsputil: Move specific optimization settings out of global init function
They belong in the init functions specific to each CPU capability.
2012-09-11 10:12:17 +02:00
Michael Niedermayer
ba9e9605ad cavsdec/decode_mb_b: fix return type
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-11 07:13:49 +02:00
Michael Niedermayer
386d60f978 aacdec/lcg_random: fix harmless integer overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-11 03:02:51 +02:00
Michael Niedermayer
7ea5dbcb83 cavsdec: Fix assertion failure.
The assert in decode_mb_b() is replaced by a normal error check for the
case that can occur with a damaged or crafted bitstream.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-11 03:02:51 +02:00
Stefano Sabatini
7b62d3415e lavc/h263dec: return or propagate proper error codes 2012-09-11 01:15:10 +02:00
Stefano Sabatini
ac006d29d8 lavc/flvdec: return meaningful error codes 2012-09-11 01:15:10 +02:00
Michael Niedermayer
76fac07334 mpegaudiodec: replace pow(2.0,...) by exp2()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-10 22:34:18 +02:00
Michael Niedermayer
c5f0b6bf41 atrac3: replace powf(2,...) by exp2f()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-10 22:32:56 +02:00
Michael Niedermayer
17b3251c6c ra144enc: avoid integer overflows.
The values are all positive but signed variables where used,
which overflowed.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-10 21:04:01 +02:00
Sébastien Brochet
e14725cecc add OTF support for attachments
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-10 17:08:18 +02:00
Ben Jackson
616ef2e8bd lavc/pngenc: Enable frame threading for PNG encodes
Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-10 15:15:40 +02:00
Michael Niedermayer
bff2afb3e9 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: dsputil: Only compile motion_est code when encoders are enabled
  mem: fix typo in check for __ICC
  fate: mp3: drop redundant CMP setting
  rtp: Depacketization of JPEG (RFC 2435)
  Rename ff_put_string to avpriv_put_string
  mjpeg: Rename some symbols to avpriv_* instead of ff_*
  yadif: cosmetics

Conflicts:
	Changelog
	libavcodec/mjpegenc.c
	libavcodec/x86/Makefile
	libavfilter/vf_yadif.c
	libavformat/version.h
	libavutil/mem.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-10 14:06:20 +02:00
Diego Biurrun
a84edbacaf x86: dsputil: Only compile motion_est code when encoders are enabled 2012-09-10 08:31:47 +02:00
Reinhard Nissl
2474ca1a22 aacdec.c: fix some comments
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 22:54:10 +02:00
Samuel Pitoiset
3c19815416 rtp: Depacketization of JPEG (RFC 2435)
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-09 22:22:21 +03:00
Martin Storsjö
aefea4d0de Rename ff_put_string to avpriv_put_string
This allows using it from libavformat as well. This will be used
by the RTP/JPEG depacketizer.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-09 22:22:12 +03:00
Samuel Pitoiset
a0845bae49 mjpeg: Rename some symbols to avpriv_* instead of ff_*
These symbols will be used from the RTP/JPEG depacketizer.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-09 22:22:07 +03:00
Michael Niedermayer
44f83930d9 x86/mpegaudiodec: fix compilation failure on cygwin with undefined imdct36_blocks_avx
this is a regression since today

Found-by: beastd
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 18:39:03 +02:00
Derek Buitenhuis
3629d1c09d dsputil_template: Reindent after recent change
Forgot to keep it pretty in e62e455f7b.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 17:21:37 +02:00
Michael Niedermayer
6add8eb2ce x86/h264dsp_init: put a HAVE_YASM back
Should fix compilation on open solaris

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 17:21:02 +02:00
Michael Niedermayer
17f9626b5d tiff/doubles2str: check for truncation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 14:41:18 +02:00
Michael Niedermayer
0196bc6f14 tiff/doubles2str: factor out component_len
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 14:40:10 +02:00
Michael Niedermayer
b9a07e787b srtdec: fix unsafe snprintf() return usage
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 14:19:02 +02:00
Michael Niedermayer
9fea619f19 ass: assert that the timsstamps fitted in the buffers
Failure of the assert would cause various problems later
if we continue.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 14:19:02 +02:00
Michael Niedermayer
77aedc77ab Merge remote-tracking branch 'qatar/master'
* qatar/master:
  swscale: Provide the right alignment for external mmx asm
  x86: Replace checks for CPU extensions and flags by convenience macros
  configure: msvc: fix/simplify setting of flags for hostcc
  x86: mlpdsp: mlp_filter_channel_x86 requires inline asm

Conflicts:
	libavcodec/x86/fft_init.c
	libavcodec/x86/h264_intrapred_init.c
	libavcodec/x86/h264dsp_init.c
	libavcodec/x86/mpegaudiodec.c
	libavcodec/x86/proresdsp_init.c
	libavutil/x86/float_dsp_init.c
	libswscale/utils.c
	libswscale/x86/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 13:27:42 +02:00
Michael Niedermayer
4819d43d7f aacpsy: use exp2(f) instead of pow(f)(2,...)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 13:02:08 +02:00
Michael Niedermayer
363d302ea3 imc: use exp2 instead of pow(2,...)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 13:02:08 +02:00
Derek Buitenhuis
e62e455f7b dsputil/me/pixels: Actually use av_restrict
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 03:55:56 +02:00
Michael Niedermayer
d48ebfbdea mpeg4videodec: Fix "warning: dc_pred_dir may be used uninitialized in this function"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-09 03:15:46 +02:00
Michael Niedermayer
dd081f98dd dct-test: fix order of evaluation bug
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-08 23:57:37 +02:00
Diego Biurrun
e0c6cce447 x86: Replace checks for CPU extensions and flags by convenience macros
This separates code relying on inline from that relying on external
assembly and fixes instances where the coalesced check was incorrect.
2012-09-08 18:18:34 +02:00
Hendrik Leppkes
fb4e983e0c x86: mlpdsp: mlp_filter_channel_x86 requires inline asm
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-08 15:41:44 +03:00
Michael Niedermayer
7beadfe1f7 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mov_chan: Only set the channel_layout if setting it to a nonzero value
  mov_chan: Reindent an incorrectly indented line
  mp2 muxer: mark as AVFMT_NOTIMESTAMPS.
  x86: float_dsp: fix ff_vector_fmac_scalar_avx() on Win64
  x86: more specific checks for availability of required assembly capabilities
  x86: avcodec: Drop silly "_mmx" suffix from dsputil template names
  fate: Drop redundant setting of FUZZ to 1
  cavsdsp: set idct permutation independently of dsputil
  x86: allow using add_hfyu_median_prediction_cmov on any cpu with cmov

Conflicts:
	libavcodec/x86/dsputil_mmx.c
	libavformat/mp3enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-08 12:53:44 +02:00
Daniel Verkamp
124f0b2f46 flashsv2enc: only encode diff blocks when needed
A flashsv2 block may have a "diff block" to indicate which scan lines of
the block are actually encoded.  However, this diff block need not be
used when the entire block is coded.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-08 05:36:34 +02:00
Michael Niedermayer
097c64ffcb flashsv2enc: remove experimental flag, the encoder seems working now
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-07 22:53:21 +02:00
Michael Niedermayer
dbb9117d18 flashsv2enc: move blockbuffer realloc to reconfigure_at_keyframe()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-07 21:46:34 +02:00
Michael Niedermayer
9b6467fd46 flashv2enc: reallocate not only on block count changes but on dimension changes.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-07 21:46:34 +02:00
Derek Buitenhuis
3174987b42 flashsv2enc: Replace a VLA with a heap alloc
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-07 21:46:34 +02:00
Michael Niedermayer
9b326fc261 flashsv2enc: fix prev-Z-prime encoding
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-07 21:46:34 +02:00
Michael Niedermayer
8e6511c1e1 proresdec2: avoid VLA and use SliceContext instead.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-07 19:38:23 +02:00
Diego Biurrun
1169f0d0af x86: more specific checks for availability of required assembly capabilities 2012-09-07 18:16:04 +02:00
Diego Biurrun
8cb7ed5562 x86: avcodec: Drop silly "_mmx" suffix from dsputil template names 2012-09-07 13:50:52 +02:00
Michael Niedermayer
fa85118510 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mov_chan: Pass a separate AVIOContext for reading
  af_asyncts: check return value from lavr when flushing.
  mss2: simplify loop in decode_rle()
  mss12: avoid unnecessary division in arith*_get_bit()
  mss2: do not try to read too many palette entries
  mpegvideo: set AVFrame fields to NULL after freeing the base memory
  configure: Set the right cc_e flags for msvc

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-07 13:50:24 +02:00
Mans Rullgard
6efb698883 cavsdsp: set idct permutation independently of dsputil
CAVS uses its own idct so using dsputil to set the permutation
is fragile.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-09-07 11:42:35 +01:00
Mans Rullgard
5fe64d88f6 x86: allow using add_hfyu_median_prediction_cmov on any cpu with cmov
For some reason add_hfyu_median_prediction_cmov is only selected
on 3Dnow-capable CPUs, even though it uses no 3Dnow instructions.
This patch allows it to be selected on any cpu with cmov with the
possibility of being overridden by the mmxext version.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-09-07 11:42:35 +01:00
Michael Niedermayer
5891e454a6 faxcompr: fix out of array read
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-07 12:36:00 +02:00
Stefano Sabatini
911519caec lavc/libx264: remap X264_LOG_INFO loglevel from AV_LOG_INFO to VERBOSE
AV_LOG_INFO is more geared towards messages to be read by the user, the
statistics shown by libx264 with X264_LOG_INFO are more useful at the
debugging level.

Help reducing the log spam.
2012-09-07 09:59:12 +02:00
Ben Jackson
de9f5b6853 lavc/vp6: Disable deblock filtering for Simple Profile
In vp6 Advanced Profile, deblock filtering is conditionally enabled in
each frame header.  In Simple Profile it should always be off.  vp6 was
inheriting the wrong default from ff_vp56_init.

Signed-off-by: Ben Jackson <ben@ben.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-07 01:36:21 +02:00
Stefano Sabatini
144caa7280 lavc/raw-test: invert the order of key/value when printing the fourcc->pix_fmt map
Print
FOURCC: PIX_FMT
rather than
PIX_FMT: FOURCC

This seems more consistent with the help message:
-l                list the pixel format for each fourcc

Remove possibly redundant/confusing comment.
2012-09-06 23:39:57 +02:00
Alberto Delmás
290d1022b2 mss2: simplify loop in decode_rle()
It calculates the sum of power of two series, which can be done in one step.

Suggested by Michael Niedermayer <michaelni@gmx.at>

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-09-06 20:48:07 +02:00
Alberto Delmás
9699b3a2d7 mss12: avoid unnecessary division in arith*_get_bit()
That division can be replaced with a comparison:
((c->value - c->low) << 1) + 1 >= range

By expanding 'range' definition and simplifying this inequation we obtain
the final expression.

Suggested by Michael Niedermayer <michaelni@gmx.at>

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-09-06 20:44:04 +02:00
Alberto Delmás
6ceef07b21 mss2: do not try to read too many palette entries
Reported by Michael Niedermayer <michaelni@gmx.at>

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-09-06 20:38:22 +02:00
Janne Grunau
59383d5740 mpegvideo: set AVFrame fields to NULL after freeing the base memory
Prevents dangling pointers and makes access after free more obvious.
Setting AVFrame.qscale_table to NULL is required for successfully
allocating a previously freed Picture with ff_alloc_picture().
2012-09-06 19:02:43 +02:00
Michael Niedermayer
40112e7b35 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: Allow setting the ld parameter from the config file
  x86: dsputil: Do not redundantly check for CPU caps before calling init funcs
  configure: Disable some warnings in MSVC
  x86: vp56: cmov version of vp56_rac_get_prob requires inline asm
  avopt: fix examples to match the same style about default values as the actual code.
  configure: Add support for MSVC cl.exe/link.exe
  lavu: add snprintf(), vsnprint() and strtod() replacements for MS runtime.

Conflicts:
	libavutil/opt.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-06 16:23:17 +02:00
Michael Niedermayer
376b16d7cc Merge commit '0db2d94280e260af5f3ad7993c5a6357462f17c9'
* commit '0db2d94280e260af5f3ad7993c5a6357462f17c9':
  dsputil: workaround __VA_ARGS__ missing tokenization for MSVC
  configure: add section for libc-specific hacks
  build: disable ranlib on mingw
  parser: Don't use pc as context for av_dlog
  h264: Remove an assert on current_picture_ptr being null

Conflicts:
	configure
	libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-06 16:05:40 +02:00
Diego Biurrun
ef6ba1f237 x86: dsputil: Do not redundantly check for CPU caps before calling init funcs
The init functions check for CPU capabilities on their own already.
2012-09-06 09:05:52 +02:00
Michael Niedermayer
52fa5cea03 amrnbdec: silence a warning about unsigned cant be negative
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-06 01:18:55 +02:00
Michael Niedermayer
750cc3c0e5 acelp_pitch_delay: add missing libm.h include for exp2()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 21:56:41 +02:00
Hendrik Leppkes
d914ea6fd8 x86: vp56: cmov version of vp56_rac_get_prob requires inline asm
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-09-05 21:30:46 +02:00
Michael Niedermayer
269e6212ee g723_1: add some const for more correctness
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 21:03:17 +02:00
Michael Niedermayer
397ebc1d9b proresenc_anatoliy: add 2 const to silence 2 warnings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 20:54:50 +02:00
Nedeljko Babic
b3fdfc8c4e Optimization of AC3 floating point decoder for MIPS
FFT in MIPS implementation is working iteratively instead
 of "recursively" calling functions for smaller FFT sizes.
Some of DSP and format convert utils functions are also optimized.

Signed-off-by: Nedeljko Babic <nbabic@mips.com>
Reviewed-by: Vitor Sessak <vitor1001@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 20:09:56 +02:00
Michael Niedermayer
9afd55922a imgconvert: silence some const incompatible pointer warnings.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 18:44:42 +02:00
Luca Barbato
0db2d94280 dsputil: workaround __VA_ARGS__ missing tokenization for MSVC
A second expansion forces the preprocessor to tokenize properly.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-05 17:07:24 +03:00
Martin Storsjö
6d65496990 parser: Don't use pc as context for av_dlog
The ParserContext class doesn't have an AVClass, required for
using it as a logging class.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-05 16:01:40 +03:00
Michael Niedermayer
98840ee017 Merge commit 'c7b610aa0b1bac47eea0056b13fe6e982b85844a'
* commit 'c7b610aa0b1bac47eea0056b13fe6e982b85844a':
  avopt: Explicitly store float/double option defaults in .dbl

Conflicts:
	libavcodec/ac3dec.c
	libavcodec/libx264.c
	libavfilter/af_amix.c
	libavfilter/af_asyncts.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 14:44:05 +02:00
Michael Niedermayer
d46c1c72e4 Merge commit 'e6153f173a49e5bfa70b0c04d2f82930533597b9'
* commit 'e6153f173a49e5bfa70b0c04d2f82930533597b9':
  avopt: Store defaults for AV_OPT_TYPE_INT in the i64 union member

Conflicts:
	libavcodec/libopenjpegdec.c
	libavcodec/libopenjpegenc.c
	libavcodec/libx264.c
	libavcodec/mpeg12enc.c
	libavcodec/options_table.h
	libavcodec/snowenc.c
	libavcodec/tiffenc.c
	libavdevice/v4l2.c
	libavdevice/x11grab.c
	libavfilter/af_amix.c
	libavfilter/af_asyncts.c
	libavfilter/af_join.c
	libavfilter/buffersrc.c
	libavfilter/src_movie.c
	libavfilter/vf_delogo.c
	libavfilter/vf_drawtext.c
	libavformat/http.c
	libavformat/img2dec.c
	libavformat/img2enc.c
	libavformat/movenc.c
	libavformat/mpegenc.c
	libavformat/mpegtsenc.c
	libavformat/options_table.h
	libavformat/segment.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 14:33:32 +02:00
Michael Niedermayer
99de3df3d3 Merge commit 'd58dd4b5b5d31cfd4092e38a5f2c894eee2ab078'
* commit 'd58dd4b5b5d31cfd4092e38a5f2c894eee2ab078':
  avopt: Store defaults for AV_OPT_TYPE_FLAGS in the i64 union member

Conflicts:
	libavcodec/libvpxenc.c
	libavcodec/options_table.h
	libavfilter/vf_drawtext.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 14:09:09 +02:00
Michael Niedermayer
d5f65e9d40 Merge commit '124134e42455763b28cc346fed1d07017a76e84e'
* commit '124134e42455763b28cc346fed1d07017a76e84e':
  avopt: Store defaults for AV_OPT_TYPE_CONST in the i64 union member

Conflicts:
	libavcodec/aacenc.c
	libavcodec/libopenjpegenc.c
	libavcodec/options_table.h
	libavdevice/bktr.c
	libavdevice/v4l2.c
	libavdevice/x11grab.c
	libavfilter/af_amix.c
	libavfilter/vf_drawtext.c
	libavformat/movenc.c
	libavformat/options_table.h
	libavutil/opt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-05 13:58:11 +02:00
Michael Niedermayer
5e997688f8 h264: Remove an assert on current_picture_ptr being null
It is possible in various error paths as well as gap handling
that this has already been allocated. It is not clear why that
would be a problem with the current code, thus disable the
assert to avoid a common assert failure when asserts are enabled.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-05 14:28:41 +03:00
Clément Bœsch
3b6e9cd7ec lavc/dvdsubdec: parse the size from the extradata. 2012-09-04 23:38:29 +02:00
Martin Storsjö
c7b610aa0b avopt: Explicitly store float/double option defaults in .dbl
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 23:13:51 +03:00
Martin Storsjö
e6153f173a avopt: Store defaults for AV_OPT_TYPE_INT in the i64 union member
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 23:13:44 +03:00
Martin Storsjö
d58dd4b5b5 avopt: Store defaults for AV_OPT_TYPE_FLAGS in the i64 union member
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 23:13:38 +03:00
Martin Storsjö
124134e424 avopt: Store defaults for AV_OPT_TYPE_CONST in the i64 union member
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 23:13:32 +03:00
Michael Niedermayer
8c6d651fc3 paf: avoid using expressions with sideeffects in AV_R*
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-04 21:25:39 +02:00
Michael Niedermayer
2d7d91f06d svq1enc: Set picture_structure correctly
This fixes assert failures when running in debug mode.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 18:38:02 +03:00
Michael Niedermayer
91672504a4 mpegvideo: remove last_picture_ptr / h264 assert.
This assert is no longer true since h264 error concealment needs
last_picture_ptr to be set.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 18:38:02 +03:00
Michael Niedermayer
19000122a4 mpegvideo_enc: remove assert that has become obsolete with the new API
It now just checks uninitialized and unused data.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 18:37:58 +03:00
Michael Niedermayer
2c340596ca elbg: Fix an assert
It seems the condition was flipped from what was intended.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 18:37:54 +03:00
Michael Niedermayer
9dcc4c30f9 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: add support for bdver1 and bdver2 CPU types.
  avio: make avio_close NULL the freed buffer
  pixdesc: cosmetics
  proresenc: Don't free a buffer not owned by the codec
  proresenc: Write the full value in one put_bits call
  adpcmenc: Calculate the IMA_QT predictor without overflow
  x86: Add convenience macros to check for CPU extensions and flags
  x86: h264dsp: drop some unnecessary ifdefs around prototype declarations
  mss12: merge decode_pixel() and decode_top_left_pixel()
  mss12: reduce SliceContext size from 1067 to 164 KB
  mss12: move SliceContexts out of the common context into the codec contexts

Conflicts:
	libavformat/aviobuf.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-04 17:04:51 +02:00
Martin Storsjö
cc86bd4ccc proresenc: Don't free a buffer not owned by the codec
The data in coded_frame isn't allocated using get_buffer, but
is copied from the input frame to the encoder, so we should
not try to free it ourselves.

This fixes an assert failure when running in debug mode.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 15:32:12 +03:00
Martin Storsjö
6d9e74cd41 proresenc: Write the full value in one put_bits call
Previously, the put_bits call writing the value wrote a value
larger than the number of bits specified, failing asserts
in debug mode. There was no actual bitstream writer corruption,
since the overwritten bit already always was set to 1.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 15:31:47 +03:00
Michael Niedermayer
aa264da5bf adpcmenc: Calculate the IMA_QT predictor without overflow
Previously, the value given to put_bits was 10 bits long for positive
predictors, even though 9 bits were to be written. The extra bit could
in some cases overwrite existing bits in the bitstream writer cache.

This fixes a failed assert in put_bits.h, when running a version
built with -DDEBUG.

The fate test result gets slightly improved, thanks to getting rid
of the overwritten bits in the bitstream writer cache.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-09-04 15:30:58 +03:00
Michael Niedermayer
688cb71252 aaccoder: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-04 04:38:28 +02:00
Michael Niedermayer
7b1ff5e2f3 h263dec: fix xvid IDCT switching
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-04 03:29:00 +02:00
Diego Biurrun
a84ac7a860 x86: h264dsp: drop some unnecessary ifdefs around prototype declarations 2012-09-04 01:44:59 +02:00
Michael Niedermayer
1fa4018e29 jpegdec: try to fix different flipping behavior of inteljpegs.
This may need some trial and error to find exactly how to identify them
so please report any intel jpegs that get fliped wrong.

Fixes Ticket511

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-03 23:39:50 +02:00
Michael Niedermayer
507d2d28d6 lsp: change assert to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-03 23:26:14 +02:00
Michael Niedermayer
c868219c9a lavc: put motion test back.
While not that usefull, we can as well keep it until it breaks.
When it breaks for whatever reason ill likely remove it
Sorry for the revert spam, i had not realized this code compiles
and works fine.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-03 23:23:40 +02:00
Michael Niedermayer
b0dc4286a9 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: avcodec: order cosmetics
  intrax8dsp: Add missing #include to make header standalone
  Delete motion-test tool; it is of doubtful utility.

Conflicts:
	libavcodec/Makefile
	libavcodec/motion-test.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-03 17:41:17 +02:00
Alberto Delmás
344fbc47c7 mss12: merge decode_pixel() and decode_top_left_pixel()
No meaningful generated code differences using gcc -O3.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-09-03 14:41:59 +02:00
Alberto Delmás
626c1a33ed mss12: reduce SliceContext size from 1067 to 164 KB
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-09-03 14:39:37 +02:00
Alberto Delmás
a97ee41bee mss12: move SliceContexts out of the common context into the codec contexts
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-09-03 14:39:19 +02:00
Diego Biurrun
eb239a577f build: avcodec: order cosmetics 2012-09-03 11:33:49 +02:00
Diego Biurrun
7681b8837a intrax8dsp: Add missing #include to make header standalone 2012-09-03 11:31:47 +02:00
Diego Biurrun
13b6b7e0e2 Delete motion-test tool; it is of doubtful utility. 2012-09-03 10:43:21 +02:00
Michael Niedermayer
5d55830388 snowdec: remove unused variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-03 01:26:57 +02:00
Michael Niedermayer
0b23452c01 ffv1: fix 2 uninitialized variable warnings
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-03 01:25:04 +02:00
Michael Niedermayer
50b0edea9f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  intrax8: move functions from dsputil to own context

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-02 21:01:10 +02:00
Mans Rullgard
15616eb042 intrax8: move functions from dsputil to own context
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-09-02 16:32:57 +01:00
Stefano Sabatini
06fc74bda0 lavc/codec_desc: fix name of wavesynth codec 2012-09-02 10:42:25 +02:00
Piotr Bandurski
53241b5dc7 lavc: add missing new line to some messages
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-01 15:59:30 +02:00
Mahendra M
9b4badb09b Fix libx264 profile listing
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-01 15:59:04 +02:00
Peter Ross
65a31a0de7 ansi: erase screen on first frame
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-01 15:23:39 +02:00
Peter Ross
3ac718d60a ansi: support 256-colors
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-01 15:23:26 +02:00
Peter Ross
95b9e56beb ansi: support escaped codes where last argument is zero
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-01 15:22:34 +02:00
Peter Ross
368a768cbc ansi: remove misplaced return
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-01 15:22:20 +02:00
Michael Niedermayer
75a4b91f83 Merge remote-tracking branch 'stev47/master'
* stev47/master:
  cpia: move reget_buffer after header check

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-09-01 14:23:05 +02:00
Carl Eugen Hoyos
a26789cf9f Fix compilation with yasm-0.6.2. 2012-09-01 10:59:16 +02:00
Stephan Hilb
e309677100 Merge branch 'master' of git://source.ffmpeg.org/ffmpeg 2012-09-01 10:16:56 +02:00
Stephan Hilb
296140ebfb cpia: move reget_buffer after header check
If the header is invalid, there is no need to get at buffer.
Do it after the header has been checked.
Suggested by Reimar Döffinger
2012-09-01 10:12:33 +02:00
Michael Niedermayer
dfb4757bbe lavc: support building with the forks ABI for avcodec_find_best_pix_fmt2()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-31 21:35:40 +02:00
Michael Niedermayer
2a54ae9df8 imgconvert: add avcodec_find_best_pix_fmt_of_2()
and deprecate avcodec_find_best_pix_fmt2()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-31 21:35:39 +02:00
Reimar Döffinger
fe79fc2ea5 dvbsubdec: set width/height from display def if not set.
This fixes playback of DVB subtitles in
http://samples.ffmpeg.org/ffmpeg-bugs/trac/ticket1065/Test1.wtv
in MPlayer.
FFplay is not affected since it assumes that the subtitles
are scaled to match the video - but this usually isn't the
case after rescaling the video and stream-copying subtitles.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-08-31 19:58:09 +02:00
Carl Eugen Hoyos
52be5428c0 Add some missing _EXTERNAL suffixes to yasm source files. 2012-08-31 15:39:03 +02:00
Michael Niedermayer
f61ee9b564 dsicinav: fix signed integer overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-31 15:15:59 +02:00
Michael Niedermayer
c617bed34f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  MSS1 and MSS2: set final pixel format after common stuff has been initialised
  MSS2 decoder
  configure: handle --disable-asm before check_deps
  x86: Split inline and external assembly #ifdefs
  configure: x86: Separate inline from standalone assembler capabilities
  pktdumper: Use a custom define instead of PATH_MAX for buffers
  pktdumper: Use av_strlcpy instead of strncpy
  pktdumper: Use sizeof(variable) instead of the direct buffer length

Conflicts:
	Changelog
	configure
	libavcodec/allcodecs.c
	libavcodec/avcodec.h
	libavcodec/codec_desc.c
	libavcodec/dct-test.c
	libavcodec/imgconvert.c
	libavcodec/mss12.c
	libavcodec/version.h
	libavfilter/x86/gradfun.c
	libswscale/x86/yuv2rgb.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-31 13:34:32 +02:00
Michael Niedermayer
98298eb103 Merge commit 'ec36aa69448f20a78d8c4588265022e0b2272ab5'
* commit 'ec36aa69448f20a78d8c4588265022e0b2272ab5':
  x86: Fix linking with some or all of yasm, mmx, optimizations disabled
  configure: Add more fine-grained SSE CPU capabilities flags
  avfilter: x86: Use more precise compile template names
  x86: cosmetics: Comment some #endifs for better readability
  g723_1: add comfort noise generation
  utvideoenc: Switch to dsputils' median prediction
  utvideoenc: Avoid writing into the input picture
  avtools: remove the distinction between func_arg and func2_arg.
  avconv: make the -passlogfile option per-stream.
  avconv: make the -pass option per-stream.
  cmdutils: make -codecs print lossy/lossless flags.
  lavc: add lossy/lossless codec properties.

Conflicts:
	Changelog
	cmdutils.c
	configure
	doc/APIchanges
	ffmpeg.h
	ffmpeg_opt.c
	ffprobe.c
	libavcodec/codec_desc.c
	libavcodec/g723_1.c
	libavcodec/utvideoenc.c
	libavcodec/version.h
	libavcodec/x86/mpegaudiodec.c
	libavcodec/x86/rv40dsp_init.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-31 13:01:30 +02:00
Carl Eugen Hoyos
f3683349ae Write TIFF Tag ExtraSamples when encoding pix_fmts that contain transparency information. 2012-08-31 11:15:07 +02:00
Carl Eugen Hoyos
5eb532a930 Cosmetics: Reorder pix_fmts in tiffenc.c. 2012-08-31 11:01:02 +02:00
Carl Eugen Hoyos
a5a90fa577 Simplify setting colour space for mono* when encoding tiff. 2012-08-31 10:57:36 +02:00
Alberto Delmás
ede3d6400d MSS1 and MSS2: set final pixel format after common stuff has been initialised
This way it won't interfere with WMV9 initialisation inside MSS2 decoder and
avplay will play it fine.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-08-31 08:08:43 +02:00
Alberto Delmás
ee769c6a7c MSS2 decoder
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-08-31 07:37:16 +02:00
Diego Biurrun
17337f54c0 x86: Split inline and external assembly #ifdefs 2012-08-31 01:53:25 +02:00
Stephan Hilb
6eac554659 Add CPiA video decoder
The cpia video decoder is intended to be used with the v4l2 demuxer.
There are some small changes to the v4l2 demuxer to support the
variable frame length of the format.
Fixes ticket #1537

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-31 00:24:11 +02:00
Michael Niedermayer
438b86fed4 faxcompr: fix byte alignment case
Fixes Ticket1653

Found-by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 22:24:58 +02:00
Diego Biurrun
ec36aa6944 x86: Fix linking with some or all of yasm, mmx, optimizations disabled
Some optimized template functions reference optimized symbols, so they
must be explicitly disabled when those symbols are unavailable.
2012-08-30 19:37:32 +02:00
Diego Biurrun
a886b279a0 x86: cosmetics: Comment some #endifs for better readability 2012-08-30 18:50:33 +02:00
Kostya Shishkov
04fc5c6bde g723_1: add comfort noise generation 2012-08-30 18:21:12 +02:00
Michael Niedermayer
6fc892d271 libvorbisdec: fix const nitpick warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 18:01:14 +02:00
Michael Niedermayer
040405b59e utvideoenc: Switch to dsputils' median prediction
Also, align the mangled RGB planes, which is required for the
SIMD versions of dsputils' median predict.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 11:59:19 -04:00
Michael Niedermayer
bbefd27e52 utvideoenc: Avoid writing into the input picture
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 11:59:19 -04:00
Michael Niedermayer
0e781d9405 utvideoenc: remove unused variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 17:50:33 +02:00
Michael Niedermayer
e8e4c8bdde Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: allow non-standard variations of linker -l/-L flags
  Add reminders to update the codec descriptor list with new codec IDs.

Conflicts:
	Makefile
	configure
	libavcodec/avcodec.h
	libavformat/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 17:28:21 +02:00
Anton Khirnov
a2318326f1 lavc: add lossy/lossless codec properties. 2012-08-30 13:55:55 +02:00
Michael Niedermayer
340e8e0b22 dnxhdenc: fix pointer type warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 11:47:57 +02:00
Michael Niedermayer
b0545800bd wmalosslessdec: remove unused variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 11:11:31 +02:00
Michael Niedermayer
19008e06c6 wmavoice: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 02:34:00 +02:00
Michael Niedermayer
946ed78f5f aacdec: fix priming/skip for AAC HE/HE2
There is a remaining error of 2 - 8 samples in some but not all cases,
the source of the error is unknown ATM.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 00:22:58 +02:00
Michael Niedermayer
0fc684ff7c aacdec: pass AVPacket to aac_decode_frame_int()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-30 00:12:49 +02:00
Michael Niedermayer
818f3dc907 audio_frame_que: remove broken code that is specific to old audio_que
This should fix compilation with -DDEBUG

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-29 19:22:29 +02:00
Philip Langdale
7816c7e772 Add missing codec descriptor for timingless subrip.
Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-29 09:18:05 -07:00
Michael Niedermayer
8579d4b2f0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: export filtered -lz flag in config.mak
  build: add separate setting for host linker
  configure: probe_cc: use separate variable for linker output flag
  x86: Always compile files with functions that are called unconditionally
  x86: mpegvideoenc: fix linking with --disable-mmx
  x86: mpegvideoenc: Do not abuse HAVE_ variables for template instantiation

Conflicts:
	Makefile
	configure
	libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-29 18:13:00 +02:00
Michael Niedermayer
1c66807636 Merge commit 'd488c3bcbaf7ddda42597e014deb661a7e9e2112'
* commit 'd488c3bcbaf7ddda42597e014deb661a7e9e2112':
  configure: support Bitrig OS
  yuv2rgb: handle line widths that are not a multiple of 4.
  graph2dot: Use the fallback getopt implementation if needed
  tools: Include io.h for open/read/write/close if unistd.h doesn't exist
  testprogs: Remove unused includes
  qt-faststart: Use other seek/tell functions on MSVC than on mingw
  ismindex: Include direct.h for _mkdir on windows
  sdp: Use static const char arrays instead of pointers to strings
  x86: avcodec: Drop silly "_mmx" suffixes from filenames
  x86: avcodec: Drop silly "_sse" suffixes from filenames
  sdp: Include profile-level-id for H264
  utvideoenc: use ff_huff_gen_len_table
  huffman: add ff_huff_gen_len_table
  cllc: simplify/fix swapped data buffer allocation.
  rtpdec_h264: Don't set the pixel format
  h264: Check that the codec isn't null before accessing it
  audio_frame_queue: Define af_queue_log_state before using it

Conflicts:
	libavcodec/audio_frame_queue.c
	libavcodec/h264.c
	libavcodec/huffman.h
	libavcodec/huffyuv.c
	libavcodec/utvideoenc.c
	libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-29 18:04:34 +02:00
Michael Niedermayer
85c830331c lavc: protect calls to frame_thread_encoder by HAVE_THREADS
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-29 11:36:56 +02:00
Paul B Mahol
e4fff08f5b exr: fix decoding ZIP16 and height not multiple of 16
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-29 09:33:41 +00:00
Anton Khirnov
bbabeb56fa Add reminders to update the codec descriptor list with new codec IDs. 2012-08-29 10:47:59 +02:00
Michael Niedermayer
2d5c80b2e8 frame_thread_encoder: pass frame pict type and quality
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-29 04:26:59 +02:00
Michael Niedermayer
097a909ea1 frame_thread_encoder: pass private options
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-29 04:26:36 +02:00
Diego Biurrun
2e6f93a284 x86: Always compile files with functions that are called unconditionally 2012-08-29 00:27:06 +02:00
Diego Biurrun
2f2aa2e542 x86: mpegvideoenc: fix linking with --disable-mmx
The optimized dct_quantize template functions reference optimized
fdct symbols, so these functions must only be enabled if the relevant
optimizations have been enabled by configure.
2012-08-29 00:26:56 +02:00
Diego Biurrun
d39791bf39 x86: mpegvideoenc: Do not abuse HAVE_ variables for template instantiation
This avoids trouble if HAVE_ variables are used elsewhere in the file.
2012-08-29 00:14:52 +02:00
Martin Storsjö
3ad9eac5a0 testprogs: Remove unused includes
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-29 00:23:51 +03:00
Diego Biurrun
bcc45d6348 x86: avcodec: Drop silly "_mmx" suffixes from filenames 2012-08-28 18:37:34 +02:00
Diego Biurrun
efbd04c332 x86: avcodec: Drop silly "_sse" suffixes from filenames 2012-08-28 18:37:33 +02:00
Michael Niedermayer
6d35470063 utvideoenc: use ff_huff_gen_len_table
Avoid code duplication and provide faster and better compression.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-08-28 17:43:25 +02:00
Michael Niedermayer
5a582bd3b5 huffman: add ff_huff_gen_len_table
The function will be used by utvideo as well.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-08-28 17:43:25 +02:00
Reimar Döffinger
998f92d680 cllc: simplify/fix swapped data buffer allocation.
Using the malloc variant avoids pointless memcpy on size
increase and simplifies handling allocation failure.
Also change code to ensure that allocation, bswap and bitstream
reader all use the same size, even when the packet size is odd
for example.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-28 11:37:53 -04:00
Martin Storsjö
6f5b1a2ba4 h264: Check that the codec isn't null before accessing it
This fixes crashes introduced by 2e8f3cbcda, the codec can be null
when called from parsers.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-28 18:15:38 +03:00
Martin Storsjö
0b58c77ed1 audio_frame_queue: Define af_queue_log_state before using it
This fixes building with DEBUG defined after the function was made
static and the prototype removed in d7f9786cbc.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-28 17:32:17 +03:00
Michael Niedermayer
416d2f7a12 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vc1: export some functions
  configure: use HOSTCC_C/O in check_host_cc
  configure: use AS_O setting in check_as
  configure: use LD_O setting in check_ld()
  Revert "dsputil: make {add/put/put_signed}_pixels_clamped() non-static."
  build: Restore dependency of acelp_filters.o on celp_math.o
  celp_math: Replace duplicate ff_dot_productf() by ff_scalarproduct_c()
  celp_math: Move ff_cos() to the only place it is used
  build: Use portable abstraction for linker/hostcc output file syntax
  configure: Fix shared library creation for OpenBSD
  vp56: Don't use DECLARE_ALIGN on a typedef name
  mss1: move code that will be reused by MSS2 decoder into separate file
  mss1: merge decode_intra() and decode_inter()
  avprobe: Get rid of ugly casts in the options table
  vf_hqdn3d: Remove a duplicate inline declaration

Conflicts:
	Makefile
	configure
	ffprobe.c
	libavcodec/Makefile
	libavcodec/amrnbdec.c
	libavcodec/amrwbdec.c
	libavcodec/celp_math.c
	libavcodec/celp_math.h
	libavcodec/dsputil.c
	libavcodec/lsp.c
	libavcodec/mss1.c
	libavcodec/ra288.c
	libavcodec/vc1dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-28 16:28:48 +02:00
Derek Buitenhuis
61e262f6d7 vp56: Don't use DECLARE_ALIGN on a typedef name
Instead, use it on the first member, since by definition, if
any member is aligned, the whole struct must be, in order to
maintain that alignment.

Fixes compilation with some finicky compilers, like a mix of libclang/msvc

Idea for fix from Måns Rullgård.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-28 15:04:16 +02:00
Kostya Shishkov
7627c35a81 vc1: export some functions
This is a preparatory step for the MSS2 decoder which needs to use
the WMV9 decoder to decode some kinds of frames.

From the patch by Alberto Delmás <adelmas@gmail.com>
2012-08-28 07:37:06 +02:00
Michael Niedermayer
fa6c795c3f allcodecs: fix vda order
Found-by: compn
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-28 04:11:14 +02:00
Xidorn Quan
78cca74222 vdadec: implement vda decoder
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-28 04:07:53 +02:00
Mans Rullgard
dbc9f84ea6 Revert "dsputil: make {add/put/put_signed}_pixels_clamped() non-static."
This reverts commit 484a337cd7.

These functions were used in f8bed30 "VC1: merge idct8x8, coeff
adjustments and put_pixels" which was reverted in 18b6a69.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-27 22:24:05 +01:00
Diego Biurrun
3d868fe542 build: Restore dependency of acelp_filters.o on celp_math.o 2012-08-27 21:05:52 +02:00
Diego Biurrun
dafcbfe443 celp_math: Replace duplicate ff_dot_productf() by ff_scalarproduct_c() 2012-08-27 20:37:49 +02:00
Diego Biurrun
5549854335 celp_math: Move ff_cos() to the only place it is used 2012-08-27 20:37:48 +02:00
Derek Buitenhuis
5395d882b4 vp56: Don't use DECLARE_ALIGN on a typedef name
Instead, use it on the first member, since by definition, if
any member is aligned, the whole struct must be, in order to
maintain that alignment.

Fixes compilation with some finicky compilers.

Idea for fix from Måns Rullgård.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-27 14:08:17 -04:00
Reimar Döffinger
237f53ce85 cllc: simplify/fix swapped data buffer allocation.
Using the malloc variant avoids pointless memcpy on size
increase and simplifies handling allocation failure.
Also change code to ensure that allocation, bswap and bitstream
reader all use the same size, even when the packet size is odd
for example.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-08-27 19:00:47 +02:00
Georg Lippitsch
5cc5d9d5f7 dpx: 10 and 12 bit decoding
Rewrite 10 bit dpx decoder to decode into GBRP10 color space
instead of converting to RGB48.
Add 12 bit decoder to decode into GBRP12 color space.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-27 18:31:21 +02:00
Kostya Shishkov
0de4a563e4 mss1: move code that will be reused by MSS2 decoder into separate file 2012-08-27 18:12:10 +02:00
Kostya Shishkov
49df339f4b mss1: merge decode_intra() and decode_inter()
They have most of their code in common.
2012-08-27 18:11:50 +02:00
Michael Niedermayer
4abb88d7e8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vf_hqdn3d: Don't declare the loop variable within the for loop
  huffyuv: update to current coding style
  huffman: update to current coding style
  rtsp: Free the rtpdec context properly
  build: fft: x86: Drop unused YASM-OBJS-FFT- variable

Conflicts:
	libavcodec/huffman.c
	libavcodec/huffyuv.c
	libavcodec/x86/Makefile
	libavfilter/vf_hqdn3d.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-27 16:32:44 +02:00
Luca Barbato
e0f7a9f6e7 huffyuv: update to current coding style 2012-08-27 13:26:58 +02:00
Luca Barbato
f76e47877c huffman: update to current coding style 2012-08-27 13:26:58 +02:00
Diego Biurrun
3f02c533f3 build: fft: x86: Drop unused YASM-OBJS-FFT- variable 2012-08-27 03:10:58 +02:00
Michael Niedermayer
17106a7c90 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  audio_frame_queue: Clean up ff_af_queue_log_state debug function
  dwt: Remove unused code.
  cavs: convert cavsdata.h to a .c file
  cavs: Move inline functions only used in one file out of the header
  cavs: Move data tables used in only one place to that file
  fate: Add a single symbol Ut Video decoder test
  vf_hqdn3d: x86 asm
  vf_hqdn3d: support 16bit colordepth
  avconv: prefer user-forced input framerate when choosing output framerate

Conflicts:
	ffmpeg.c
	libavcodec/audio_frame_queue.c
	libavcodec/dwt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-26 22:40:02 +02:00
Diego Biurrun
d7f9786cbc audio_frame_queue: Clean up ff_af_queue_log_state debug function
The function is debug-only, so only compile it in debug mode.
Make it static as it has no uses outside of the file.
Change av_log() to av_dlog().
2012-08-26 19:45:23 +02:00
Diego Biurrun
1ce5dce454 dwt: Remove unused code. 2012-08-26 14:03:57 +02:00
Mans Rullgard
88386feefd cavs: convert cavsdata.h to a .c file
Defining tables in header files is ugly and prone to duplication.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-08-26 14:03:56 +02:00
Diego Biurrun
a6d9f9e60e cavs: Move inline functions only used in one file out of the header 2012-08-26 14:03:56 +02:00
Diego Biurrun
ef07ac1e12 cavs: Move data tables used in only one place to that file 2012-08-26 14:03:55 +02:00
Paul B Mahol
8f9941b160 avrndec: silence warning about incompatible pointer types
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-26 10:24:42 +00:00
Michael Niedermayer
bfb39023b0 h264: ff_init_cabac_states doesnt use its argument thus remove it
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-26 05:44:46 +02:00
Michael Niedermayer
c684cb29bc Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: fft: remove unused fft_dispatch* functions
  avconv: remove unused variable opt_shortest
  FATE: Add Canopus Lossless tests
  cllc: Pad swapped buffer

Conflicts:
	ffmpeg_opt.c
	tests/ref/fate/cllc-argb
	tests/ref/fate/cllc-rgb

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-26 02:34:24 +02:00
Mans Rullgard
db70730291 x86: fft: remove unused fft_dispatch* functions
These functions are not used since the yasm conversion.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-25 23:58:26 +01:00
Paul B Mahol
65b552cc31 lavc: add some missing .long_name to codec_descriptors[]
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-25 10:53:47 +00:00
Derek Buitenhuis
aa7a565101 cllc: Pad swapped buffer
The bitstream buffer must be padded, or the bitstream reader might
read over the end.

Fixes the following valgrind warning:
    Use of uninitialised value of size 8 at 0x591BAE: cllc_decode_frame (cllc.c:166)

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-24 22:19:21 -04:00
Georg Lippitsch
2a57c9ae8f dpx: 10 and 12 bit encoding
Encode GBRP10 pixel format into 10 bit DPX.
Encode GBRP12 pixel format into 12 bit DPX.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-25 03:55:50 +02:00
Michael Niedermayer
15a0fb58a3 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  utvideodec: Fix single symbol mode decoding
  truespeech: drop useless casts
  libavcodec: drop bogus dependencies from mpc[78] and qdm2
  mpegaudio: move ff_mpa_enwindow to a separate file
  AVOptions: store defaults for INT64 options in int64 union member.

Conflicts:
	libavcodec/Makefile
	libavfilter/af_asyncts.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-24 15:00:39 +02:00
Michael Niedermayer
bec180e112 Merge commit 'a1bcc76e6036e78f25cbb7323c145056cfca9d93'
* commit 'a1bcc76e6036e78f25cbb7323c145056cfca9d93': (21 commits)
  cmdutils: fix a memleak when specifying an option twice.
  x86: mpegvideo: more sensible names for optimization file and init function
  x86: mpegvideoenc: Split optimizations off into a separate file
  dnxhdenc: x86: more sensible names for optimization file and init function
  svq1/svq3: Move common code out of SVQ1 decoder-specific file
  dirac: add Comments and references to the standard
  lavr: x86: optimized 6-channel flt to fltp conversion
  lavr: x86: optimized 2-channel flt to fltp conversion
  lavr: x86: optimized 6-channel flt to s16p conversion
  lavr: x86: optimized 2-channel flt to s16p conversion
  lavr: x86: optimized 6-channel s16 to fltp conversion
  lavr: x86: optimized 2-channel s16 to fltp conversion
  lavr: x86: optimized 6-channel s16 to s16p conversion
  lavr: x86: optimized 2-channel s16 to s16p conversion
  lavr: x86: optimized 2-channel fltp to flt conversion
  lavr: x86: optimized 6-channel fltp to s16 conversion
  lavr: x86: optimized 2-channel fltp to s16 conversion
  lavr: x86: optimized 6-channel s16p to flt conversion
  lavr: x86: optimized 2-channel s16p to flt conversion
  lavr: x86: optimized 6-channel s16p to s16 conversion
  ...

Conflicts:
	libavcodec/dirac.c
	libavcodec/mpegvideo.h
	libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-24 14:30:40 +02:00
Jan Ekström
01cb4c84f5 utvideodec: Fix single symbol mode decoding
Put the zero length check in place of code that was never used
during decoding, as zero-length slices were generally refused
in decode_frame().

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-08-24 13:12:31 +02:00
Nicolas George
de60880543 lavc/dvdsubenc: check the type of rectangles.
Avoid a crash if a text rectangle is provided.
Fix the segfault reported in trac ticket #1661.
2012-08-24 12:12:41 +02:00
Mans Rullgard
081bab5ee3 truespeech: drop useless casts
These values already have the correct types.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-24 10:45:39 +01:00
Mans Rullgard
0c88e7a255 libavcodec: drop bogus dependencies from mpc[78] and qdm2
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-24 10:45:39 +01:00
Mans Rullgard
2e2b8ef8e0 mpegaudio: move ff_mpa_enwindow to a separate file
This table is used only by mpegaudiodsp and mpegaudioenc.  Separating
it allows dropping some dependencies from mpc[78] and qdm2.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-24 10:45:39 +01:00
Anton Khirnov
4d7adec8bd AVOptions: store defaults for INT64 options in int64 union member.
Double does not have enough precision to represent all int64 numbers
exactly.
2012-08-24 11:25:06 +02:00
Diego Biurrun
dc40285427 x86: mpegvideo: more sensible names for optimization file and init function 2012-08-24 02:23:16 +02:00
Diego Biurrun
d211547ddd x86: mpegvideoenc: Split optimizations off into a separate file 2012-08-24 02:23:16 +02:00
Diego Biurrun
26ce9aec03 dnxhdenc: x86: more sensible names for optimization file and init function 2012-08-24 02:23:15 +02:00
Diego Biurrun
f1e06d37c9 svq1/svq3: Move common code out of SVQ1 decoder-specific file 2012-08-24 02:23:15 +02:00
Jordi Ortiz
43da682c87 dirac: add Comments and references to the standard
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-08-24 02:23:14 +02:00
Michael Niedermayer
168ddcd331 mjpeg: fix fliping with emu edges.
Fixes Ticket121

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-23 21:53:10 +02:00
Joseph Artsimovich
628e6d0164 Fix partially hidden macroblocks for 10-bit DNxHD.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-23 20:09:57 +02:00
Georg Lippitsch
15acfa21fc ffv1: more than 8 bit per RGB channel
Add support for GBRP9, GBRP10, GBRP12 and GBRP14 pix formats in ffv1.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-23 19:44:43 +02:00
Michael Niedermayer
2b3b52d519 lagarith: fix alignment on buffers passed into prediction dsp code.
This should fix issues with direct rendering

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-23 19:03:57 +02:00
Michael Niedermayer
599a4e0771 mpeg4audio: dont take the SBR flag too serious.
Fixes Ticket1049

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-23 14:43:12 +02:00
Michael Niedermayer
104f42e694 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  doc/APIchanges: add an entry for codec descriptors.
  vorbisenc: set AVCodecContext.bit_rate to 0
  vorbisenc: fix quality parameter
  FATE: add ALAC encoding tests
  lpc: fix alignment of windowed samples for odd maximum LPC order
  alacenc: use s16p sample format as input
  alacenc: remove unneeded sample_fmt check
  alacenc: fix max_frame_size calculation for the final frame
  adpcm_swf: Use correct sample offsets when using trellis.
  rtmp: support strict rtmp servers
  mjpegdec: support AVRn interlaced
  x86: remove FASTDIV inline asm

Conflicts:
	doc/APIchanges
	libavcodec/mjpegdec.c
	libavcodec/vorbisenc.c
	libavutil/x86/intmath.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-23 14:33:33 +02:00
Justin Ruggles
a0a5fed908 vorbisenc: set AVCodecContext.bit_rate to 0
The Vorbis encoder is always VBR.
2012-08-22 19:58:46 -04:00
Justin Ruggles
890fddd0ea vorbisenc: fix quality parameter
This generates output with bitrates similar to libvorbis for a given quality
value.
2012-08-22 19:58:39 -04:00
Justin Ruggles
4b0e0f31bf lpc: fix alignment of windowed samples for odd maximum LPC order
Fixes crash on x86 due to alignment requirements for w_data in
lpc_apply_welch_window_sse2().
2012-08-22 16:41:50 -04:00
Justin Ruggles
f24cc1b2f1 alacenc: use s16p sample format as input 2012-08-22 16:41:41 -04:00
Justin Ruggles
358078d9bb alacenc: remove unneeded sample_fmt check 2012-08-22 16:41:33 -04:00
Justin Ruggles
ec7a212f9f alacenc: fix max_frame_size calculation for the final frame 2012-08-22 16:41:23 -04:00
Michael Niedermayer
12ad68b7e2 utvideoenc: use dsp.sub_hfyu_median_prediction
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-22 20:30:38 +02:00
Michael Niedermayer
729b2d02af utvideoenc: align mangled buffer starts.
This is essential for fast SIMD accesses.
The same should be done with the predict output.

Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-22 20:30:38 +02:00
Michael Niedermayer
d79c87a697 utvideoenc: drop step
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-22 20:30:38 +02:00
Michael Niedermayer
ba69eb5221 utvideoenc: avoid writing into the input picture.
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-22 20:30:33 +02:00
Michael Niedermayer
f92f4935ac utvideoenc: use ff_generate_len()
19% faster
smaller files
this may also fix possible integer overflows due to previous 32bit useage

Tested with libutvideo and our utvideo decoder, this patch does not change
decoder output in the test

Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-22 19:38:24 +02:00
Justin Ruggles
5d4ef004bf adpcm_swf: Use correct sample offsets when using trellis.
Fixes invalid reads when encoding mono streams when trellis is used.
2012-08-22 12:43:51 -04:00
Michael Niedermayer
ac33016158 mjpegdec: support AVRn interlaced
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-08-22 17:44:43 +02:00
Michael Niedermayer
3f943fe681 huffman/huffyuv: move lorens huffman table generation code to huffman.c/h
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-22 16:52:07 +02:00
Michael Niedermayer
4fced11df7 utvideoenc: optimize and simplify mangle_rgb_planes
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-22 16:49:53 +02:00
Michael Niedermayer
3699960690 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: x86: Only compile mpegvideo optimizations when necessary
  configure: Drop fastdiv option
  build: Make the E-AC-3 encoder select the AC-3 encoder
  fate: flac: Only run tests requiring samples when samples are available

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-22 14:37:03 +02:00
Diego Biurrun
6fa488678f build: x86: Only compile mpegvideo optimizations when necessary 2012-08-22 01:06:33 +02:00
Diego Biurrun
4264a0dd54 build: Make the E-AC-3 encoder select the AC-3 encoder
The E-AC-3 encoder depends on almost all of the code of the AC-3
encoder, so it makes no sense to enable one without the other.
2012-08-22 01:02:17 +02:00
Piotr Bandurski
bc151aee60 avrn: lowercase "name" and expand"long_name"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-21 22:32:31 +02:00
Michael Niedermayer
50df56161f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dirac: use meaningful return values
  flacdec: simplify sample buffer handling
  flacdec: simplify loop in decode_residuals()
  fate: make Ut Video encoder tests use bitexact swscale flags
  build: amrwb: Drop redundant lsp dependency declaration
  fate: fix utvideoenc tests

Conflicts:
	libavcodec/dirac.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-21 16:17:13 +02:00
Jordi Ortiz
72e8d86b19 dirac: use meaningful return values
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-08-21 15:51:52 +02:00
Mans Rullgard
44c56a1617 flacdec: simplify sample buffer handling
Pass pointer to sample buffer instead of channel number to various
functions called from decode_subframe().  Also simplify a few
expressions within this function.
2012-08-21 11:23:13 +01:00
Mans Rullgard
ea98507db0 flacdec: simplify loop in decode_residuals() 2012-08-21 11:23:13 +01:00
Michael Niedermayer
786f06e109 h264: fix variable overflow after a few years of video playback
Found-by: Joakim Plate <elupus@ecce.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-20 22:30:00 +02:00
Derek Buitenhuis
18263698ab utvideoenc: Port to ff_alloc_packet2
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-20 20:55:19 +02:00
Michael Niedermayer
bb3ed3bae6 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fate: Add FATE tests for the Ut Video encoder
  lavc: add Ut Video encoder
  mpegvideo_enc: remove stray duplicate line from 7f9aaa4
  swscale: x86: fix #endif comments in rgb2rgb template file
  avconv: mark more options as expert.
  avconv: split printing "main options" into global and per-file.
  avconv: refactor help printing.

Conflicts:
	Changelog
	ffmpeg_opt.c
	ffserver.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-20 17:31:55 +02:00
Diego Biurrun
deb23777f2 build: amrwb: Drop redundant lsp dependency declaration 2012-08-20 16:21:48 +02:00
Wolfram Gloger
a5a0dedf11 Fix duplicate packet init introduced by 7f9aaa4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-20 14:45:28 +02:00
Jan Ekström
1ab5a78042 lavc: add Ut Video encoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-08-20 11:22:59 +02:00
Anton Khirnov
677e763a55 mpegvideo_enc: remove stray duplicate line from 7f9aaa4 2012-08-20 10:05:49 +02:00
Michael Niedermayer
76c3fff2f3 h264: Workaround invalid MPEG-TS broadcasts
Fixes seeking to the first keyframe
Fixes Ticket1029

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-20 05:47:42 +02:00
Michael Niedermayer
9e5f79ed8a avrndec: add DR1 capability flag
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-20 03:31:41 +02:00
Michael Niedermayer
b1acf5d7a6 AVRn: fix progressive
Fixes Ticket970

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-20 02:50:59 +02:00
Michael Niedermayer
ba2cf854d0 lavc: move AVRn to a seperate decoder.
The special cases in demuxers and decoders are a mess otherwise (and more
would be needed to support it fully)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-20 02:46:09 +02:00
Nicolas George
c28d80f4c9 lavc: avcodec_get_name: return "none" for AV_CODEC_ID_NONE. 2012-08-19 15:26:05 +02:00
Michael Niedermayer
c9fe864472 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vorbisdec: remove some pointless comments
  avprobe: add const to AVCodec pointer
  libavformat: add const to AVCodec pointers
  pthread: add const to AVCodec pointers

Conflicts:
	ffprobe.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-19 14:55:58 +02:00
Mans Rullgard
4855022aa1 vorbisdec: remove some pointless comments
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-19 12:59:58 +01:00
Michael Niedermayer
0de4918f32 rawdec: support AVRn 1:1 raw interlaced mode
Fixes Ticket971

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-18 23:55:59 +02:00
Michael Niedermayer
a21f65b55e elbg: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-18 21:54:52 +02:00
Michael Niedermayer
9018f8c328 elbg: fix assert
It seems the condition was flipped from what was intended

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-18 21:53:32 +02:00
Uoti Urpala
e70730045a h264: vdpau: fix crash with unsupported colorspace
The h264_vdpau decoder crashed if output colorspace was not 8-bit 420.
Add a check to error out instead (current hardware does not support
other colorspaces, so successful decoding is not possible).

Check implemented at a different place by michael, thus blame for bugs goes to michael
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-18 16:36:09 +02:00
Mans Rullgard
11434c9b13 pthread: add const to AVCodec pointers
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-18 14:20:57 +01:00
Michael Niedermayer
6c180b35c4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpegvideo_enc: don't use deprecated avcodec_encode_video().
  cmdutils: refactor -codecs option.
  avconv: make -shortest a per-output file option.
  lavc: add avcodec_descriptor_get_by_name().
  lavc: add const to AVCodec* function parameters.
  swf(dec): replace CODEC_ID with AV_CODEC_ID
  dvenc: don't use deprecated AVCODEC_MAX_AUDIO_FRAME_SIZE
  rtmpdh: Do not generate the same private key every time when using libnettle
  rtp: remove ff_rtp_get_rtcp_file_handle().
  rtsp.c: use ffurl_get_multi_file_handle() instead of ff_rtp_get_rtcp_file_handle()
  avio: add (ff)url_get_multi_file_handle() for getting more than one fd
  h264: vdpau: fix crash with unsupported colorspace
  amrwbdec: Decode the fr_quality bit properly

Conflicts:
	Changelog
	cmdutils.c
	cmdutils_common_opts.h
	doc/ffmpeg.texi
	ffmpeg.c
	ffmpeg.h
	ffmpeg_opt.c
	libavcodec/h264.c
	libavcodec/options.c
	libavcodec/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-18 15:20:32 +02:00
Nicolas George
9467f4eb5d lavc/tscc: use reget_buffer.
The previous code would release the buffer and get it
immediately after, assuming the contents is the same.
2012-08-18 09:52:15 +02:00
Anton Khirnov
7f9aaa499b mpegvideo_enc: don't use deprecated avcodec_encode_video(). 2012-08-18 08:48:30 +02:00
Anton Khirnov
91e59fea30 lavc: add avcodec_descriptor_get_by_name(). 2012-08-18 08:48:30 +02:00
Anton Khirnov
0a0f19b577 lavc: add const to AVCodec* function parameters. 2012-08-18 08:48:30 +02:00
Michael Niedermayer
b5abebe164 acelp_filters: switch to avassert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-18 05:02:08 +02:00
Michael Niedermayer
ceb8773e16 libvpxenc: Fix CQ encoding without a specified bitrate
Also print a warning if neither quality nor bitrate is specified
and use the libvpx default bitrate in this case.

The idea of using the default bitrate is from Luca Barbato
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-17 22:03:02 +02:00
Michael Niedermayer
1ee7a2955f libvpxenc: only force CBR if a bitrate is set
Reviewed-by: James Zern <jzern@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-17 21:56:58 +02:00
Uoti Urpala
2e8f3cbcda h264: vdpau: fix crash with unsupported colorspace
The h264_vdpau decoder crashed if output colorspace was not 8-bit 420.
Add a check to error out instead (current hardware does not support
other colorspaces, so successful decoding is not possible).

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-17 20:08:53 +03:00
Martin Storsjö
ca00a7e809 amrwbdec: Decode the fr_quality bit properly
The way this bit is decoded was accidentally flipped in b70feb405,
leading to warnings "Encountered a bad or corrupted frame" for each
decoded frame.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-17 20:08:40 +03:00
Michael Niedermayer
fa3fde168b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libvpxenc: use the default bitrate if not set
  utvideo: Rename utvideo.c to utvideodec.c
  doc: Fix syntax errors in sample Emacs config
  mjpegdec: more meaningful return values
  configure: clean up Altivec detection
  getopt: Remove an unnecessary define
  rtmp: Use int instead of ssize_t
  getopt: Add missing includes
  rtmp: Add support for receiving incoming streams
  Add missing includes for code relying on external libraries

Conflicts:
	libavcodec/libopenjpegenc.c
	libavcodec/libvpxenc.c
	libavcodec/mjpegdec.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-17 17:06:52 +02:00
Luca Barbato
4aa3d7b3f2 libvpxenc: use the default bitrate if not set
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-08-17 12:47:45 +02:00
Jan Ekström
77f47e3288 utvideo: Rename utvideo.c to utvideodec.c
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-08-17 12:36:55 +02:00
Michael Niedermayer
7e5a622525 escape124: Fix long == 64 assumtation.
Found-by: Nicolas
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-17 07:16:16 +02:00
Michael Niedermayer
3a1ca240d9 ccitt fax: fix some group3 1d files without EOL
Fixes Ticket832

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-17 02:58:41 +02:00
Luca Barbato
0f64cd1e81 mjpegdec: more meaningful return values 2012-08-17 01:29:19 +02:00
Michael Niedermayer
3d7817048c escape124: fix integer overflow leading to excessive memory allocation
Fixes Ticket1629

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 22:28:29 +02:00
Michael Niedermayer
e71df841ee fft-test: switch to new cpu flags API
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 22:04:46 +02:00
Michael Niedermayer
bb46b9a36f vc1dsp_mmx: remove libavutil/internal.h include
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 17:29:29 +02:00
Michael Niedermayer
9bfeaf6f10 simple_idct_mmx: remove libavutil/internal.h include
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 17:28:57 +02:00
Michael Niedermayer
64b23d7dec x86/motion_est_mmx: remove libavutil/internal.h include
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 17:28:37 +02:00
Michael Niedermayer
191ffc7fe7 x86/mlpdsp: remove libavutil/internal.h include
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 17:28:13 +02:00
Michael Niedermayer
501b681d95 lpc_mmx: remove libavutil/internal.h include
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 17:26:41 +02:00
Michael Niedermayer
7cb9f1a8d0 idct_sse2_xvid: remove libavutil/internal.h include
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 17:26:06 +02:00
Michael Niedermayer
75cd9a62f4 libvpxenc: check for odd RC parameter combinations that could crash
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 17:00:32 +02:00
Michael Niedermayer
d472453efd libvpxenc: fix division by zero
Reported-by: thresh
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 17:00:21 +02:00
Michael Niedermayer
c581cb4e4f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Fix even more missing includes after the common.h removal
  build: Factor out rangecoder dependencies to CONFIG_RANGECODER
  build: Factor out error resilience dependencies to CONFIG_ERROR_RESILIENCE
  x86: avcodec: Consistently name all init files
  Add more missing includes after removing the implicit common.h
  Add some more missing includes after removing the implicit common.h
  Don't include common.h from avutil.h
  rtmp: Automatically compute the hash for SWFVerification

Conflicts:
	configure
	doc/APIchanges
	doc/examples/decoding_encoding.c
	libavcodec/Makefile
	libavcodec/assdec.c
	libavcodec/audio_frame_queue.c
	libavcodec/avpacket.c
	libavcodec/dv_profile.c
	libavcodec/dwt.c
	libavcodec/libtheoraenc.c
	libavcodec/rawdec.c
	libavcodec/rv40dsp.c
	libavcodec/tiff.c
	libavcodec/tiffenc.c
	libavcodec/v210dec.h
	libavcodec/vc1dsp.c
	libavcodec/x86/Makefile
	libavfilter/asrc_anullsrc.c
	libavfilter/avfilter.c
	libavfilter/buffer.c
	libavfilter/formats.c
	libavfilter/vf_ass.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_select.c
	libavfilter/video.c
	libavfilter/vsrc_testsrc.c
	libavformat/version.h
	libavutil/audioconvert.c
	libavutil/error.h
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 16:20:30 +02:00
Martin Storsjö
7ebe3962f3 Add missing includes for code relying on external libraries
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-16 16:47:02 +03:00
Martin Storsjö
232e35de2e Fix even more missing includes after the common.h removal
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-16 14:23:59 +03:00
Diego Biurrun
f704a079a1 build: Factor out rangecoder dependencies to CONFIG_RANGECODER
A new hidden config variable is added for the codecs that depend on
the rangecoder parts.
2012-08-16 11:05:39 +02:00
Diego Biurrun
c292f6a24d build: Factor out error resilience dependencies to CONFIG_ERROR_RESILIENCE
A new hidden config variable is added for the codecs that depend on
the error resilience parts.
2012-08-16 11:05:38 +02:00
Diego Biurrun
6961bdface x86: avcodec: Consistently name all init files 2012-08-16 11:05:38 +02:00
Martin Storsjö
33e112847d Add more missing includes after removing the implicit common.h
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-16 10:49:54 +03:00
Philip Langdale
569027ea80 movtextdec: Don't emit errors for normal duration-end packets.
The logic here was off. If the packet size is exactly two, then
it's a well-formed empty subtitle, used to mark the end of the
duration of the previous subtitle.

Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-15 22:03:16 -07:00
Philip Langdale
6057de19b5 srtenc: Add timing-less "subrip" encoder.
Unsurprisingly, if a timing-less subrip decoder is desireable, an
encoder is as well. With this in place, we can move on to remove
the use of the old encoder/decoder with embedded timing and move
all timing handling the (de)muxer where they belong.

Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-15 20:46:54 -07:00
Philip Langdale
6af680fa07 srtdec: Add timing-less "subrip" decoder.
After various discussions, we concluded that, amongst other things,
it made sense to have a separate subrip decoder that did not use
in-band timing information, and rather relied on the ffmpeg level
timing.

As this is 90% the same as the existing srt decoder, it's implemented
in the same file.

Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-15 20:44:23 -07:00
Michael Niedermayer
f0896a6bd9 sp5xdec: fix off by 1 error causing a crash
Fixes Ticket1633

Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 03:15:14 +02:00
Michael Niedermayer
747774ece9 av_get_audio_frame_duration: fix ra144
Fixes Ticket1612

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 02:57:11 +02:00
Michael Niedermayer
6ecf1eb0dd snowdec: add 2 av_asserts to check run validity
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 01:35:10 +02:00
Michael Niedermayer
4a596d19ff snowdec: check log in get_symbol2()
Fixes Ticket1635

Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-16 01:31:19 +02:00
Martin Storsjö
70766c2182 Add some more missing includes after removing the implicit common.h
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-15 23:48:48 +03:00
Michael Niedermayer
0114c571d4 mpegvideo: dont call draw edges on lowres
this crashes otherwise, and can happen from try_decode_frame() in the case of decoding errors
Fixes Ticket1602

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 22:42:30 +02:00
Michael Niedermayer
e8c4022018 h263penc: fix multitheraded encoding
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 22:14:24 +02:00
Michael Niedermayer
e2c54d4d72 mpegvideo_enc: reset mb_x/y before writing the headers
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 22:09:56 +02:00
Michael Niedermayer
717a1876d8 motion_est: switch some asserts to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 21:39:53 +02:00
Martin Storsjö
1d9c2dc89a Don't include common.h from avutil.h
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-15 22:32:06 +03:00
Michael Niedermayer
9e89bc37ed Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Add support for SWFVerification
  api-example: use new video encoding API.
  x86: avcodec: Appropriately name files containing only init functions
  mpegvideo_mmx_template: drop some commented-out cruft
  libavresample: add mix level normalization option
  w32pthreads: Add missing #includes to make header compile standalone
  rtmp: Gracefully ignore _checkbw errors by tracking them
  rtmp: Do not send _checkbw calls as notifications
  prores: interlaced ProRes encoding

Conflicts:
	doc/examples/decoding_encoding.c
	libavcodec/proresenc_kostya.c
	libavcodec/w32pthreads.h
	libavcodec/x86/Makefile
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 15:55:24 +02:00
Anton Khirnov
661454aa28 api-example: use new video encoding API. 2012-08-15 08:45:27 +02:00
Michael Niedermayer
aee7b88cc0 msmpeg4v2: initialize mb_type array
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 05:29:28 +02:00
Michael Niedermayer
fafd844311 mpegvideo: fix MB/MV vissualization on videos that are not mod 16 == 0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 05:03:37 +02:00
Diego Biurrun
29cfdd3767 x86: avcodec: Appropriately name files containing only init functions 2012-08-15 03:24:08 +02:00
Diego Biurrun
be12958937 mpegvideo_mmx_template: drop some commented-out cruft 2012-08-15 03:24:07 +02:00
Michael Niedermayer
f952ae1400 pafdec: fix wrong check for input buffer size.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 02:04:38 +02:00
Michael Niedermayer
456f0c6477 pafdec: fix wrong palette index check.
Fixes Ticket1641

Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-15 01:57:45 +02:00
Diego Biurrun
11928d24fe w32pthreads: Add missing #includes to make header compile standalone 2012-08-14 23:36:56 +02:00
Sebastien Zwickert
02f12de1c2 vda: better frame allocation. 2012-08-14 21:22:20 +02:00
Maksalov Boris
c0f4cf7798 prores: interlaced ProRes encoding
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-08-14 19:28:50 +02:00
Michael Niedermayer
70f0ffa1ed bmv_videodec: fix out of array read
Fixes Ticket1373

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 18:58:49 +02:00
upsuper
068c8ce19c remove duplicated code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 18:39:55 +02:00
Boris Maksalov
c8e186fa7b prores_kostya: implement interlaced encoding.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 16:57:46 +02:00
Boris Maksalov
f0cbab2ac7 prores_kostya: fix incorrect picture_size field.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 16:57:39 +02:00
Michael Niedermayer
7427d1ca4a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  g723.1: simplify scale_vector()
  g723.1: simplify normalize_bits()
  vda: cosmetics: fix Doxygen comment formatting
  vda: better frame allocation
  vda: Merge implementation into one file
  vda: support synchronous decoding
  vda: Reuse the bitstream buffer and reallocate it only if needed
  build: Factor out mpegvideo encoding dependencies to CONFIG_MPEGVIDEOENC
  avprobe: Include libm.h for the log2 fallback
  proresenc: use the edge emulation buffer
  rtmp: handle bytes read reports
  configure: Fix typo in mpeg2video/svq1 decoder dependency declaration
  Use log2(x) instead of log(x) / log(2)
  x86: swscale: fix fragile memory accesses
  x86: swscale: remove disabled code
  x86: yadif: fix asm with suncc
  x86: cabac: allow building with suncc
  x86: mlpdsp: avoid taking address of void
  ARM: intmath: use native-size return types for clipping functions

Conflicts:
	configure
	ffprobe.c
	libavcodec/Makefile
	libavcodec/g723_1.c
	libavcodec/v210dec.h
	libavcodec/vda.h
	libavcodec/vda_h264.c
	libavcodec/x86/cabac.h
	libavfilter/x86/yadif_template.c
	libswscale/x86/rgb2rgb_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 15:34:39 +02:00
Sebastien Zwickert
0e05908c95 vda: fix make checkheaders.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 14:16:14 +02:00
Mans Rullgard
0d230e9312 g723.1: simplify scale_vector()
It is impossible for bits to be 15 here so the special case is
not needed.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-14 12:08:30 +01:00
Mans Rullgard
a4b8fc3a8a g723.1: simplify normalize_bits()
This function is always called with a non-negative argument, so
those special cases are not needed.  In the places the argument
might be zero, the return value for a zero argument does not matter
since it would then be used to scale an array full of zeros.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-14 12:08:29 +01:00
Sebastien Zwickert
063910f54d vda: cosmetics: fix Doxygen comment formatting
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-08-14 12:48:52 +02:00
Sebastien Zwickert
694be29f13 vda: better frame allocation
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-08-14 12:48:46 +02:00
Sebastien Zwickert
dc87ac55ab vda: Merge implementation into one file
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-08-14 12:48:08 +02:00
Sebastien Zwickert
3c37970637 vda: support synchronous decoding
Note that the symbols used to run the hardware decoder in asynchronous mode
have been marked deprecated and will be dropped at a future version bump.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-08-14 12:47:27 +02:00
Sebastien Zwickert
cfc680ab39 vda: Reuse the bitstream buffer and reallocate it only if needed
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-08-14 12:47:15 +02:00
Nicolas George
67a804b9ac dvdsubenc: reindent after recent commit. 2012-08-14 11:58:32 +02:00
Nicolas George
2d3acbfe8c lavc: add const to AVCodecContext.codec_descriptor. 2012-08-14 11:35:30 +02:00
Nicolas George
9bb936a80e lavc: reimplement avcodec_get_name with descriptors. 2012-08-14 11:35:30 +02:00
Nicolas George
17e40236cb dvdsubenc: set frame size in extradata. 2012-08-14 11:17:45 +02:00
Nicolas George
2dedd8f496 dvdsubenc: make it usable for transcoding.
DVD subtitles packets can only encode a single rectangle:
if there are several, copy them into a big transparent one.

DVD subtitles rely on an external 16-colors palette:
use a reasonable default one, stored in the private context,
and encode it into the extradata, as specified by Matroska.
TODO: allow to change the palette with an option.

Each packet can use four colors out of the global palette.
The old logic was to map transparent colors to the color 0
and all other colors to 3, 2, 1, cyclically in descending
frequency order, completely disregarding the original color.

Select the "best" four colors from the global palette, according
to heuristics based on frequency, opacity and brightness, and
arrange them in standard DVD order: background, foreground,
outline, other.
TODO: select the alpha value more finely; see if CHG_COLCON can
allow more than 4 colors per packet.

Reference:
http://dvd.sourceforge.net/dvdinfo/spu.html

With these changes, dvdsubenc can be used to transcode DVB subtitles
and get a very decent result.
2012-08-14 11:17:45 +02:00
Diego Biurrun
ad08dfd594 build: Factor out mpegvideo encoding dependencies to CONFIG_MPEGVIDEOENC
A new hidden config variable is added for the codecs that depend on
the mpegvideo encoding parts.
2012-08-14 10:04:34 +02:00
Sebastien Zwickert
1bfa349a8d vda: merge implementation into one file.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 03:39:31 +02:00
Sebastien Zwickert
7f3dfd2010 vda: support synchronous decoding.
Note that the symbols used to run the hardware decoder in asynchronous mode
has been marked as deprecated and will be dropped at a future version dump.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-14 03:39:23 +02:00
Boris Maksalov
cee03436e6 proresenc: use the edge emulation buffer
Prevents reading past the end of frame buffer.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-08-13 21:04:00 +02:00
Mans Rullgard
d752509b74 Use log2(x) instead of log(x) / log(2)
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 17:59:21 +01:00
Speedy Gonzales
ffda8f0f0f Proresenc: add multithreading support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-13 17:16:47 +02:00
Mans Rullgard
8ec0204ee4 x86: cabac: allow building with suncc
This fixes two issues preventing suncc from building this code.

The undocumented 'a' operand modifier, causing gcc to omit a $ in
front of immediate operands (as required in addresses), is not
supported by suncc.  Luckily, the also undocumented 'c' modifer
has the same effect and is supported.

On some asm statements with a large number of operands, suncc for no
obvious reason fails to correctly substitute some of the operands.
Fortunately, some of the operands in these statements are plain
numbers which can be inserted directly into the code block instead
of passed as operands.

With these changes, the code builds correctly with both gcc and
suncc.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 14:51:52 +01:00
Mans Rullgard
c8252e80eb x86: mlpdsp: avoid taking address of void
This code contains a C array of addresses of labels defined in
inline asm.  To do this, the names must be declared as external
in C.  The declared type does not matter since only the address is
used, and for some reason, the author of the code used the 'void'
type despite taking the address of a void expression being invalid.

Changing the type to char, a reasonable choice since the alignment
of the code labels cannot be known or guaranteed, eliminates gcc
warnings and allows building with suncc.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 14:51:52 +01:00
Michael Niedermayer
603221ebd0 g723_1dec: inline normalize_bits() in scale vector and optimize it.
many branches and cases of scale_vector are irrelevant for the case here
and by inlining they can be reliably removed.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-13 15:18:47 +02:00
Michael Niedermayer
20035fa241 g723_1dec: remove dead code that leaked in from libav
It appears someone thinks this special case can be reached
Well, it cannot, thus not only do we not need to optimize it
we dont need it at all

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-13 15:02:21 +02:00
Michael Niedermayer
84d29df013 g723_1dec: remove unneeded cliping that leaked in from merge from libav
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-13 15:01:45 +02:00
Michael Niedermayer
a9040a1167 g723_1dec: avoid memcpy
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-13 14:53:29 +02:00
Michael Niedermayer
d8c3170c9f Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  g723.1: do not pass large structs by value
  g723.1: do not bounce intermediate values via memory
  g723.1: declare a variable in the block it is used
  g723.1: avoid saving/restoring excitation
  g723.1: avoid unnecessary memcpy() in residual_interp()
  g723.1: make postfilter write directly to output buffer
  g723.1: drop unnecessary variable buf_ptr in formant_postfilter()
  g723.1: make scale_vector() output to a separate buffer
  g723.1: make autocorr_max() work on an arbitrary buffer
  g723.1: do not needlessly use int64_t
  g723.1: use saturating addition functions
  g723.1: optimise scale_vector()
  g723.1: remove useless uses of MUL64()
  g723.1: remove unnecessary argument 'shift' from dot_product()
  g723.1: deobfuscate "(x << 4) - x" to "15 * x"
  celp: optimise ff_celp_lp_synthesis_filter()
  libavutil: add saturating addition functions
  cllc: Implement ARGB support
  cllc: Add support for QRGB
  cllc: Rename some funcs to represent what they actually do
  ...

Conflicts:
	LICENSE
	libavcodec/g723_1.c
	libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-13 14:38:43 +02:00
Paul B Mahol
bd70a52712 paf: prevent invalid write
Closes #1631.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-13 12:27:58 +00:00
Nicolas George
03e8944fc1 lavc: add missing codec descriptors. 2012-08-13 10:45:04 +02:00
Michael Niedermayer
710600077d h264_cavlc: switch forgotten assert to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-13 05:59:44 +02:00
Michael Niedermayer
e9d0ab5717 h264: fix x264 build detection
Fixes Ticket1503

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-13 04:58:15 +02:00
Mans Rullgard
69665bd6f4 g723.1: do not pass large structs by value
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
138914dcd8 g723.1: do not bounce intermediate values via memory
Although a reasonable compiler will probably optimise out the
actual store and load, this operation still implies a truncation
to 16 bits which the compiler will probably not realise is not
necessary here.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
cbcf1b411f g723.1: declare a variable in the block it is used
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
35b533e4de g723.1: avoid saving/restoring excitation
Writing the scaled excitation to a scratch buffer (borrowing the
'audio' array) instead of modifying it in place avoids the need
to save and restore the unscaled values.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
4b728b4712 g723.1: avoid unnecessary memcpy() in residual_interp()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
f645710cf3 g723.1: make postfilter write directly to output buffer
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
1953264331 g723.1: drop unnecessary variable buf_ptr in formant_postfilter()
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
b2af2c4bee g723.1: make scale_vector() output to a separate buffer
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
783da0d696 g723.1: make autocorr_max() work on an arbitrary buffer
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
3716105103 g723.1: do not needlessly use int64_t
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
47c73a73b0 g723.1: use saturating addition functions
Use saturating addition functions instead of 64-bit intermediates
and separate clipping.  This is much faster when dedicated
instructions are available.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
4aca716a53 g723.1: optimise scale_vector()
Firstly, nothing in this function can overflow 32 bits so the use
of a 64-bit type is completely unnecessary.  Secondly, the scale
is either a power of two or 0x7fff.  Doing separate loops for these
cases avoids using multiplications.  Finally, since only the number
of bits, not the actual value, of the maximum value is needed, the
bitwise or of all the values serves the purpose while being faster.

It is worth noting that even if overflow could happen, it was not
handled correctly anyway.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
1eb1f6f281 g723.1: remove useless uses of MUL64()
The operands in both cases are 16-bit so cannot overflow a 32-bit
destination.  In gain_scale() the inputs are reduced to 14-bit,
so even the shift cannot overflow.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
5a43eba956 g723.1: remove unnecessary argument 'shift' from dot_product()
The 'shift' argument is always 1 so there is no need to pass it
explicitly in every call.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
8b0de73464 g723.1: deobfuscate "(x << 4) - x" to "15 * x"
The compiler performs this optimisation.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Mans Rullgard
fddc5b9bea celp: optimise ff_celp_lp_synthesis_filter()
Adding instead of subtracting the products in the loop allows the
compiler to generate more efficient multiply-accumulate instructions
when 16-bit multiply-subtract is not available. ARM has only
multiply-accumulate for 16-bit operands.  In general, if only one
variant exists, it is usually accumulate rather than subtract.

In the same spirit, using the dedicated saturation function enables
use of any special optimised versions of this.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-13 01:03:25 +01:00
Derek Buitenhuis
17c11cef9f cllc: Implement ARGB support
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-12 15:21:15 -04:00
Derek Buitenhuis
ba752dc016 cllc: Implement ARGB support
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-12 15:13:47 -04:00
Derek Buitenhuis
7fda47d53b cllc: Add support for QRGB
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-12 15:07:00 -04:00
Derek Buitenhuis
f4bb38cc26 cllc: Rename some funcs to represent what they actually do
This is in preparation for adding support for other colorspaces
and coding types.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-12 15:07:00 -04:00
Derek Buitenhuis
21d62c4730 cllc: Add support for QRGB
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-12 15:01:19 -04:00
Derek Buitenhuis
4637009e59 cllc: Rename some funcs to represent what they actually do
This is in preparation for adding support for other colorspaces
and coding types.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-12 15:01:19 -04:00
Boris Maksalov
d70231f02d Fix reading past the end of frame buffer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 18:51:23 +02:00
Diego Biurrun
3b9e832e17 x86: Drop silly "_yasm" suffixes from filenames 2012-08-12 17:13:05 +02:00
Michael Niedermayer
da74e883f1 lavc: add codec_descriptor field to AVCodecContext.
This can be used to avoid a time consuming lookup of the
descriptor

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 14:51:19 +02:00
Michael Niedermayer
6fd7bf7b03 sgidec: fix error free end detection.
Fixes Ticket1506
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 05:32:07 +02:00
Michael Niedermayer
39c56ef921 sgidec: correct end pointer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 05:31:14 +02:00
Michael Niedermayer
15e4bd65b1 vc1dec: support debug & FF_DEBUG_PICT_INFO.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 01:21:42 +02:00
Michael Niedermayer
5a49482cc0 dsputil_template: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 16:58:18 +02:00
Michael Niedermayer
f5f3684fb8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavf: simplify is_intra_only() by using codec descriptors.
  lavc: add an intra-only codec property.
  lavc: add codec descriptors.
  lavc: fix mixing CODEC_ID/AV_CODEC_ID in C++ code.
  dict: move struct AVDictionary definition to dict.c
  dict: add av_dict_count()

Conflicts:
	doc/APIchanges
	libavcodec/old_codec_ids.h
	libavformat/utils.c
	libavutil/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 15:01:45 +02:00
Anton Khirnov
51efed152d lavc: add an intra-only codec property. 2012-08-11 11:34:09 +02:00
Anton Khirnov
c223d79945 lavc: add codec descriptors.
They describe properties that are inherent to a codec (as described by
an AVCodecID) without referring to a specific implementation.
2012-08-11 11:32:11 +02:00
Michael Niedermayer
48d20b918c snowdec: increase stack size
Fixes Ticket1632

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 05:32:16 +02:00
Michael Niedermayer
994923ec00 dwt: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 05:31:59 +02:00
Michael Niedermayer
58825a18aa msrle: fix regression causing null ptr dereference
Fixes Ticket1630

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 02:20:06 +02:00
Michael Niedermayer
f9505923a3 cavsdec: check dimensions being valid.
Fixes crash
Fixes Ticket1628

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 02:00:33 +02:00
Anton Khirnov
2ff67c909c lavc: fix mixing CODEC_ID/AV_CODEC_ID in C++ code.
C++ does not allow to mix different enums, so e.g. code comparing
ACodecID with CodecID would fail to compile with gcc.

This very evil hack should fix this problem.
2012-08-10 18:48:40 +02:00
Michael Niedermayer
18b0c39f99 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  g723.1: fix addition overflow
  g723.1: simplify and fix multiplication overflow
  g723.1: deobfuscate an expression
  g723.1: remove unused #includes
  ARM: add missing "cc" clobber in av_clipl_int32_arm()
  rtmp: Factorize the code by adding handle_invoke_error
  rtmp: Factorize the code by adding handle_invoke_status
  rtmp: Factorize the code by adding handle_invoke_result
  libavutil: remove unused av_abort() macro
  ffmenc: replace if/abort with assert()
  libavutil: drop offsetof() fallback definition
  libavutil: drop fallback definitions of INTxx_MIN/MAX
  configure: Check for a sctp struct instead of just the header
  configure: suncc: Add -xc99 to dependency flags, required on Solaris
  doxygen: Fix function parameter names to match the code
  doc: Drop obsolete shared libs cflags hint to workaround Cygwin gcc bugs
  swf: Move shared table out of the header file
  swf: Move swf_audio_codec_tags table to the only place it is used
  fate: add G.723.1 decoder tests

Conflicts:
	configure
	doc/platform.texi
	libavformat/Makefile
	libavutil/arm/intmath.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 16:25:23 +02:00
Michael Niedermayer
d9d0c1ccc3 mjpegdec: support AVRn interlaced
Fixes Ticket1527
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 15:56:14 +02:00
Mans Rullgard
05c36e0e5f g723.1: fix addition overflow
This addition must be done as 64-bit to avoid overflow and for
the subsequent clipping to be meaningful.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-10 12:18:38 +01:00
Mans Rullgard
52aa3015a3 g723.1: simplify and fix multiplication overflow
In 16-bit arithmetic, x * 0xffffc is simply x * -4 with extra overflows,
(and the constant was probably meant to be 0xfffc).  Combined with the
shift, this simplifies to -x >> 1.  Finally, clearing the low two bits
with a 32-bit mask and switching to a 32-bit type allows more efficient
code on 32-bit machines.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-10 12:18:38 +01:00
Mans Rullgard
e141cf2c57 g723.1: deobfuscate an expression
(x << 2) - x is just an optimisation of 3 * x the compiler is
perfectly capable of doing on its own.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-10 12:18:38 +01:00
Mans Rullgard
e2b7c5783d g723.1: remove unused #includes
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-10 12:18:38 +01:00
Michael Niedermayer
633b90ca8d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  motion_est: drop inline from sad_hpel_motion_search()
  motion_est: remove unused macros
  motion_est: remove useless no_motion_search() function
  lagarith: frame multithreading
  doxygen: qdm2: Drop documentation for non-existing function parameters
  build: add HOSTOBJS to SUBDIR_VARS list

Conflicts:
	Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 04:46:13 +02:00
Diego Biurrun
804d7a1aa6 doxygen: Fix function parameter names to match the code 2012-08-09 20:05:55 +02:00
Michael Niedermayer
9f088a1ed4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpegvideo: reduce excessive inlining of mpeg_motion()
  mpegvideo: convert mpegvideo_common.h to a .c file
  build: factor out mpegvideo.o dependencies to CONFIG_MPEGVIDEO
  Move MASK_ABS macro to libavcodec/mathops.h
  x86: move MANGLE() and related macros to libavutil/x86/asm.h
  x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.h
  aacdec: Don't fall back to the old output configuration when no old configuration is present.
  rtmp: Add message tracking
  rtsp: Support mpegts in raw udp packets
  rtsp: Support receiving plain data over UDP without any RTP encapsulation
  rtpdec: Remove an unused include
  rtpenc: Remove an av_abort() that depends on user-supplied data
  vsrc_movie: discourage its use with avconv.
  avconv: allow no input files.
  avconv: prevent invalid reads in transcode_init()
  avconv: rename OutputStream.is_past_recording_time to finished.

Conflicts:
	configure
	doc/filters.texi
	ffmpeg.c
	ffmpeg.h
	libavcodec/Makefile
	libavcodec/aacdec.c
	libavcodec/mpegvideo.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-09 19:31:56 +02:00
Mans Rullgard
0db9eba48c motion_est: drop inline from sad_hpel_motion_search()
This function is only ever called through a function pointer,
so marking it inline makes no sense.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 12:27:49 +01:00
Mans Rullgard
5bf7bc625b motion_est: remove unused macros
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 12:27:49 +01:00
Mans Rullgard
74f82f92a4 motion_est: remove useless no_motion_search() function
At both places this function is called, mb_[xy] == s->mb_[xy]
making the call together with following code equivalent to
simply assigning zeros.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 12:27:49 +01:00
Nicolas George
e13df05fdb dvbsub: reindent after last commit. 2012-08-09 11:22:11 +02:00
Nicolas George
aed032c25b dvbsub: fix encoding of termination packets.
The old code generates a termination packet with the same regions as the
start packet and page_state set to "only what changed"; the result is
that the termination packet is decoded as identical to the start packet.

The new code does as found in some DVB broadcasts: produce a packet with
no regions. This is done by expecting num_rects to be 0 rather than
using a flip-flop. ffmpeg.c is updated accordingly.
2012-08-09 11:03:22 +02:00
Hendrik Leppkes
f9150c8ac0 lagarith: frame multithreading
About 2x speedup going from 1 to 2 threads.
1.7s to 0.85s on foreman CIF.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2012-08-09 10:50:27 +02:00
Diego Biurrun
36a8c43073 doxygen: qdm2: Drop documentation for non-existing function parameters 2012-08-09 03:49:44 +02:00
Mans Rullgard
f69f4036f8 mpegvideo: reduce excessive inlining of mpeg_motion()
The main benefit of inlining this function is from constant
propagation for the 'field_based' argument.  Instead of inlining
all calls, create two versions of the function for field_based
values of 0 and 1.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 01:31:37 +01:00
Mans Rullgard
7a851153d3 mpegvideo: convert mpegvideo_common.h to a .c file
This file defines a single, huge function, MPV_motion(), which
although being declared inline is not actually inlined by the
compiler (for good reason).  There is thus no sense in defining
this function in a header file, resulting in multiple copies of
it in the final library.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 01:31:37 +01:00
Mans Rullgard
18bbca1fd3 build: factor out mpegvideo.o dependencies to CONFIG_MPEGVIDEO
This adds a hidden config variable for the mpegvideo.o dependency
and selects from the codecs which require it.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 01:31:37 +01:00
Paul B Mahol
bd971ddaf4 aasc: 8bit support
Closes #1319.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-09 00:02:05 +00:00
Paul B Mahol
8a57ca5c6a aasc: fix out of array write
Closes #1619.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-09 00:02:05 +00:00
Mans Rullgard
d7a4f8f8b9 Move MASK_ABS macro to libavcodec/mathops.h
This macro is only used in two places, both in libavcodec, so this
is a more sensible place for it.

Two small tweaks to the macro are made:

- removing the trailing semicolon
- dropping unnecessary 'volatile' from the x86 asm

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 00:58:20 +01:00
Mans Rullgard
c318626ce2 x86: rename libavutil/x86_cpu.h to libavutil/x86/asm.h
This puts x86-specific things in the x86/ subdirectory where they
belong.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-09 00:58:20 +01:00
Alex Converse
122d5c526a aacdec: Don't fall back to the old output configuration when no old configuration is present.
Fixes MP4 files where the first frame is broken.
2012-08-08 16:55:41 -07:00
Michael Niedermayer
11a1033c9f Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  build: cosmetics: Reorder some lists in a more logical fashion
  x86: pngdsp: Fix assembly for OS/2
  fate: add test for RTjpeg in nuv with frameheader
  rtmp: send check_bw as notification
  g723_1: clip argument for 15-bit version of normalize_bits()
  g723_1: use all LPC vectors in formant postfilter
  id3v2: Support v2.2 PIC
  avplay: fix build with lavfi disabled.
  avconv: split configuring filter configuration to a separate file.
  avconv: split option parsing into a separate file.
  mpc8: do not leave padding after last frame in buffer for the next decode call
  mpegaudioenc: list supported channel layouts.
  mpegaudiodec: don't print an error on > 1 frame in a packet.
  api-example: update to new audio encoding API.
  configure: add --enable/disable-random option
  doc: cygwin: Update list of FATE package requirements
  build: Remove all installed headers and header directories on uninstall
  build: change checkheaders to use regular build rules
  rtmp: Add a new option 'rtmp_subscribe'
  rtmp: Add support for subscribing live streams
  ...

Conflicts:
	Makefile
	common.mak
	configure
	doc/examples/decoding_encoding.c
	ffmpeg.c
	libavcodec/g723_1.c
	libavcodec/mpegaudiodec.c
	libavcodec/x86/pngdsp.asm
	libavformat/version.h
	library.mak
	tests/fate/video.mak

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-09 00:51:02 +02:00
Dave Yeo
197439c1ef x86: pngdsp: Fix assembly for OS/2
The a.out object format does not allow aligning sections.
On OS/2 LD aligns sections to 16 bytes.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-08-08 15:45:09 +02:00
Kostya Shishkov
e78e6c37ef g723_1: clip argument for 15-bit version of normalize_bits()
It expects maximum value to be 32767 but calculations in scale_vector()
which uses this function can give it ABS(-32768) which leads to wrong
result and thus clipping is needed.
2012-08-08 13:24:19 +02:00
Kostya Shishkov
f86b2f3661 g723_1: use all LPC vectors in formant postfilter
Due to some mistake LPC vector for the first subframe was used for all
subframes instead of their own LPC vectors.
2012-08-08 13:23:22 +02:00
Kostya Shishkov
8f2aa89a5d mpc8: do not leave padding after last frame in buffer for the next decode call 2012-08-08 09:11:38 +02:00
jamal
82e5c5d45b lavc/old_codec_ids: Fix make checkheaders. 2012-08-08 08:02:56 +02:00
Anton Khirnov
94364b7d42 mpegaudioenc: list supported channel layouts. 2012-08-08 07:53:48 +02:00
Anton Khirnov
927e92cdc7 mpegaudiodec: don't print an error on > 1 frame in a packet.
It's a perfectly normal situation, nothing to spam about.
2012-08-08 07:53:48 +02:00
Anton Khirnov
5702c8670e api-example: update to new audio encoding API. 2012-08-08 07:53:47 +02:00
Michael Niedermayer
e40f7f1e01 cavs: fix memleak
Fixes Ticket1335

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-08 01:14:18 +02:00
Paul B Mahol
8654d6c892 libtwolame: fix stupid bug
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-07 22:56:35 +00:00
Michael Niedermayer
bb2f13c19f rename missed CodecID to AVCodecID
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 23:57:21 +02:00
Michael Niedermayer
2fc7c818cb Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: fix build with nasm 2.08
  x86: use nop cpu directives only if supported
  x86: fix rNmp macros with nasm
  build: add trailing / to yasm/nasm -I flags
  x86: use 32-bit source registers with movd instruction
  x86: add colons after labels

Conflicts:
	Makefile
	libavutil/x86/x86inc.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 23:04:55 +02:00
Paul B Mahol
2da5a5ce00 gifdec: return more meaningful error codes
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-07 20:58:20 +00:00
Paul B Mahol
f64288960b gifdec: remove redundant "gif: " from av_dlog()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-07 20:58:20 +00:00
Paul B Mahol
3662f787e7 gifdec: pass avctx to av_log()
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-07 20:58:19 +00:00
Michael Niedermayer
7a72695c05 Merge commit '36ef5369ee9b336febc2c270f8718cec4476cb85'
* commit '36ef5369ee9b336febc2c270f8718cec4476cb85':
  Replace all CODEC_ID_* with AV_CODEC_ID_*
  lavc: add AV prefix to codec ids.

Conflicts:
	doc/APIchanges
	doc/examples/decoding_encoding.c
	doc/examples/muxing.c
	ffmpeg.c
	ffprobe.c
	ffserver.c
	libavcodec/8svx.c
	libavcodec/avcodec.h
	libavcodec/dnxhd_parser.c
	libavcodec/dvdsubdec.c
	libavcodec/error_resilience.c
	libavcodec/h263dec.c
	libavcodec/libvorbisenc.c
	libavcodec/mjpeg_parser.c
	libavcodec/mjpegenc.c
	libavcodec/mpeg12.c
	libavcodec/mpeg4videodec.c
	libavcodec/mpegvideo.c
	libavcodec/mpegvideo_enc.c
	libavcodec/pcm.c
	libavcodec/r210dec.c
	libavcodec/utils.c
	libavcodec/v210dec.c
	libavcodec/version.h
	libavdevice/alsa-audio-dec.c
	libavdevice/bktr.c
	libavdevice/v4l2.c
	libavformat/asfdec.c
	libavformat/asfenc.c
	libavformat/avformat.h
	libavformat/avidec.c
	libavformat/caf.c
	libavformat/electronicarts.c
	libavformat/flacdec.c
	libavformat/flvdec.c
	libavformat/flvenc.c
	libavformat/framecrcenc.c
	libavformat/img2.c
	libavformat/img2dec.c
	libavformat/img2enc.c
	libavformat/ipmovie.c
	libavformat/isom.c
	libavformat/matroska.c
	libavformat/matroskadec.c
	libavformat/matroskaenc.c
	libavformat/mov.c
	libavformat/movenc.c
	libavformat/mp3dec.c
	libavformat/mpeg.c
	libavformat/mpegts.c
	libavformat/mxf.c
	libavformat/mxfdec.c
	libavformat/mxfenc.c
	libavformat/nsvdec.c
	libavformat/nut.c
	libavformat/oggenc.c
	libavformat/pmpdec.c
	libavformat/rawdec.c
	libavformat/rawenc.c
	libavformat/riff.c
	libavformat/sdp.c
	libavformat/utils.c
	libavformat/vocenc.c
	libavformat/wtv.c
	libavformat/xmv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 22:45:46 +02:00
Michael Niedermayer
bc773d0d42 Merge commit 'f5d2c597e99af218b0d4d1cf9737c7e68ee934e4'
* commit 'f5d2c597e99af218b0d4d1cf9737c7e68ee934e4':
  build: fix library installation on cygwin
  mpc8: add a flush function
  mpc8: set packet duration and stream start time instead of tracking frames

Conflicts:
	libavformat/mpc8.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 21:49:00 +02:00
Michael Niedermayer
0049af2628 pnmdec: make ff_pnm_decode_header() more robust
Fixes ticket1321

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 21:06:40 +02:00
Michael Niedermayer
bb7744a45b pnmdec: make pnm_get more robust
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 21:06:40 +02:00
Michael Niedermayer
2f6f2f4f73 mpeg12dec: move checks out of decode picture coding extension.
Fixes out of array reads
Fixes Ticket1330

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 17:59:19 +02:00
Mans Rullgard
2b140a3d09 x86: use 32-bit source registers with movd instruction
yasm tolerates mismatch between movd/movq and source register size,
adjusting the instruction according to the register.  nasm is more
strict.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-07 15:21:20 +01:00
Mans Rullgard
a3df4781f4 x86: add colons after labels
nasm prints a warning if the colon is missing.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-07 15:20:56 +01:00
Anton Khirnov
36ef5369ee Replace all CODEC_ID_* with AV_CODEC_ID_* 2012-08-07 16:00:24 +02:00
Anton Khirnov
104e10fb42 lavc: add AV prefix to codec ids. 2012-08-07 15:56:39 +02:00
Michael Niedermayer
7febc5aa93 arm: fix compile with disable-optimizations on android
Fixes Ticket1241

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 13:31:40 +02:00
Paul B Mahol
011ce89dba avcodec: add bmp parser
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-07 03:15:39 +00:00
Michael Niedermayer
29d1df66ad mpegaudiodec: replace assert() by check under #ifdef DEBUG
The assert can be false with some invalid inputs, the check is
too expensive to always do though for just a warning message.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 04:45:06 +02:00
Michael Niedermayer
3865ec2ace proresenc_kostya: do not attempt to free random things
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 01:11:28 +02:00
Michael Niedermayer
cde4741177 h264: disable assert on current_picture_ptr being null.
It is possible in various error pathes as well as gap handling
that this has already been allocated. Its not clear why that
would be a problem with the current code, thus disable the
assert to avoid common assert failure when asserts are enabled.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-07 00:18:59 +02:00
Michael Niedermayer
7ae473e8a0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  nuv: K&R formatting cosmetics
  build: generalise rules and variable settings for av* programs
  nuv: check RTjpeg header for validity
  Revert "nuv: check per-frame header for validity."
  imc: remove unused field IMCContext.one_div_log2
  imc: fix size of a memset()
  imc: remove empty if() block
  fate: simplify variable setting filter.mak
  lavf: Declare an AVRational struct without a struct literal

Conflicts:
	Makefile
	configure
	libavcodec/nuv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-06 22:22:37 +02:00
Justin Ruggles
fdbeae4490 mpc8: add a flush function
Ensures that the next frame decoded after seeking will be decoded as a
keyframe.
2012-08-06 14:39:21 -04:00
Michael Niedermayer
21eafa18e6 msrle: fix extradata palette handling
Fixes Ticket1273

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-06 19:39:11 +02:00
Diego Biurrun
cf22705e87 nuv: K&R formatting cosmetics 2012-08-06 19:03:33 +02:00
Michael Niedermayer
610c67df37 mpegvideo: remove last_picture_ptr / h264 assert.
This assert is no longer true since h264 error concealment needs
last_picture_ptr to be set.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-06 16:49:49 +02:00
Michael Niedermayer
e6690b6a56 mpegvideo.c: convert some asserts to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-06 16:40:22 +02:00
Michael Niedermayer
3e0b4e32c9 svq1enc: set picture_structure correctly
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-06 16:28:13 +02:00
Michael Niedermayer
f8dbbe5464 mpegvideo_enc: switch some assert to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-06 14:41:16 +02:00
Michael Niedermayer
f72e0d9a9f mpegvideo_enc: remove assert that has become obsolete with the new API
it now just checks uninitialized and unused data.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-06 14:41:16 +02:00
Janne Grunau
859a579e9b nuv: check RTjpeg header for validity
CC: libav-stable@libav.org
2012-08-06 14:34:12 +02:00
Janne Grunau
110d015ad4 Revert "nuv: check per-frame header for validity."
The check is bogus since the nuv frameheader is already skipped
and the (decompressed) RTjpeg header is checked.

This reverts commit f6afacdb3b.

CC: libav-stable@libav.org
2012-08-06 14:33:50 +02:00
Mans Rullgard
b40ea0f41d imc: remove unused field IMCContext.one_div_log2
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-06 10:20:48 +01:00
Mans Rullgard
bc90230b98 imc: fix size of a memset()
IMCContext was changed from an array to a pointer in 66b84e4,
but this memset() was not updated.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-06 10:20:42 +01:00
Mans Rullgard
2b6804328e imc: remove empty if() block
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-06 10:20:11 +01:00
Michael Niedermayer
e6b9903d82 shorten: fix cmd type
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-06 09:24:59 +02:00
Paul B Mahol
9c1619b5fe mpc7: remove duplicated definitions
They are available in mpc.h

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-06 01:33:37 +00:00
Michael Niedermayer
b4780d03d0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: h264_idct: Rename x264_add8x4_idct_sse2 --> h264_add8x4_idct_sse2
  rational: add av_inv_q() returning the inverse of an AVRational
  dpx: Make start offset unsigned
  lavfi: properly signal out-of-memory error in ff_filter_samples
  cosmetics: Fix a few switched periods and linebreaks
  zerocodec: Fix memleak in decode_frame
  zerocodec: Cosmetics

Conflicts:
	ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-05 22:17:02 +02:00
Diego Biurrun
2096857551 x86: h264_idct: Rename x264_add8x4_idct_sse2 --> h264_add8x4_idct_sse2 2012-08-05 21:40:49 +02:00
Paul B Mahol
f5f98727b3 libtwolame MP2 encoding support
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-05 17:06:59 +00:00
Derek Buitenhuis
965efc1673 dpx: Make start offset unsigned
Some corrupted files would end up with a negative offset,
and segfault.

Fixes bug #177.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-05 12:44:30 -04:00
Philip Langdale
50b4dbf65a ass subtitles: Fix valgrind warnings.
We're now running some of this code through valgrind for the first
time, and a few warnings showed up stemming from two problems.

1) The ASS code assumes the subtitle header is null terminated, but
it wasn't, and passing the size down doesn't look like fun, so I
added a terminator

2) The code wasn't freeing all of its state.

Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-05 09:11:11 -07:00
Michael Niedermayer
b11b0e166e libavcodec/options_table: mark flags as also for subtitles
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-05 17:59:12 +02:00
Michael Niedermayer
e776ee8f29 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavr: fix handling of custom mix matrices
  fate: force pix_fmt in lagarith-rgb32 test
  fate: add tests for lagarith lossless video codec.
  ARMv6: vp8: fix stack allocation with Apple's assembler
  ARM: vp56: allow inline asm to build with clang
  fft: 3dnow: fix register name typo in DECL_IMDCT macro
  x86: dct32: port to cpuflags
  x86: build: replace mmx2 by mmxext
  Revert "wmapro: prevent division by zero when sample rate is unspecified"
  wmapro: prevent division by zero when sample rate is unspecified
  lagarith: fix color plane inversion for YUY2 output.
  lagarith: pad RGB buffer by 1 byte.
  dsputil: make add_hfyu_left_prediction_sse4() support unaligned src.

Conflicts:
	doc/APIchanges
	libavcodec/lagarith.c
	libavfilter/x86/gradfun.c
	libavutil/cpu.h
	libavutil/version.h
	libswscale/utils.c
	libswscale/version.h
	libswscale/x86/yuv2rgb.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 23:51:43 +02:00
Derek Buitenhuis
8b8750e061 cosmetics: Fix a few switched periods and linebreaks
Based on a patch by Piotr Bandurski.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-04 16:39:27 -04:00
Michael Niedermayer
f85746509c Merge remote-tracking branch 'dwbuiten/master'
* dwbuiten/master:
  zerocodec: Fix memleak in decode_frame
  zerocodec: Cosmetics

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 21:21:46 +02:00
Philip Langdale
82de3e16a8 movtextenc: Remove dangling reference to movtext.h
This is a reference that leaked in from my future work to
support styling.

Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-04 12:21:09 -07:00
Derek Buitenhuis
616fd4fe5e zerocodec: Fix memleak in decode_frame
If there was a failure inflating, or reinitializing
the zstream, the current frame's buffer would be lost.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-04 15:11:06 -04:00
Derek Buitenhuis
29facc1e91 zerocodec: Cosmetics
Be consistent with error messages and code formatting.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-04 15:11:06 -04:00
Derek Buitenhuis
fcf550c2cb zerocodec: Fix memleak in decode_frame
If there was a failure inflating, or reinitializing
the zstream, the current frame's buffer would be lost.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-04 15:08:52 -04:00
Derek Buitenhuis
d6124d0d14 zerocodec: Cosmetics
Be consistent with error messages and code formatting.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-04 15:08:52 -04:00
Philip Langdale
2daaf77698 movtextenc: 3GPP TS 26.245 Timed Text Encoder.
This change introduces a basic encoder for 3GPP Timed Text subtitles,
also known as TX3G, Quicktime subtitles, or "movtext" in the existing
code.

This initial change doesn't attempt to write styling information,
and just writes the plain text of the subtitles. I intend to add
support for styles eventually, but it's challenging due to a lack
of existing players that support them.

Note that an additional change is required to the mov/mp4 muxer to
write empty subtitle packets to indicate subtitle duration.

Signed-off-by: Philip Langdale <philipl@overt.org>
2012-08-04 12:01:24 -07:00
Michael Niedermayer
ae0312ab2e h264: print num_reorder_frames in debug output
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 15:42:44 +02:00
Mans Rullgard
e6cd698955 ARMv6: vp8: fix stack allocation with Apple's assembler
In the GNU assembler, a relational expression, bizarrely, has the
value -1 if true, whereas in Apple's it is +1.  This patch makes
sure the correct expression is used in both cases.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-04 00:59:14 +01:00
Mans Rullgard
9829a81bcd ARM: vp56: allow inline asm to build with clang
The clang integrated assembler does not support pre-UAL syntax,
while gcc requires pre-UAL syntax for ARM code.  A patch[1] for
clang to support the old syntax as well has been ignored since
January.

This patch chooses the syntax appropriate for each compiler,
allowing both to build the code.  Notably, this change allows
building for iphone with the latest Apple Xcode update.

[1] http://llvm.org/bugs/show_bug.cgi?id=11855

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-04 00:59:14 +01:00
Ronald S. Bultje
4a8143e73c fft: 3dnow: fix register name typo in DECL_IMDCT macro
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2012-08-04 00:16:02 +02:00
Michael Niedermayer
d673a3f4a9 motion_est_template: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 00:06:20 +02:00
Michael Niedermayer
a189475c8e dvdec: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-04 00:05:56 +02:00
Michael Niedermayer
70bcdfb39f g732_1: reduce difference to qatar
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-03 23:50:09 +02:00
Michael Niedermayer
a7acab6cda Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vc1dec: Remove separate scaling function for interlaced field MVs
  vc1dec: Invoke edge_emulation regardless of MV precision
  x86: Use consistent 3dnowext function and macro name suffixes
  g723_1: scale output as supposed for the case with postfilter disabled
  g723_1: increase excitation storage by 4
  g723_1: fix upper bound parameter from inverse maximum autocorrelation
  g723_1: make scale_vector() behave like the reference
  g723_1: fix off-by-one error in normalize_bits()
  g723_1: save/restore excitation with offset to store LPC history
  wmapro: prevent division by zero when sample rate is unspecified
  x86: proresdsp: improve SIGNEXTEND macro comments
  x86: h264dsp: K&R formatting cosmetics
  LICENSE: Document all GPL files

Conflicts:
	libavcodec/g723_1.c
	libavcodec/wmaprodec.c
	libavcodec/x86/h264dsp_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-03 23:13:06 +02:00
Diego Biurrun
0c3ff1982c x86: dct32: port to cpuflags 2012-08-03 22:51:06 +02:00
Diego Biurrun
239fdf1b4a x86: build: replace mmx2 by mmxext
Refactoring mmx2/mmxext YASM code with cpuflags will force renames.
So switching to a consistent naming scheme beforehand is sensible.
The name "mmxext" is more official and widespread and also the name
of the CPU flag, as reported e.g. by the Linux kernel.
2012-08-03 22:51:05 +02:00
Michael Bradshaw
a763cafc0c libopenjpegdec: increase max lowres from 5 to 31
OpenJPEG doesn't have a particular limit

Signed-off-by: Michael Bradshaw <mbradshaw@sorensonmedia.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-03 21:28:21 +02:00
Ronald S. Bultje
66adb7ce1b Revert "wmapro: prevent division by zero when sample rate is unspecified"
This reverts commit 3693608023. It was
already applied; no idea why it didn't error out while re-applying it.
2012-08-03 12:06:38 -07:00
Sean McGovern
3693608023 wmapro: prevent division by zero when sample rate is unspecified
This fixes Bugzilla #327:

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2012-08-03 12:04:47 -07:00
Ronald S. Bultje
7191e1c490 lagarith: fix color plane inversion for YUY2 output. 2012-08-03 11:09:17 -07:00
Ronald S. Bultje
98d0d19208 lagarith: pad RGB buffer by 1 byte.
For left HFYU prediction, we predict from the buffer buf+1 using 8- or
16-byte reads. This means that aligning the buffer by 16 bytes is in
itself not sufficient, because if the width itself is 16- or 8-byte
aligned, the buffer will not be padded, and thus a read of size 16 at
buf+1 will overflow boundaries at the right edge. Padding the buffer by
1 byte is sufficient to not overflow its boundaries.

Fixes bug 342.
2012-08-03 11:09:17 -07:00
Ronald S. Bultje
da6505ad2f dsputil: make add_hfyu_left_prediction_sse4() support unaligned src.
This makes add_hfyu_left_prediction_sse4() handle sources that are not
16-byte aligned in its own function rather than by proxying the call to
add_hfyu_left_prediction_ssse3(). This fixes a crash on Win64, since the
sse4 version clobberes xmm6, but the ssse3 version (which uses MMX regs)
does not restore it, thus leading to XMM clobbering and RSP being off.

Fixes bug 342.
2012-08-03 11:09:14 -07:00
Mashiat Sarker Shakkhar
9cc74c9f6e vc1dec: Remove separate scaling function for interlaced field MVs
The scaling process for obtaining direct MVs from co-located field MVs
is the same for interlaced field and progressive pictures.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-08-03 17:21:54 +02:00
Mashiat Sarker Shakkhar
8379ea5e9f vc1dec: Invoke edge_emulation regardless of MV precision
In VC-1 interlaced field pictures, chroma motion vectors can extend beyond
picture boundary even if luma vectors are bounded. The problem shows up
only for hpel interpolated MVs, and may be due to the way motion vectors
are scaled / cropped.

Thanks to Konstantin Shishkov for suggesting the fix. This fixes
long-known segfaults in MC-VC1.ts from videolan streams archive.

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-08-03 17:21:54 +02:00
Stefano Sabatini
44bd69e9b9 lavc/utils: rename ff_init_buffer_info() pic parameter to frame
The new name is more expressive, given that the frame is not necessarily
a picture but may be an audio frame.
2012-08-03 16:28:18 +02:00
Stefano Sabatini
b99381e8b5 lavc/utils: generalize ff_init_buffer_info() and use it when seems feasible
Extend ff_init_buffer_info() to init audio frames as well as video
frames.

Avoid code duplication.
2012-08-03 16:28:12 +02:00
Clément Bœsch
e39f6a3a5c Fix misc swapped dot and carriage returns in av_log calls. 2012-08-03 14:58:14 +02:00
Piotr Bandurski
a2232e696b cllc: fix typo in the error message
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-03 14:50:26 +02:00
Diego Biurrun
ca844b7be9 x86: Use consistent 3dnowext function and macro name suffixes
Currently there is a wild mix of 3dn2/3dnow2/3dnowext.  Switching to
"3dnowext", which is a more common name of the CPU flag, as reported
e.g. by the Linux kernel, unifies this.
2012-08-03 14:00:47 +02:00
Kostya Shishkov
d3e0766fc0 g723_1: scale output as supposed for the case with postfilter disabled 2012-08-03 07:07:07 +02:00
Kostya Shishkov
94bfdfd6f0 g723_1: increase excitation storage by 4
Fixed codebook mode in 5300 rate may write up to SUBFRAME_LEN + 4 and
that is considered normal by the reference decoder. Without that additional
padding it might overwrite first elements of LPC history.
2012-08-03 07:07:07 +02:00
Kostya Shishkov
802bcdcb2f g723_1: fix upper bound parameter from inverse maximum autocorrelation 2012-08-03 07:07:07 +02:00
Kostya Shishkov
8ddadea171 g723_1: make scale_vector() behave like the reference 2012-08-03 07:07:07 +02:00
Kostya Shishkov
8772d2511a g723_1: fix off-by-one error in normalize_bits() 2012-08-03 07:07:07 +02:00
Kostya Shishkov
7f92db14f9 g723_1: save/restore excitation with offset to store LPC history
The same buffer with saved data is used later in LPC reconstruction, so
it should have some head space for LPC history.
2012-08-03 07:07:06 +02:00
Sean McGovern
3680b24351 wmapro: prevent division by zero when sample rate is unspecified
This fixes Bugzilla #327:

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-08-03 07:07:00 +02:00
Michael Niedermayer
9c6e23f5d2 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  x86: fft: fix imdct_half() for AVX
  rtmppkt: Add missing libavcodec/bytestream.h include.
  rtmp: add functions for reading AMF values
  vc1dec: remove useless #include simple_idct.h
  dct-test: always link with aandcttab.o
  vp8: pack struct VP8ThreadData more efficiently
  x86: remove libmpeg2 mmx(ext) idct functions
  eamad: Use dsputils instead of a custom bswap16_buf
  Canopus Lossless decoder

Conflicts:
	Changelog
	LICENSE
	libavcodec/avcodec.h
	libavcodec/cllc.c
	libavcodec/eamad.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 23:34:01 +02:00
Diego Biurrun
03737412a3 x86: proresdsp: improve SIGNEXTEND macro comments 2012-08-02 22:30:44 +02:00
Ronald S. Bultje
9f14cd91b5 fft: port FFT/IMDCT 3dnow functions to yasm, and disable on x86-64.
64-bit CPUs always have SSE available, thus there is no need to compile
in the 3dnow functions. This results in smaller binaries.
2012-08-02 22:14:40 +02:00
Derek Buitenhuis
19d40c7912 eamad: Use dsputils instead of its own bswap16_buf
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 22:08:15 +02:00
Michael Niedermayer
f92a99dae5 flacenc: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 21:58:17 +02:00
Michael Niedermayer
4d38b838f0 flacdec: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 21:58:03 +02:00
Diego Biurrun
81905088a1 x86: h264dsp: K&R formatting cosmetics 2012-08-02 20:20:21 +02:00
Ronald S. Bultje
c728518b3c x86: fft: fix imdct_half() for AVX
Some calculations were changed in b6a3849 to use mmsize, which was not correct
for the AVX version, which uses INIT_YMM and therefore has mmsize == 32.

Fixes Bug 341.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-08-02 13:40:11 -04:00
Mans Rullgard
cfb1091898 vc1dec: remove useless #include simple_idct.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-02 12:14:52 +01:00
Mans Rullgard
af500c08bb dct-test: always link with aandcttab.o
This allows building dct-test even if aandcttab.o is not pulled in
by any enabled codec.  The DCT with which these tables are used does
not use them directly, so building it without the tables is possible.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-02 12:14:52 +01:00
Mans Rullgard
cf5781fad0 vp8: pack struct VP8ThreadData more efficiently
Reordering the members in this struct reduces the holes required
to maintain alignment.  With this order, the only remaining, and
unavoidable, hole is 3 bytes following left_nnz.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-02 12:14:52 +01:00
Mans Rullgard
ec7c501ed5 x86: remove libmpeg2 mmx(ext) idct functions
These functions are not faster than other mmx implementations on
any hardware I have been able to test on, and they are horribly
inaccurate.  There is thus no reason to ever use them.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-02 12:14:52 +01:00
Michael Niedermayer
8cac86e091 vorbisdec: fix heap buffer overflow.
Found-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 12:22:19 +02:00
Michael Niedermayer
a6aa7e039a mpegaudio_tablegen: try to fix hardcoded tables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 06:10:28 +02:00
Michael Niedermayer
96cb143800 Merge remote-tracking branch 'dwbuiten/master'
* dwbuiten/master:
  Canopus Lossless decoder

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 04:48:47 +02:00
Michael Niedermayer
571572fcdd mp3dec: adjust IMDCT scaling to avoid overflows
Fixes ticket268

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-02 04:21:53 +02:00
Derek Buitenhuis
a675d73d57 eamad: Use dsputils instead of a custom bswap16_buf
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-01 22:07:04 -04:00
Derek Buitenhuis
45eaac02cb Canopus Lossless decoder
At the moment it only does BGR24, but I plan to add the rest after.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-01 22:06:16 -04:00
Derek Buitenhuis
91c86d3cf8 Canopus Lossless decoder
At the moment it only does BGR24, but I plan to add the rest after.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-08-01 22:02:19 -04:00
Michael Niedermayer
ec7ecb8811 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dca: Switch dca_sample_rates to avpriv_ prefix; it is used across libs
  ARM: use =const syntax instead of explicit literal pools
  ARM: use standard syntax for all LDRD/STRD instructions
  fft: port FFT/IMDCT 3dnow functions to yasm, and disable on x86-64.
  dct-test: allow to compile without HAVE_INLINE_ASM.
  x86/dsputilenc: bury inline asm under HAVE_INLINE_ASM.
  dca: Move tables used outside of dcadec.c to a separate file.
  dca: Rename dca.c ---> dcadec.c
  x86: h264dsp: Remove unused variable ff_pb_3_1
  apetag: change a forgotten return to return 0

Conflicts:
	libavcodec/Makefile
	libavcodec/dca.c
	libavcodec/x86/fft_3dn.c
	libavcodec/x86/fft_3dn2.c
	libavcodec/x86/fft_mmx.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-01 23:33:06 +02:00
Paul B Mahol
c2502b7b34 alac: remove redundant "alac: " from log messages
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-01 20:17:25 +00:00
Reimar Döffinger
98b0120668 nuv: Fix playback of RTjpeg from current MythTV,
The previous validity check seems to work only for some
(presumably older) files, in current versions the first bytes
now contain the data size.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-08-01 19:35:58 +02:00
Reimar Döffinger
e1bc0171c0 nuv: check size of buffer before accessing it instead of after.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-08-01 19:35:58 +02:00
Diego Biurrun
19cf7163c1 dca: Switch dca_sample_rates to avpriv_ prefix; it is used across libs 2012-08-01 11:43:31 +02:00
Mans Rullgard
faa788227f ARM: use =const syntax instead of explicit literal pools
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-01 10:32:24 +01:00
Mans Rullgard
998170913c ARM: use standard syntax for all LDRD/STRD instructions
The standard syntax requires two destination registers for
LDRD/STRD instructions.  Some versions of the GNU assembler
allow using only one with the second implicit, others are
more strict.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-01 10:32:24 +01:00
Nicolas George
6eee9f5596 8svx: ensure that packet size is multiple of channels.
Fix an assert failure with packets of invalid size.
2012-08-01 10:29:10 +02:00
Ronald S. Bultje
b6a3849adb fft: port FFT/IMDCT 3dnow functions to yasm, and disable on x86-64.
64-bit CPUs always have SSE available, thus there is no need to compile
in the 3dnow functions. This results in smaller binaries.
2012-07-31 21:20:47 -07:00
Ronald S. Bultje
ddbe71b44f dct-test: allow to compile without HAVE_INLINE_ASM. 2012-07-31 20:30:29 -07:00
Ronald S. Bultje
53dfaedc01 x86/dsputilenc: bury inline asm under HAVE_INLINE_ASM. 2012-07-31 20:28:52 -07:00
Paul B Mahol
296bcdd2a7 paf: use reget_bufer() instead of get_buffer()
Pallete is written to frame->data[1] only if it changes.
This fixes PAL8->PAL8 transcoding.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-08-01 03:16:55 +00:00
Michael Niedermayer
b0c51bbcd1 h264_mc_template: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-01 04:19:46 +02:00
Michael Niedermayer
38d1c5a4cc g722enc: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-01 04:19:27 +02:00
Diego Biurrun
9e4bca16f8 dca: Move tables used outside of dcadec.c to a separate file. 2012-08-01 00:17:17 +02:00
Diego Biurrun
13a79cf84e dca: Rename dca.c ---> dcadec.c
This will allow adding dca.c with tables used from other files.
2012-08-01 00:17:16 +02:00
Diego Biurrun
6376a3ad24 x86: h264dsp: Remove unused variable ff_pb_3_1 2012-08-01 00:17:16 +02:00
Michael Niedermayer
d1dad7c824 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpc8: return more meaningful error codes.
  mpc: return more meaningful error codes.
  wv,mpc8: don't return apetag data in packets.
  rtmp: do not warn about receiving metadata packets
  x86: h264dsp: Adjust YASM #ifdefs
  x86: yadif: Mark mmxext optimizations as such
  h264: convert loop filter strength dsp function to yasm.
  Improve descriptiveness of a number of codec and container long names

Conflicts:
	libavcodec/flvdec.c
	libavcodec/libopenjpegdec.c
	libavformat/apetag.c
	libavformat/mp3dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-31 22:41:00 +02:00
Nicolas George
d2ca5dd0f3 loco: fix return value.
The return value was the number of bytes left,
it is supposed to be the number of bytes used.
2012-07-31 17:25:42 +02:00
Nicolas George
91ec1c6cc3 loco: take decode overflow into account.
Commit 2bf0982 introduced an overflow check in loco_decode_plane,
but the error code is never taken into account, leading to
completely idiotic return values.
2012-07-31 17:25:36 +02:00
Nicolas George
b2814b034e sp5xdec: sanitize return value.
i is the decoded size of a recoded packet, which is larger
than the original packet. Assume that if decoding succeeded,
all the packet was used.
2012-07-31 17:23:32 +02:00
Nicolas George
7a539e67f4 8svx: unify mono and stereo code paths. 2012-07-31 17:23:31 +02:00
Nicolas George
5caea648d4 8svx: remove useless rounding code.
samples_size and samples_idx are supposed to be multiple of
channels at all time. If they are, the division is exact;
if they are not, something is very wrong in the code.
2012-07-31 17:23:31 +02:00
Nicolas George
1c98781837 8svx: use a more direct condition.
esc->table was inited based on codec->id: re-testing codec->id
is code duplication and can lead to inconsistencies.
2012-07-31 17:23:31 +02:00
Nicolas George
9009fa6de4 movtextdec: fix return value for too small packets. 2012-07-31 17:23:31 +02:00
Nicolas George
3d5dc7d87d mmvideo: count preamble size in return value.
MM_PREAMBLE_SIZE is subtracted from buf_size almost immediately.
The original size is still in avpkt->size.
2012-07-31 17:22:23 +02:00
Nicolas George
cc7eff1fa0 vc1dec: count ENDOFSEQ code in return value. 2012-07-31 17:17:38 +02:00
Diego Biurrun
8728b381cb x86: h264dsp: Adjust YASM #ifdefs
This fixes compilation with YASM disabled.
2012-07-31 13:54:07 +02:00
Stefano Sabatini
23fc4dd6e7 lavc: add channels field to AVFrame
This is required otherwise it is not always possible to guess the number
of channels from the layout, for example if the channel layout is
unknown.
2012-07-31 13:21:10 +02:00
Ronald S. Bultje
b829b4ce29 h264: convert loop filter strength dsp function to yasm.
This completes the conversion of h264dsp to yasm; note that h264 also
uses some dsputil functions, most notably qpel. Performance-wise, the
yasm-version is ~10 cycles faster (182->172) on x86-64, and ~8 cycles
faster (201->193) on x86-32.
2012-07-30 19:39:47 -07:00
Michael Niedermayer
3b5ba60aa7 vc1dec: fix handling of max_coded dimensions
Fixes Ticket1502

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-31 03:00:35 +02:00
Michael Niedermayer
30c8573dc7 mpeg4videoenc: ensure SAR is within the supported range
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-31 01:57:18 +02:00
Michael Niedermayer
b5da7d4c1a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avformat: Drop pointless "format" from container long names
  swscale: bury one more piece of inline asm under HAVE_INLINE_ASM.
  wv: K&R formatting cosmetics
  configure: Add missing descriptions to help output
  h264_ps: declare array of colorspace strings on its own line.
  fate: amix: specify f32 sample format for comparison
  tiny_psnr: support 32-bit float samples
  eamad/eatgq/eatqi: call special EA IDCT directly
  eamad: remove use of MpegEncContext
  mpegvideo: remove unnecessary inclusions of faandct.h
  af_asyncts: avoid overflow in out_size with large delta values
  af_asyncts: add first_pts option

Conflicts:
	configure
	libavcodec/eamad.c
	libavcodec/h264_ps.c
	libavformat/crcenc.c
	libavformat/ffmdec.c
	libavformat/ffmenc.c
	libavformat/framecrcenc.c
	libavformat/md5enc.c
	libavformat/nutdec.c
	libavformat/rawenc.c
	libavformat/yuv4mpeg.c
	tests/tiny_psnr.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-30 23:28:31 +02:00
Diego Biurrun
0177b7d23a Improve descriptiveness of a number of codec and container long names 2012-07-30 20:46:55 +02:00
jamal
938e4470ae options: Fix warning about incompatible pointer type
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-30 03:48:46 +02:00
Ronald S. Bultje
be391fb6df h264_ps: declare array of colorspace strings on its own line. 2012-07-29 14:53:42 -07:00
Mans Rullgard
f3eb008343 eamad/eatgq/eatqi: call special EA IDCT directly
These decoders use a special non-MPEG2 IDCT.  Call it directly
instead of going through dsputil.  There is never any reason
to use a regular IDCT with these decoders or to use the EA IDCT
with other codecs.

This also fixes the bizarre situation of eamad and eatqi decoding
incorrectly if eatgq is disabled.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-29 21:30:57 +01:00
Mans Rullgard
591766a3a9 eamad: remove use of MpegEncContext
There is no sense in pulling in this monster struct just for
a handful of fields.  The code does not call any functions
expecting an MpegEncContext.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-29 21:30:47 +01:00
Mans Rullgard
87cf481aa8 mpegvideo: remove unnecessary inclusions of faandct.h
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-29 21:28:45 +01:00
Michael Niedermayer
72dabdfc58 aacenc: new default cutoff
Improves subjective quality

Formula and testing by: kamedo2 <fujisakihir90@yahoo.co.jp>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-29 22:02:46 +02:00
Nicolas George
5c81a9ff55 libx264: list possible profiles.
The values are listed if setting them fails.
Using "-profile help" or "-profile list" have that effect.
Similar to 3aba391.
Suggested by "rogerdpack" in trac ticket #1529.
2012-07-29 16:13:07 +02:00
Michael Niedermayer
706bd8ea19 Merge remote-tracking branch 'qatar/master'
* qatar/master: (35 commits)
  h264_idct_10bit: port x86 assembly to cpuflags.
  x86inc: clip num_args to 7 on x86-32.
  x86inc: sync to latest version from x264.
  fft: rename "z" to "zc" to prevent name collision.
  wv: return meaningful error codes.
  wv: return AVERROR_EOF on EOF, not EIO.
  mp3dec: forward errors for av_get_packet().
  mp3dec: remove a pointless local variable.
  mp3dec: remove commented out cruft.
  lavfi: bump minor to mark stabilizing the ABI.
  FATE: add tests for yadif.
  FATE: add a test for delogo video filter.
  FATE: add a test for amix audio filter.
  audiogen: allow specifying random seed as a commandline parameter.
  vc1dec: Override invalid macroblock quantizer
  vc1: avoid reading beyond the last line in vc1_draw_sprites()
  vc1dec: check that coded slice positions and interlacing match.
  vc1dec: Do not ignore ff_vc1_parse_frame_header_adv return value
  configure: Move parts that should not be user-selectable to CONFIG_EXTRA
  lavf: remove commented out cruft in avformat_find_stream_info()
  ...

Conflicts:
	Makefile
	configure
	libavcodec/vc1dec.c
	libavcodec/x86/h264_deblock.asm
	libavcodec/x86/h264_deblock_10bit.asm
	libavcodec/x86/h264dsp_mmx.c
	libavfilter/version.h
	libavformat/mp3dec.c
	libavformat/utils.c
	libavformat/wv.c
	libavutil/x86/x86inc.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-29 02:16:26 +02:00
Ronald S. Bultje
c83f44dba1 h264_idct_10bit: port x86 assembly to cpuflags. 2012-07-28 08:29:45 -07:00
Ronald S. Bultje
b3c5ae5607 fft: rename "z" to "zc" to prevent name collision.
Without this, cglobal will expand "z" to "zh" to access the high byte
in a register's word, which causes a name collision with the ZH(x) macro
further up in this file.
2012-07-28 08:29:44 -07:00
Michael Niedermayer
45838561f2 vc1dec: Override invalid macroblock quantizer
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-07-28 14:13:22 +02:00
Michael Niedermayer
2bf369b60c vc1: avoid reading beyond the last line in vc1_draw_sprites()
Fixes overread

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-07-28 13:35:12 +02:00
Michael Niedermayer
1100acbab2 vc1dec: check that coded slice positions and interlacing match.
This fixes out of array writes

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-07-28 13:34:05 +02:00
Michael Niedermayer
0aa907cfb1 vc1dec: Do not ignore ff_vc1_parse_frame_header_adv return value
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-07-28 13:34:05 +02:00
Michael Niedermayer
a2f91e7bcd mpegaudiodec: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-28 05:31:27 +02:00
Ronald S. Bultje
4d777eedfd vp3: don't compile mmx IDCT functions on x86-64.
64-bit CPUs always have SSE2, and a SSE2 version exists, thus the MMX
version will never be used.
2012-07-27 20:12:30 -07:00
Ronald S. Bultje
a5bbb1242c h264_loopfilter: port x86 simd to cpuflags. 2012-07-27 20:12:11 -07:00
jamal
64c53fa16a dxva2: Fix some warnings about incompatible pointer type
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-28 03:28:46 +02:00
Ronald S. Bultje
d07ff3cd5a h264_chromamc_10bit: port x86 simd to cpuflags. 2012-07-27 17:35:49 -07:00
Ronald S. Bultje
4a26fdd852 vp3: port x86 SIMD to cpuflags. 2012-07-27 17:35:49 -07:00
Michael Niedermayer
0fa352623d dvdsubenc: switch to av_assert
we use av_assert0() because the previous code unconditionally
enabled the assert.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-28 01:18:04 +02:00
Ronald S. Bultje
76888c64b0 rv34: port x86 SIMD to cpuflags. 2012-07-27 15:13:26 -07:00
Michael Niedermayer
c6963a220d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  proresdsp: port x86 assembly to cpuflags.
  lavr: x86: improve non-SSE4 version of S16_TO_S32_SX macro
  lavfi: better channel layout negotiation
  alac: check for truncated packets
  alac: reverse lpc coeff order, simplify filter
  lavr: add x86-optimized mixing functions
  x86: add support for fmaddps fma4 instruction with abstraction to avx/sse
  tscc2: fix typo in array index
  build: use COMPILE template for HOSTOBJS
  build: do full flag handling for all compiler-type tools
  eval: fix printing of NaN in eval fate test.
  build: Rename aandct component to more descriptive aandcttables
  mpegaudio: bury inline asm under HAVE_INLINE_ASM.
  x86inc: automatically insert vzeroupper for YMM functions.
  rtmp: Check the buffer length of ping packets
  rtmp: Allow having more unknown data at the end of a chunk size packet without failing
  rtmp: Prevent reading outside of an allocate buffer when receiving server bandwidth packets

Conflicts:
	Makefile
	configure
	libavcodec/x86/proresdsp.asm
	libavutil/eval.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-27 23:42:19 +02:00
Ronald S. Bultje
158744a4cd vp56: only compile MMX SIMD on x86-32.
All x86-64 CPUs have SSE2, so the MMX version will never be used. This
leads to smaller binaries.
2012-07-27 14:40:27 -07:00
Ronald S. Bultje
2734ba787b vp56: port x86 simd to cpuflags. 2012-07-27 14:39:07 -07:00
Ronald S. Bultje
5361e10a5e proresdsp: port x86 assembly to cpuflags. 2012-07-27 11:43:06 -07:00
Justin Ruggles
81f548de57 alac: check for truncated packets
This will give a clearer error message when the error is caused by a
truncated packet.
2012-07-27 13:52:20 -04:00
Justin Ruggles
fb57e913e1 alac: reverse lpc coeff order, simplify filter
Reversing the lpc coefficient order simplifies indexing in the filter.
2012-07-27 13:52:19 -04:00
jamal
52a62f9085 dwt: Fix several warnings about incompatible pointer type
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-27 19:36:17 +02:00
Matthieu Bouron
789f8cb03a avutil: support 50 and 60 frame rates in timecode api
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-27 13:41:58 +02:00
Michael Niedermayer
a2cd13f04f zmbv: Fix warning about discarded qualifier
Based on patch by: jamal <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-27 12:43:15 +02:00
jamal
cb40d36074 ffv1: Fix warnings about incompatible pointer type and discarded qualifiers
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-27 12:27:21 +02:00
Kostya Shishkov
0cf7d849ff tscc2: fix typo in array index 2012-07-27 07:34:38 +02:00
Diego Biurrun
8784959234 build: Rename aandct component to more descriptive aandcttables 2012-07-26 23:35:21 +02:00
Ronald S. Bultje
bde73f28af mpegaudio: bury inline asm under HAVE_INLINE_ASM. 2012-07-26 13:43:16 -07:00
Ronald S. Bultje
30b45d9c38 x86inc: automatically insert vzeroupper for YMM functions. 2012-07-26 13:43:16 -07:00
Clément Bœsch
316f8db2c2 SubViewer demuxer and decoder. 2012-07-26 22:22:54 +02:00
Clément Bœsch
2755abff3e lavc/rt: small wording fix in a comment. 2012-07-26 22:22:49 +02:00
Michael Niedermayer
7333798c85 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libopenjpeg: support YUV and deep RGB pixel formats
  Fix typo in v410 decoder.
  vf_yadif: unset cur_buf on the input link.
  vf_overlay: ensure the overlay frame does not get leaked.
  vf_overlay: prevent premature freeing of cur_buf
  Support urlencoded http authentication credentials
  rtmp: Return an error when the client bandwidth is incorrect
  rtmp: Return proper error code in handle_server_bw
  rtmp: Return proper error code in handle_client_bw
  rtmp: Return proper error codes in handle_chunk_size
  lavr: x86: add missing vzeroupper in ff_mix_1_to_2_fltp_flt()
  vp8: Replace x*155/100 by x*101581>>16.
  vp3: don't use calls to inline asm in yasm code.
  x86/dsputil: put inline asm under HAVE_INLINE_ASM.
  dsputil_mmx: fix incorrect assembly code
  rtmp: Factorize the code by adding handle_invoke
  rtmp: Factorize the code by adding handle_chunk_size
  rtmp: Factorize the code by adding handle_ping
  rtmp: Factorize the code by adding handle_client_bw
  rtmp: Factorize the code by adding handle_server_bw

Conflicts:
	libavcodec/libopenjpegdec.c
	libavcodec/x86/dsputil_mmx.c
	libavfilter/vf_overlay.c
	libavformat/Makefile
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-26 21:37:15 +02:00
Michael Niedermayer
e15e5328a7 mpc8: Initialize AVFrame properly
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-26 17:45:44 +02:00
Michael Niedermayer
5938b4d398 mpc7: Initialize AVFrame properly
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-26 17:42:42 +02:00
Michael Niedermayer
506ffa793f h264_cabac: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-26 16:33:39 +02:00
Michael Niedermayer
7a4e30f3b6 h264_cabac: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-26 16:33:17 +02:00
Michael Bradshaw
44dc9c6af0 libopenjpeg: support YUV and deep RGB pixel formats
Based on FFmpeg version from
commit 3275981207

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-26 10:20:04 +02:00
Carl Eugen Hoyos
92566540c3 Fix typo in v410 decoder.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-07-26 10:08:49 +02:00
Michael Niedermayer
f7d4e26c6a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Add a new option 'rtmp_pageurl'
  doc: Update the description of the rtmp_tcurl option
  rtmp: Make the description of the rtmp_tcurl option more generic
  libfdk-aacenc: add LATM/LOAS encapsulation support
  sctp: add port missing error message
  tcp: add port missing error message
  avfilter: Fix printf format string conversion specifier

Conflicts:
	libavcodec/version.h
	libavfilter/avfilter.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 22:00:06 +02:00
Michael Niedermayer
9746f87f15 libvpxenc: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 21:35:48 +02:00
Michael Niedermayer
aee675a326 intrax8: asserts cleanup
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 21:35:30 +02:00
Ronald S. Bultje
48098788c2 vp8: Replace x*155/100 by x*101581>>16.
Idea stolen from webp (by Pascal Massimino) - because it's Cool.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-25 14:37:03 -04:00
Ronald S. Bultje
a1878a88a1 vp3: don't use calls to inline asm in yasm code.
Mixing yasm and inline asm is a bad idea, since if either yasm or inline
asm is not supported by your toolchain, all of the asm stops working.
Thus, better to use either one or the other alone.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-25 14:24:30 -04:00
Ronald S. Bultje
79195ce565 x86/dsputil: put inline asm under HAVE_INLINE_ASM.
This allows compiling with compilers that don't support gcc-style
inline assembly.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-25 14:24:27 -04:00
Yang Wang
845e92fd6a dsputil_mmx: fix incorrect assembly code
In ff_put_pixels_clamped_mmx(), there are two assembly code blocks.
In the first block (in the unrolled loop), the instructions
"movq 8%3, %%mm1 \n\t", and so forth, have problems.

From above instruction, it is clear what the programmer wants: a load from
p + 8. But this assembly code doesn’t guarantee that. It only works if the
compiler puts p in a register to produce an instruction like this:
"movq 8(%edi), %mm1". During compiler optimization, it is possible that the
compiler will be able to constant propagate into p. Suppose p = &x[10000].
Then operand 3 can become 10000(%edi), where %edi holds &x. And the instruction
becomes "movq 810000(%edx)". That is, it will stride by 810000 instead of 8.

This will cause a segmentation fault.

This error was fixed in the second block of the assembly code, but not in
the unrolled loop.

How to reproduce:
    This error is exposed when we build using Intel C++ Compiler, with
    IPO+PGO optimization enabled. Crashed when decoding an MJPEG video.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-25 14:22:18 -04:00
Kieran Kunhya
160a27c590 libfdk-aacenc: add LATM/LOAS encapsulation support
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-25 20:32:33 +03:00
Carl Eugen Hoyos
20e88d8618 Fix avui stream-copy.
The native decoder and MPlayer's binary decoder only need the
APRG atom, QuickTime at least requires also the ARES atom and
four additional 0 bytes padding at the end of stsd.
2012-07-25 09:26:17 +02:00
Michael Niedermayer
72743aef03 imgconvert: Implement avcodec_find_best_pix_fmt_of_list()
The old avcodec_find_best_pix_fmt() was insufficient due to 64 pix_fmt limit.
In ffmpeg this problem has been solved long ago through avcodec_find_best_pix_fmt2()
Today libav has added a incompatible modified version of avcodec_find_best_pix_fmt2()
under the same name, thus again breaking ABI/API ...

The avcodec_find_best_pix_fmt_of_list() added in this commit here makes the libav
API available to ffmpeg users too.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 01:25:28 +02:00
Michael Bradshaw
043c75a989 libopenjpegenc: set numresolution max to INT_MAX
OpenJPEG doesn't have a max lowres limit, so don't enforce an arbitrary one.

Signed-off-by: Michael Bradshaw <mbradshaw@sorensonmedia.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-25 00:29:34 +02:00
Michael Niedermayer
93342de1d8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Add credit/copyright to librtmp authors for parts of the RTMPE code
  rtmp: Move the CONFIG_ condition into the if conditions
  aac: Mention abbreviation as well in long_name
  build: Skip compiling rtmpdh.h if ffrtmpcrypt protocol is not enabled
  doc: Add Git configuration section
  configure: Add a dependency on https for rtmpts
  rtp: Only choose static payload types if the sample rate and channels are right

Conflicts:
	doc/git-howto.texi
	libavformat/rtmpproto.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 21:15:57 +02:00
Michael Niedermayer
0e1925ddc4 iffdec: Fix integer overflow.
Found-by: durandal_1707
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 05:17:36 +02:00
Michael Niedermayer
22ce78a95e vc1dec: dont apply the loop filter on fields
Fixes read of uninitialized memory

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 04:55:13 +02:00
Michael Niedermayer
697edcc12a vc1dec: dont attempt error concealment on field pictures.
This is not implemented and doesnt work.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 04:12:18 +02:00
Michael Niedermayer
2e346bdaba ec: print picture type with concealment error message.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 04:12:18 +02:00
Diego Biurrun
65d94f63ca aac: Mention abbreviation as well in long_name
Most people know the codec as "AAC" and not "Advanced Audio Coding".
2012-07-24 02:37:49 +02:00
yang
6a2bad2c4f dsputil_mmx: fix incorrect assembly code
In file libavcodec/x86/dsputil_mmx.c, function ff_put_pixels_clamped_mmx(), there are two assembly code blocks. In the first block (in the unrolled loop), the instructions "movq 8%3, %%mm1 \n\t" etc have problem.
For above instruction, it is clear what the programmer wants: a load from p + 8. But this assembly code doesn’t guarantee that. It only works if the compiler puts p in a register to produce an instruction like this: “movq 8(%edi), %mm1”. During compiler optimization, it is possible that the compiler will be able to constant propagate into p. Suppose p = &x[10000]. Then operand 3 can become 10000(%edi), where %edi holds &x. And the instruction becomes “movq 810000(%edx)”. That is, it will stride by 810000 instead of 8.
This will cause the segmentation fault.
This error was fixed in the second block of the assembly code, but not in the unrolled loop.

How to reproduce:
This error is exposed when we build the ffmpeg using Intel C++ Compiler, IPO+PGO optimization. The ffmpeg was crashed when decoding a mjpeg video.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-24 00:55:05 +02:00
Michael Niedermayer
5a9fa84585 cavsdec: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 23:54:13 +02:00
Michael Niedermayer
bb1e0e80b0 libavcodec/bitstream: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 23:54:13 +02:00
Carl Eugen Hoyos
d147aedb6b Fix typo in v410 decoder. 2012-07-23 23:44:13 +02:00
Paul B Mahol
c9a96ec3c7 cosmetics: iff: fix typo
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-23 21:00:17 +00:00
Michael Niedermayer
6d4c97bb85 fate: enable fate-vc1_sa10143
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 22:12:12 +02:00
Michael Niedermayer
2cb4d51654 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  v410dec: Implement explode mode support
  zerocodec: fix direct rendering.
  wav: init st to NULL to avoid a false-positive warning.
  wavpack: set bits_per_raw_sample for S32 samples to properly identify 24-bit
  h264: refactor NAL decode loop
  RTMPTE protocol support
  RTMPE protocol support
  rtmp: Add ff_rtmp_calc_digest_pos()
  rtmp: Rename rtmp_calc_digest to ff_rtmp_calc_digest and make it global
  swscale: add missing HAVE_INLINE_ASM check.
  lavfi: place x86 inline assembly under HAVE_INLINE_ASM.
  vc1: Add a test for interlaced field pictures
  swscale: Mark all init functions as av_cold
  swscale: x86: Drop pointless _mmx suffix from filenames
  lavf: use conditional notation for default codec in muxer declarations.
  swscale: place inline assembly bilinear scaler under HAVE_INLINE_ASM.
  dsputil: ppc: cosmetics: pretty-print
  dsputil: x86: add SHUFFLE_MASK_W macro
  configure: respect CC_O setting in check_cc

Conflicts:
	Changelog
	configure
	libavcodec/v410dec.c
	libavcodec/zerocodec.c
	libavformat/asfenc.c
	libavformat/version.h
	libswscale/utils.c
	libswscale/x86/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 21:25:09 +02:00
Derek Buitenhuis
d04c5293ce v410dec: Implement explode mode support
Try and decode broken files, but still fail if explode
mode is enabled.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-23 11:36:48 -04:00
Reimar Döffinger
6c8fdfc5e5 zerocodec: fix direct rendering.
Set picture type before calling get_buffer.
This allows the DR application to make better decisions.
It also fixes a resource leak in case of missing reference frames
since it would call get_buffer but never release_buffer.
Also use FFSWAP to ensure that the AVFrame is properly initialized
in the next get_buffer (in particular that data[0] is NULL).

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-23 11:35:21 -04:00
Hendrik Leppkes
37c6ad2345 wavpack: set bits_per_raw_sample for S32 samples to properly identify 24-bit
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2012-07-23 11:33:58 -04:00
Ronald S. Bultje
58db34aa1e h264: refactor NAL decode loop
Write out the NAL decoding loops in full so that they are easier
to parse for a preprocessor without it having to be aware of macros
or other such things in C code.

This also makes the code more readable.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-23 16:27:53 +02:00
Peter Ross
cc12a94c36 iff: set ham palette alpha to 0xFF
This addresses the problem that some HAM pictures were decoded with
complete transparency as described in the 'iff: ANIM suppport ' thread
on ffmpeg-devel. The decoder was already setting alpha correctly for
CMAP palettes, just not HAM palettes.
2012-07-23 14:04:47 +02:00
Michael Niedermayer
f4451d2e75 libschroedingerenc: remove assert related to the old API.
The assert is no longer needed as the buffer is allocated after
the size is known now.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 04:20:15 +02:00
Michael Niedermayer
d014e19515 libvorbisenc: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 04:00:23 +02:00
Michael Niedermayer
72a9e646c3 libschroedingerenc: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 04:00:01 +02:00
Michael Niedermayer
62514ca012 g723.1dec: Make postfilter user switchable
Code from qatar (55c3a4f617)
Author of the code was probably Mohamed or Kostya

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 03:57:04 +02:00
Michael Niedermayer
1eb1392690 g723.1: various cosmetics and changes that should have no user vissible effect.
code from qatar (55c3a4f617)
Author of the code was probably Mohamed or Kostya

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-23 03:55:28 +02:00
Justin Ruggles
a35738f424 dsputil: ppc: cosmetics: pretty-print 2012-07-22 17:38:55 -04:00
Jason Garrett-Glaser
85a3c19ed1 dsputil: x86: add SHUFFLE_MASK_W macro
Simplifies pshufb masks that operate on words.
2012-07-22 16:56:58 -04:00
Michael Niedermayer
9023de342f Merge commit '1470ce21cec5ee26e106e2a884c26bbf84e5aaea'
* commit '1470ce21cec5ee26e106e2a884c26bbf84e5aaea':
  Bump libavcodec and libavformat minor versions for G.723.1 decoder and demuxer
  G.723.1 demuxer and decoder
  Add a shift parameter to celp_lp_synthesis_filter()
  libopenjpeg: K&R formatting cosmetics
  yadif: use emms_c() instead of inline assembly for emms invocations.
  ac3: don't use different names for option tables in the template file.
  lavfi: use const for AVFilterPad declarations in all filters.
  adpcm: don't duplicate identical AVSampleFmt array for each encoder.
  configure: cosmetics: Group test dependencies together
  configure: add more passthrough flags in tms470 filter
  configure: move flag filtering functions out of if/else blocks

Conflicts:
	Changelog
	configure
	doc/general.texi
	libavcodec/Makefile
	libavcodec/ac3enc_fixed.c
	libavcodec/allcodecs.c
	libavcodec/eac3enc.c
	libavcodec/g723_1.c
	libavcodec/g723_1_data.h
	libavcodec/libopenjpegdec.c
	libavcodec/libopenjpegenc.c
	libavcodec/v210dec.h
	libavcodec/version.h
	libavfilter/af_anull.c
	libavfilter/asrc_anullsrc.c
	libavfilter/f_settb.c
	libavfilter/fifo.c
	libavfilter/split.c
	libavfilter/src_movie.c
	libavfilter/vf_aspect.c
	libavfilter/vf_blackframe.c
	libavfilter/vf_boxblur.c
	libavfilter/vf_copy.c
	libavfilter/vf_crop.c
	libavfilter/vf_cropdetect.c
	libavfilter/vf_delogo.c
	libavfilter/vf_drawbox.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_fieldorder.c
	libavfilter/vf_format.c
	libavfilter/vf_frei0r.c
	libavfilter/vf_gradfun.c
	libavfilter/vf_hflip.c
	libavfilter/vf_hqdn3d.c
	libavfilter/vf_libopencv.c
	libavfilter/vf_lut.c
	libavfilter/vf_null.c
	libavfilter/vf_overlay.c
	libavfilter/vf_pad.c
	libavfilter/vf_pixdesctest.c
	libavfilter/vf_scale.c
	libavfilter/vf_select.c
	libavfilter/vf_setpts.c
	libavfilter/vf_showinfo.c
	libavfilter/vf_slicify.c
	libavfilter/vf_transpose.c
	libavfilter/vf_unsharp.c
	libavfilter/vf_vflip.c
	libavfilter/vf_yadif.c
	libavfilter/vsrc_color.c
	libavfilter/vsrc_testsrc.c
	libavformat/Makefile
	libavformat/allformats.c
	libavformat/g723_1.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-22 22:18:18 +02:00
Kostya Shishkov
1470ce21ce Bump libavcodec and libavformat minor versions for G.723.1 decoder and demuxer 2012-07-22 08:43:12 +02:00
Mohamed Naufal Basheer
55c3a4f617 G.723.1 demuxer and decoder
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-07-22 07:58:54 +02:00
Mohamed Naufal Basheer
8aac5585fa Add a shift parameter to celp_lp_synthesis_filter()
This is intended for reuse by the G.723.1 decoder

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2012-07-22 07:58:53 +02:00
Michael Niedermayer
2f48dff455 atrac3: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-22 05:23:27 +02:00
Michael Niedermayer
86af292883 kbdwin: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-22 05:18:01 +02:00
Luca Barbato
51a5ddfa01 libopenjpeg: K&R formatting cosmetics 2012-07-22 04:05:45 +02:00
Paul B Mahol
1aeb87fa07 tscc: employ more meaningful return values
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-22 01:21:53 +00:00
Michael Niedermayer
7c71f8e0ec pthread: mark lockless thread synchronization variables as volatile
No speed difference was meassureable

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-22 02:07:02 +02:00
Ronald S. Bultje
b170b323e3 ac3: don't use different names for option tables in the template file.
The variables which are declared in the teplate file are static and
therefore there is no symbol clash.
2012-07-21 16:42:36 -07:00
Ronald S. Bultje
98041afb5f adpcm: don't duplicate identical AVSampleFmt array for each encoder. 2012-07-21 16:31:15 -07:00
Reimar Döffinger
313d1981ad zerocodec: fix direct rendering.
Set picture type before calling get_buffer.
This allows the DR application to make better decisions.
It also fixes a resource leak in case of missing reference frames
since it would call get_buffer but never release_buffer.
Also use FFSWAP to ensure that the AVFrame is properly initialized
in the next get_buffer (in particular that data[0] is NULL).

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2012-07-21 21:11:37 +02:00
Paul B Mahol
a36f19e942 libopenjpegdec: set cp_reduce value only once
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-21 16:12:04 +00:00
Michael Niedermayer
17352ad315 alacdec: fix packed sample output with 5.1
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-21 06:39:01 +02:00
Marton Balint
b99e9ee938 ac3dec: set decode_error_flags field in ac3 codec
Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-21 05:48:31 +02:00
Marton Balint
016a472009 avcodec: add decode_error_flags field to AVFrame
Signed-off-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-21 05:48:31 +02:00
Michael Niedermayer
3c033d00f5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libopenjpeg: introduce lowres and lowqual private options
  FATE: add a test for flac cover art.
  cafdec: allow larger ALAC magic cookie
  alac: fix channel pointer assignment for 24 and 32-bit

Conflicts:
	libavcodec/alac.c
	libavcodec/libopenjpegdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-21 04:25:11 +02:00
Paul B Mahol
85761efa95 tiertexseq: remove redundant string from log message
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-20 19:44:26 +00:00
Paul B Mahol
b040ffc84c exr: display warning if multiple compression attributes are found
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-20 18:13:25 +00:00
Paul B Mahol
01f76a779c exr: merge common code
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-20 18:13:25 +00:00
Paul B Mahol
a2dab7512e exr: compression attribute is mandatory
Do not continue decoding if one is missing.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-20 18:13:25 +00:00
Joseph Artsimovich
99c4e91dfa dnxhd: Fix 10-bit DNxHD quant matrices
Convert them to zigzag order, as the rest of them are.

When I was adding support for 10-bit DNxHD, I just copy-pasted the
missing quant matrices from the spec. Now it turns out the existing
matrices in dnxhddata.c were in zigzag order. This resulted in wrong
quantization for 10-bit DNxHD. The attached patch fixes the problem by
converting 10-bit quant matrices to zigzag order.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-20 15:24:27 +02:00
Michael Niedermayer
7c6ebe2b97 alac: drop packed sample output support with the next major bump
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-20 14:11:09 +02:00
Luca Barbato
ce64e5bfd1 libopenjpeg: introduce lowres and lowqual private options
OpenJPEG can decode in lower resolution or decode only a number
of enhancement layers.
2012-07-20 13:23:18 +02:00
Nicolas George
461f506f7b lavc: set best_effort_timestamp for audio too. 2012-07-20 13:16:23 +02:00
Nicolas George
a6cf296bd9 lavc: Opus decoder using libopus. 2012-07-20 11:18:58 +02:00
Nicolas George
e62fd6619f oggdec: add support for Opus codec.
This patch also introduces CODEC_ID_OPUS.
2012-07-20 11:16:52 +02:00
Michael Niedermayer
5e99df019a alacdec: several players have problems with planar audio still thus temporary put packed output back by default
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-20 04:48:25 +02:00
Justin Ruggles
4cd22b7738 alac: fix channel pointer assignment for 24 and 32-bit
Needs to be done separately for each element.
2012-07-19 20:14:29 -04:00
Nicolas George
cd08900393 lavc: update pkt_duration for skipped samples.
Also: factor the the computation of the timestamp difference.
2012-07-19 23:41:03 +02:00
Nicolas George
0e18ac5611 lavc: warn when impossible to adjust timestamps for skipped samples.
It is likely to happen if pkt_timebase was not set.
2012-07-19 23:41:03 +02:00
Nicolas George
11ce1cf9a7 lavc: add debug info about skipped samples. 2012-07-19 23:41:03 +02:00
Michael Niedermayer
e4c00aca96 Merge remote-tracking branch 'qatar/master'
* qatar/master: (38 commits)
  alac: cosmetics: general pretty-printing and comment clean up
  alac: calculate buffer size outside the loop in allocate_buffers()
  alac: change some data types to plain int
  alac: cosmetics: rename some variables and function names
  alac: multi-channel decoding support
  alac: split element parsing into a separate function
  alac: support a read sample size of up to 32
  alac: output in planar sample format
  alac: add 32-bit decoding support
  alac: simplify channel interleaving
  alac: use AVPacket fields directly in alac_decode_frame()
  alac: fix check for valid max_samples_per_frame
  alac: use get_sbits() to read LPC coefficients instead of casting
  alac: move the current samples per frame to the ALACContext
  alac: avoid using a double-negative when checking if the frame is compressed
  alac: factor out output_size check in predictor_decompress_fir_adapt()
  alac: factor out loading of next decoded sample in LPC prediction
  alac: use index into buffer_out instead of incrementing the pointer
  alac: simplify lpc coefficient adaptation
  alac: reduce the number of local variables needed in lpc prediction
  ...

Conflicts:
	libavcodec/alac.c
	libavformat/cafdec.c
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-19 23:31:04 +02:00
Michael Niedermayer
85044358f6 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Print full compiler identification, not only version number
  flacdec: reverse lpc coeff order, simplify filter
  x86: dsputil: drop some unused CPU flag debug code

Conflicts:
	cmdutils.c
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-19 22:01:31 +02:00
Justin Ruggles
eeb55f5f2f alac: cosmetics: general pretty-printing and comment clean up 2012-07-19 13:26:48 -04:00
Justin Ruggles
f3e5a7844b alac: calculate buffer size outside the loop in allocate_buffers() 2012-07-19 13:26:48 -04:00
Justin Ruggles
bae83f2c74 alac: change some data types to plain int 2012-07-19 13:26:48 -04:00
Justin Ruggles
2aebac6918 alac: cosmetics: rename some variables and function names 2012-07-19 13:26:48 -04:00
Andrew D'Addesio
1b3ef155d7 alac: multi-channel decoding support
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-07-19 13:26:48 -04:00
Justin Ruggles
81c9e2e6d0 alac: split element parsing into a separate function
This will make multi-channel implementation simpler.
Based partially on a patch by Andrew D'Addesio <modchipv12@gmail.com>.
2012-07-19 13:26:48 -04:00
Justin Ruggles
cd632619d9 alac: support a read sample size of up to 32
Use get_bits_long() in decode_scalar().
Use unsigned int for decoded value.
2012-07-19 13:26:48 -04:00
Justin Ruggles
73dc0db486 alac: output in planar sample format
Avoids unneeded interleaving and allows for reusing the AVFrame output buffer
as the internal buffer for 24-bit and 32-bit sample size.
2012-07-19 13:26:48 -04:00
Justin Ruggles
6482bd8831 alac: add 32-bit decoding support 2012-07-19 13:26:48 -04:00
Andrew D'Addesio
6cda74c155 alac: simplify channel interleaving
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2012-07-19 13:26:48 -04:00
Justin Ruggles
5138ff143f alac: use AVPacket fields directly in alac_decode_frame() 2012-07-19 13:26:47 -04:00
Justin Ruggles
7a206eb32f alac: fix check for valid max_samples_per_frame 2012-07-19 13:26:47 -04:00
Justin Ruggles
1193d3fedd alac: use get_sbits() to read LPC coefficients instead of casting 2012-07-19 13:26:47 -04:00
Justin Ruggles
7a50ec6799 alac: move the current samples per frame to the ALACContext
This will simplify the multi-channel implementation.
2012-07-19 13:26:47 -04:00
Justin Ruggles
46043962ea alac: avoid using a double-negative when checking if the frame is compressed 2012-07-19 13:26:47 -04:00
Justin Ruggles
9a6c528e08 alac: factor out output_size check in predictor_decompress_fir_adapt() 2012-07-19 13:26:47 -04:00
Justin Ruggles
ebd4c3add1 alac: factor out loading of next decoded sample in LPC prediction 2012-07-19 13:26:47 -04:00
Justin Ruggles
a4ecd41442 alac: use index into buffer_out instead of incrementing the pointer 2012-07-19 13:26:47 -04:00
Justin Ruggles
f2515cd629 alac: simplify lpc coefficient adaptation 2012-07-19 13:26:47 -04:00
Justin Ruggles
abc4376b31 alac: reduce the number of local variables needed in lpc prediction 2012-07-19 13:26:47 -04:00
Justin Ruggles
01880d287b alac: simplify 1st order prediction and reading of warm-up samples 2012-07-19 13:26:46 -04:00
Justin Ruggles
d0c0bf0d3e alac: cosmetics: reindent after last commit 2012-07-19 13:26:46 -04:00
Justin Ruggles
79def4c523 alac: remove unneeded conditionals in predictor_decompress_fir_adapt() 2012-07-19 13:26:46 -04:00
Justin Ruggles
4bcd637dcb alac: use sizeof() instead of hardcoded data sizes 2012-07-19 13:26:46 -04:00
Justin Ruggles
91620a04f1 alac: make block_size signed
It does not need to be unsigned.
2012-07-19 13:26:46 -04:00
Justin Ruggles
2fc24b3273 alac: remove a duplicate local variable 2012-07-19 13:26:46 -04:00
Justin Ruggles
5177413d20 alac: conditionally set sign_modifier to 1
It is already unconditionally set to 0 prior to this, so we can modify it
only when needed.
2012-07-19 13:26:46 -04:00
Justin Ruggles
7e6593e977 alac: eliminate 2 unneeded local variables in bastardized_rice_decompress()
x_modified is just unnecessary, and final_val can be removed by simplifying
the unsigned-to-signed conversion.
2012-07-19 13:26:46 -04:00
Justin Ruggles
6fd8a28b59 alac: adjust conditions for updating entropy decoder history
avoids some unnecessary arithmetic in certain situations
2012-07-19 13:26:46 -04:00
Justin Ruggles
a06fdadd97 alac: cosmetics: reindent after last commit 2012-07-19 13:26:46 -04:00
Justin Ruggles
d9837434a9 alac: limit the rice param before passing to decode_scalar()
reduces the number of parameters to decode_scalar() and slightly simplifies
the code
2012-07-19 13:26:45 -04:00
Justin Ruggles
6e91f62256 alac: reduce the number of parameters to bastardized_rice_decompress()
Use the ALACContext fields directly instead.
2012-07-19 13:26:45 -04:00
Justin Ruggles
836e8b9ba0 alac: cosmetics: rename some ALACContext parameters 2012-07-19 13:26:45 -04:00
Justin Ruggles
2ac1737583 alac: clean up and update comments leftover from reverse-engineering 2012-07-19 13:26:45 -04:00
Clément Bœsch
55ed91c856 threads: fix a potential race spotted by helgrind. 2012-07-19 19:08:36 +02:00
Michael Niedermayer
e03cd1049e Fix misspellings of FFmpeg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-19 18:44:46 +02:00
Mans Rullgard
bf1cf4d5a5 flacdec: reverse lpc coeff order, simplify filter
Reversing the lpc coefficient order simplifies indexing in
the filter.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-19 10:21:32 +01:00
Diego Biurrun
9f97af2688 x86: dsputil: drop some unused CPU flag debug code 2012-07-19 10:17:56 +02:00
Michael Niedermayer
204c4e953d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ppc: fix build with altivec disabled
  vp3: move idct and loop filter pointers to new vp3dsp context
  build: add CONFIG_VP3DSP, reduce repetition in OBJS lists
  tscc2: do not add/subtract 128 bias during DCT
  tscc2: fix typo in DCT
  configure: clarify external library section of help output
  configure: mark libfdk-aac as nonfree
  configure: cosmetics: drop some unnecessary backslashes
  os_support: K&R formatting cosmetics

Conflicts:
	configure
	libavcodec/vp3.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-18 22:34:48 +02:00
Michael Niedermayer
31a192f387 imgconvert: favor pixel formats without resolution loss
Fixes Ticket1517

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-18 17:22:17 +02:00
Michael Niedermayer
60f3291086 mlpdec: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-18 16:22:41 +02:00
Mans Rullgard
ffdd93a25e ppc: fix build with altivec disabled
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-18 13:34:42 +01:00
Mans Rullgard
28f9ab7029 vp3: move idct and loop filter pointers to new vp3dsp context
This moves all VP3-specific function pointers from dsputil to a
new vp3dsp context.  There is no reason to ever use the VP3 IDCT
where an MPEG2 IDCT is expected or vice versa.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-18 10:32:19 +01:00
Mans Rullgard
ab9f987661 build: add CONFIG_VP3DSP, reduce repetition in OBJS lists
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-18 10:32:18 +01:00
Kostya Shishkov
4cfb0d871d tscc2: do not add/subtract 128 bias during DCT
It turns out that the reference decoder subtracts 128 from DC during block
decode but adds it back during reordering block with zigzag pattern.
Transforming block with incorrect DC caused heavy visual artifacts for
many quantisers.
2012-07-18 07:05:59 +02:00
Kostya Shishkov
3c6c19184c tscc2: fix typo in DCT 2012-07-18 07:05:53 +02:00
Michael Niedermayer
56ae5926f7 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libopenjpeg: introduce encoding support
  libopenjpeg: rename decoder source file.
  RTMPTS protocol support
  RTMPS protocol support
  avconv: print an error message when demuxing fails.
  tscc2: DCT output should not be clipped
  rtmp: Rename rtmphttp to ffrtmphttp

Conflicts:
	Changelog
	configure
	doc/general.texi
	libavcodec/libopenjpegenc.c
	libavcodec/version.h
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-18 01:27:19 +02:00
Paul B Mahol
0b74b8f649 ptx: correct decoding
The image data is in BGR and not in RGB.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-17 17:06:24 +00:00
Michael Bradshaw
453c02f971 libopenjpeg: introduce encoding support
Based on FFmpeg version from
commit 713a7854e0

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-17 14:56:58 +02:00
Michael Bradshaw
b43a7bb4f9 libopenjpeg: rename decoder source file.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-07-17 14:56:22 +02:00
chinshou
81dd908c6e Fix libilbc compilation.
Fixes ticket #1540
2012-07-17 08:53:36 +02:00
Carl Eugen Hoyos
7f5fae1e48 mpeg4videodec: Add two missing format specifiers for debug output. 2012-07-17 08:12:49 +02:00
Carl Eugen Hoyos
34aa61a36d mpeg4videodec: Use format specifier PRId64 for int64_t. 2012-07-17 08:11:31 +02:00
Kostya Shishkov
0b40153d20 tscc2: DCT output should not be clipped
This fixes decoding some TSCC2 files with large quantisers.
2012-07-17 07:21:24 +02:00
Paul B Mahol
3071af6cf2 tiff: read more tags of type string
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2012-07-17 01:23:35 +00:00