1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-12 19:18:44 +02:00
Commit Graph

16152 Commits

Author SHA1 Message Date
Justin Ruggles
3c25209bd9 apedec: remove unneeded check for zero-size packet.
This is already checked by avcodec_decode_audio3().
2011-10-28 11:41:39 -04:00
Hendrik Leppkes
022d22e581 Fix a regression in the dca parser introduced by dts express support.
The dca parser needs to check that the framesize is actually of a complete
frame, and not of a partial DTS-HD frame, which is not constant size, and
thus the check would fail.
(cherry picked from commit ebc0ccb9af59b78732e82c09f8c90b1d46b478e0)

Review-by: Benjamin Larsson
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 15:26:31 +02:00
Hendrik Leppkes
14474fbbd0 dca_parser: Add support for parsing dts express
(cherry picked from commit ea36f60493f675db531dc2dbef04fb60fbc21a6a)

Review-by: Benjamin Larsson
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 15:25:40 +02:00
Hendrik Leppkes
7b6ae0e849 dca: allow the channel count to change.
(cherry picked from commit 42e78d2296752293cd08c5727f76c3b37c68fb24)

Review-by: Benjamin Larsson
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 15:24:35 +02:00
Justin Ruggles
ec6d743118 mp3on4: do not needlessly set data_size to 0 2011-10-27 22:06:32 -04:00
Justin Ruggles
99975966c3 mp3adu: return error instead of just consuming bad packets 2011-10-27 22:06:32 -04:00
Justin Ruggles
e2e6c8799b mpegaudiodec: check output data size based on avctx->frame_size 2011-10-27 22:06:32 -04:00
Justin Ruggles
512557b291 avcodec: remove avcodec_parse_frame and deprecate associated elements.
The documentation for CODEC_CAP_PARSE_ONLY and AVCodecContext.parse_only
indicates that they are utilized through avcodec_parse_frame(), which was
never actually implemented.
2011-10-27 22:06:32 -04:00
Justin Ruggles
cd816d9bbb mpegaudiodec: cosmetics: basic pretty-printing 2011-10-27 22:06:32 -04:00
Justin Ruggles
c17e534f2e mpegaudiodec: remove frame_count field from MPADecodeContext.
Its functionality was removed several years ago, so it doesn't do anything.
AVCodecContext.frame_number could serve the same purpose if someone
wants to debug the frame count.
2011-10-27 22:06:32 -04:00
Justin Ruggles
dac15a03af mpegaudiodec: return AVERROR return codes instead of -1 2011-10-27 22:06:32 -04:00
Justin Ruggles
4be1e1dfa7 mpegaudiodec: Skip only bad frames instead of the whole packet.
On frame decoding failure, return an error if the frame is the same size as
the whole packet, otherwise just log an error message and return the number
of bytes consumed.
2011-10-27 22:06:31 -04:00
Michael Niedermayer
e7f008a534 lavc: Map deprecated codec ids to ours so as to maintain compatibility with the fork.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 01:37:50 +02:00
Michael Niedermayer
4f587d1637 avcodec: Change values of codec ids at the end of lists that dont exist outside ffmpeg yet so
they wont conflict when they get added to the fork with randomly changed order and values.
Also add duplicate codec_ids to allow maintaining compatibility.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 01:37:50 +02:00
Michael Niedermayer
2179fc48b2 avcodec: Resolve the codec_id compatibility issue.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 01:37:50 +02:00
Hendrik Leppkes
dc38625ebc Add SMPTE240M transfer characteristics flag.
(cherry picked from commit 4266191919c31a1921b497ec831d3b1c1fa28df8)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-28 01:37:50 +02:00
Anton Khirnov
15946eb8a9 lavc: remove "legacy" mpegvideo decoder. 2011-10-27 23:06:26 +02:00
Michael Niedermayer
abe17c6963 j2kdec: debug markers support.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 20:43:27 +02:00
Michael Niedermayer
4ffed61b49 h264_parser: fully parse first_mb_in_slice to more reliably detect AU boundaries.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 17:53:29 +02:00
Michael Niedermayer
23040e2e3d h264: use long reading for first_mb_in_slice
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 17:53:08 +02:00
Michael Niedermayer
3e7db0a9ee resample: Fix array size
Found-by: Jim Radford
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 15:27:32 +02:00
Michael Niedermayer
1b9ca38d9d resample2: fix potential overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 14:34:45 +02:00
Michael Niedermayer
a67cb012e6 resample: Fix overflow
Found-by: Jim Radford
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 14:31:53 +02:00
Michael Niedermayer
173715d291 Merge remote-tracking branch 'qatar/master'
* qatar/master: (35 commits)
  libopencore-amr: check output buffer size before decoding
  libopencore-amr: remove unneeded buf_size==0 check.
  libopencore-amr: remove unneeded frame_count field.
  aac_latm: remove unneeded check for zero-size packet.
  pcmdec: fix output buffer size check by calculating the actual output size prior to decoding.
  pcmdec: move codec-specific variable declarations to the corresponding codec blocks.
  pcmdec: return buf_size instead of src-buf.
  avcodec: remove the Zork PCM encoder.
  pcm_zork: use AV_SAMPLE_FMT_U8 instead of shifting all samples by 8.
  pcmenc: remove unneeded sample_fmt check.
  pcmdec: move number of channels check to pcm_decode_init()
  pcmdec: remove unnecessary check for sample_fmt change
  pcmdec: move DVD PCM bits_per_coded_sample check near to the code that sets the sample size.
  pcmdec: do not needlessly set *data_size to 0
  alacdec: remove unneeded NULL or zero-size packet checks.
  alacdec: simplify buffer allocation by using FF_ALLOC_OR_GOTO()
  alacdec: ask for a sample for unsupported sample depths.
  alacdec: cosmetics: use 'ch' instead of 'chan' to iterate channels
  alacdec: move some declarations to the top of the function
  alacdec: always use get_sbits_long() for uncompressed samples
  ...

Conflicts:
	libavcodec/pcm.c
	tests/ref/acodec/pcm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-27 01:39:04 +02:00
David Conrad
748f921ad1 VP8: Unroll decoding segment update 2011-10-27 00:00:29 +02:00
David Conrad
ba3830e8a3 VP8: Remove no longer used vp8_rac_get_tree_with_offset 2011-10-26 23:56:34 +02:00
Justin Ruggles
4a6a29a7fb libopencore-amr: check output buffer size before decoding 2011-10-26 16:00:37 -04:00
Justin Ruggles
345d15d2f9 libopencore-amr: remove unneeded buf_size==0 check.
avcodec_decode_audio3() already checks it before sending the packet to the
decoder.
2011-10-26 16:00:37 -04:00
Justin Ruggles
402c98783d libopencore-amr: remove unneeded frame_count field.
Use AVCodecContext.frame_number instead.
2011-10-26 16:00:36 -04:00
Justin Ruggles
71ccfb3f14 aac_latm: remove unneeded check for zero-size packet.
This is already checked by avcodec_decode_audio3()
2011-10-26 12:21:18 -04:00
Justin Ruggles
f1901180e0 pcmdec: fix output buffer size check by calculating the actual output size
prior to decoding.
2011-10-26 12:01:07 -04:00
Justin Ruggles
154cd253e5 pcmdec: move codec-specific variable declarations to the corresponding codec
blocks.
2011-10-26 12:01:07 -04:00
Justin Ruggles
0093f96d34 pcmdec: return buf_size instead of src-buf.
The values will always be the same, so this change eliminates an unneeded
variable. It also gets rid of the need to reset src when memcpy() is used.
2011-10-26 12:01:07 -04:00
Justin Ruggles
85579b6381 avcodec: remove the Zork PCM encoder.
The Zork PCM decoder does not decode the 1 sample we have correctly, therefore
the encoder based on the decoder is also incorrect. There is no good reason to
keep the encoder.
2011-10-26 12:01:07 -04:00
Justin Ruggles
67a3b67c71 pcm_zork: use AV_SAMPLE_FMT_U8 instead of shifting all samples by 8. 2011-10-26 12:01:07 -04:00
Justin Ruggles
06af335a33 pcmenc: remove unneeded sample_fmt check.
It is already checked by avcodec_open2().
2011-10-26 12:01:07 -04:00
Justin Ruggles
d94e29cac9 pcmdec: move number of channels check to pcm_decode_init() 2011-10-26 12:01:06 -04:00
Justin Ruggles
83efd7652e pcmdec: remove unnecessary check for sample_fmt change 2011-10-26 12:01:06 -04:00
Justin Ruggles
381e195b46 pcmdec: move DVD PCM bits_per_coded_sample check near to the code that sets
the sample size.
2011-10-26 12:01:06 -04:00
Justin Ruggles
6b94711f15 pcmdec: do not needlessly set *data_size to 0 2011-10-26 12:01:06 -04:00
Justin Ruggles
30f3e7b524 alacdec: remove unneeded NULL or zero-size packet checks.
This is already done in avcodec_decode_audio3()
2011-10-26 11:50:17 -04:00
Justin Ruggles
68f7e9cd8e alacdec: simplify buffer allocation by using FF_ALLOC_OR_GOTO() 2011-10-26 11:50:17 -04:00
Justin Ruggles
b316af7a7c alacdec: ask for a sample for unsupported sample depths.
Also return AVERROR_PATCHWELCOME.
2011-10-26 11:50:17 -04:00
Justin Ruggles
63cf54df7a alacdec: cosmetics: use 'ch' instead of 'chan' to iterate channels 2011-10-26 11:50:17 -04:00
Justin Ruggles
01200f1283 alacdec: move some declarations to the top of the function 2011-10-26 11:50:17 -04:00
Justin Ruggles
c3a92412c0 alacdec: always use get_sbits_long() for uncompressed samples 2011-10-26 11:50:17 -04:00
Justin Ruggles
b46e58f741 alacdec: remove unneeded local variable 2011-10-26 11:50:17 -04:00
Justin Ruggles
7080533cda alacdec: remove the numchannels parameter from several functions.
They only operate on stereo content, so the extra param is not necessary and
also allows for simplifying the code.
2011-10-26 11:50:17 -04:00
Justin Ruggles
cb50329fc5 alacdec: rename 2 functions.
Now they only do stereo interleaving.
2011-10-26 11:50:16 -04:00
Justin Ruggles
c39bddd392 alacdec: move appending of extra_bits to a separate function.
This should also fix decoding of mono 24-bit.
2011-10-26 11:50:16 -04:00
Justin Ruggles
e739d35156 alacdec: split stereo decorrelation into a separate function.
It is identical for 16-bit and 24-bit, so there is no need to have duplicate
code.
2011-10-26 11:50:16 -04:00
Justin Ruggles
d251c85dce alacdec: cosmetics: rename 'wasted_bits' to 'extra_bits'.
The bits are not wasted, they are additional low bits that are added to the
16-bit decompressed samples to increase the output sample depth.
2011-10-26 11:50:16 -04:00
Justin Ruggles
dbbb9262ca alacdec: remove unneeded numsamples checks 2011-10-26 11:50:16 -04:00
Justin Ruggles
53df079a73 alacdec: check for buffer allocation failure.
Also rearranges some functions for easier cleanup on failure.
2011-10-26 11:50:16 -04:00
Justin Ruggles
e5e4f92b5c alacdec: allocate per-channel buffers based on channel count.
reduces memory usage when the stream has fewer than MAX_CHANNELS
2011-10-26 11:50:16 -04:00
Justin Ruggles
dcaa83a0fc alacdec: read/validate number of channels from the extradata.
check frame header channel count against header/container channel count.
2011-10-26 11:50:16 -04:00
Justin Ruggles
47e9c75b36 alacdec: remove unneeded validation of setinfo_sample_size.
It is already done when using it to set sample_fmt.
2011-10-26 11:50:16 -04:00
Justin Ruggles
0f26f3d5c4 alacdec: set sample_fmt in alac_decode_init() 2011-10-26 11:50:16 -04:00
Justin Ruggles
aec8383348 alacdec: set bytespersample using av_get_bytes_per_sample() 2011-10-26 11:50:15 -04:00
Janne Grunau
d6174bfe5f threads: restore has_b_frames in frame_thread_free
Otherwise the delay expressed in has_b_frames increases with every
avcodec_close/avcodec_open.
Fixes fate-ea-dct with more than 1 thread.
2011-10-26 16:55:54 +02:00
Michael Niedermayer
4416931fc0 snow: emu edge support
Fixes Ticket592

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-26 15:47:14 +02:00
Daniel Kang
ded3e9f054 H.264: Cometics to dsputil_mmx.c
Add whitespace.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-10-26 06:41:32 -07:00
Michael Niedermayer
c881df330d h264: Guess receovery points.
Fixes Ticket561

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-26 14:32:01 +02:00
Michael Niedermayer
51bfaa21c8 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  g722dec: check output buffer size before decoding
  g722dec: cosmetics: reindent/linewrap
  g722dec: remove the use of lowres for half-rate decoding.
  tta: check for extradata allocation failure in tta demuxer
  tta: check for allocation failure of decode_buffer
  tta: use correct frame_length calculation.
  tta: add support for decoding 24-bit sample format
  cosmetics: indentation
  tta: remove pointless braces
  tta: check output buffer size after adjusting frame length for last frame
  tta: fix reading of format in TTA header.
  tta: remove useless commented-out lines
  tta: check remaining bitstream size while reading unary value
  lavf: deprecate AVStream.stream_copy
  avconc: split choose_codec() to choose_decoder/choose_encoder.
  lavf: simplify by using FFMAX/FFMIN.
  mpegenc: add preload private option.
  cosmetics: simplify latm_decode_init
  latm: avoid unnecessary reinit of the aac decoder
  aacdec: initialize sbr context only in new channel elements
  ...

Conflicts:
	avconv.c
	libavcodec/resample.c
	libavcodec/tta.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-26 02:36:07 +02:00
Michael Niedermayer
e403a97aac h264: 10l fix, missing () after replacing % by &
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-25 20:34:51 +02:00
Justin Ruggles
a3a8572165 g722dec: check output buffer size before decoding 2011-10-25 11:30:50 -04:00
Justin Ruggles
4e41973794 g722dec: cosmetics: reindent/linewrap 2011-10-25 11:30:50 -04:00
Justin Ruggles
d0a196962a g722dec: remove the use of lowres for half-rate decoding.
It is broken because an AVCodecContext can be opened/closed multiple
times, and sample_rate is getting divided by 2 each time that happens.

This removes the only use of lowres for audio.
2011-10-25 11:30:50 -04:00
Justin Ruggles
2f1d212fd0 tta: check for allocation failure of decode_buffer 2011-10-25 11:22:02 -04:00
Justin Ruggles
b5050539c9 tta: use correct frame_length calculation.
using a floating-point calculation is not necessary.
2011-10-25 11:22:02 -04:00
Justin Ruggles
c6056d4004 tta: add support for decoding 24-bit sample format
Note that this will not work in most cases with avconv and avplay due to the
AVCODEC_MAX_AUDIO_FRAME_SIZE limit, but it will decode correctly if given a
large enough output buffer.
2011-10-25 11:22:02 -04:00
Justin Ruggles
8664682d0e cosmetics: indentation 2011-10-25 11:22:02 -04:00
Justin Ruggles
7b7a74a150 tta: remove pointless braces 2011-10-25 11:22:02 -04:00
Justin Ruggles
e6923f683c tta: check output buffer size after adjusting frame length for last frame 2011-10-25 11:22:01 -04:00
Justin Ruggles
b16960a8a5 tta: fix reading of format in TTA header.
TTA does not support float at all, and format 2 is encrypted TTA.
2011-10-25 11:22:01 -04:00
Justin Ruggles
4d3e7a7516 tta: remove useless commented-out lines 2011-10-25 11:22:01 -04:00
Justin Ruggles
35f9d8c20a tta: check remaining bitstream size while reading unary value 2011-10-25 11:22:01 -04:00
Nicolas George
cf88cf17d0 Remove CELT / Opus confusion in labels, doc and comments.
The situation was not clear when support was added but it is now:
CELT and Opus are really two different codecs.
The current code supports CELT via libcelt, not Opus.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-25 15:04:51 +02:00
Janne Grunau
28287045ca cosmetics: simplify latm_decode_init 2011-10-25 12:08:21 +02:00
Janne Grunau
785f876cee latm: avoid unnecessary reinit of the aac decoder 2011-10-25 12:08:21 +02:00
Janne Grunau
80e36425fb aacdec: initialize sbr context only in new channel elements 2011-10-25 12:07:58 +02:00
Janne Grunau
b2e56e08c9 resample: reject unhandled conversions
audio_resample can not reduce the number of channels
2011-10-25 12:06:48 +02:00
Janne Grunau
ec1ce86e7f resample: remove unused #define 2011-10-25 12:06:48 +02:00
Nicolas George
02ac6a6544 libcelt_dec: whitespace cosmetics. 2011-10-25 09:38:08 +02:00
Michael Niedermayer
f0a7b67a35 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  adpcm: use sign_extend()
  mpeg12: fix mpeg_decode_slice context parameter type
  Revert "mpeg12: move full_pel from MpegEncContext to Mpeg1Context"

Conflicts:
	libavcodec/mpeg12.c
	libavcodec/mpeg12.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-24 23:45:44 +02:00
Nicolas George
f44c816566 libcelt_dec: set sample_fmt.
This fixes a regression introduced by the merging of patch fc2dd2c.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-24 21:17:32 +02:00
Hendrik Leppkes
138d10969d avcodec: add YCgCo color space.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-24 18:43:46 +02:00
Hendrik Leppkes
84e0553c1c pcm_bluray: set bits_per_raw_sample for > 16-bit
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-24 18:41:03 +02:00
Mans Rullgard
c8477df019 adpcm: use sign_extend()
This avoids warnings from the overflow checker and simplifies the code.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-24 15:26:24 +01:00
Andreas Öman
123b1fac5c wmall: Working bitstream parser
(cherry picked from commit 929822111bc10fdf19ca66b7ed09e0ebf802878b)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-24 15:55:57 +02:00
Michael Niedermayer
35075dc650 h264: Calculate a tighter recovery_frame.
Reduces delay with mplayers TS demuxer.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-24 12:17:24 +02:00
Michael Niedermayer
63f0708478 h264: Support invalid output by mplayers TS demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-24 12:16:03 +02:00
Michael Niedermayer
9c020810c1 Revert "mpeg12: move full_pel from MpegEncContext to Mpeg1Context"
This reverts commit da22ba7df4.

Conflicts:

	libavcodec/mpeg12.c
	libavcodec/mpeg12.h
2011-10-24 01:48:51 +02:00
Janne Grunau
d99fe3a478 mpeg12: fix mpeg_decode_slice context parameter type
During slice threading only MpegEncContext is passed to
mpeg_decode_slice, remove a wrong cast and change the function
definition to take MpegEncContext pointer.
2011-10-24 01:05:00 +02:00
Michael Niedermayer
fe906830fd Revert "mpeg12: move closed_gop from MpegEncContext to Mpeg1Context"
This reverts commit 3fc0830432.
The revert is done because the reasoning behind the commit was
flawed, closed_gop is not mpeg1/2 specific.

Conflicts:

	libavcodec/mpeg12.c
	libavcodec/mpeg12.h
2011-10-24 01:04:14 +02:00
Michael Niedermayer
2b0cdb7364 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Move id3v2 tag writing to a separate file.
  swscale: add missing colons to x86 assembly yuv2planeX.
  g722: split decoder and encoder into separate files
  cosmetics: remove extra spaces before end-of-statement semi-colons
  vorbisdec: check output buffer size before writing output
  wavpack: calculate bpp using av_get_bytes_per_sample()
  ac3enc: Set max value for mode options correctly
  lavc: move get_b_cbp() from h263.h to mpeg4videoenc.c
  mpeg12: move closed_gop from MpegEncContext to Mpeg1Context
  mpeg12: move full_pel from MpegEncContext to Mpeg1Context
  mpeg12: move Mpeg1Context from mpeg12.c to mpeg12.h
  mpegvideo: remove some unused variables from MpegEncContext.

Conflicts:
	libavcodec/mpeg12.c
	libavformat/mp3enc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-24 01:01:21 +02:00
Janne Grunau
cd8c64e197 Revert "mpeg12: move full_pel from MpegEncContext to Mpeg1Context"
This reverts commit da22ba7df4 since it
broke slice threading. Slice threading just duplicates MpegEncContext
so every value used during mpeg_decode_slice has to be in it.
A second patch will fix the illusion that Mpeg1Context is available
in mpeg_decode_slice.
2011-10-24 00:59:41 +02:00
Justin Ruggles
704721bc9c g722: split decoder and encoder into separate files 2011-10-23 11:42:34 -04:00
Justin Ruggles
b95fbba705 cosmetics: remove extra spaces before end-of-statement semi-colons 2011-10-23 11:36:56 -04:00
Justin Ruggles
60aa1a358d vorbisdec: check output buffer size before writing output 2011-10-23 11:36:56 -04:00
Justin Ruggles
d2604f9260 wavpack: calculate bpp using av_get_bytes_per_sample() 2011-10-23 11:35:46 -04:00
John Stebbins
ddfb8e1adb ac3enc: Set max value for mode options correctly
for example:
Attempting to set ac3 dsur_mode to "on" results in:
[AC-3 Encoder @ 0x7f508f0a3280] Value 2.000000 for parameter 'dsur_mode' out of range
[AC-3 Encoder @ 0x7f508f0a3280] Error setting option dsur_mode to value on.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2011-10-23 11:30:54 -04:00
Reimar Döffinger
4a5ea9e0ce Simplify some bits-left/overread checks.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-10-23 14:27:39 +02:00
Anton Khirnov
1deb66c50c lavc: move get_b_cbp() from h263.h to mpeg4videoenc.c
It's not used anywhere else.
2011-10-23 14:16:16 +02:00
Anton Khirnov
3fc0830432 mpeg12: move closed_gop from MpegEncContext to Mpeg1Context
It's MPEG-1/2 specific.
2011-10-23 14:15:56 +02:00
Anton Khirnov
da22ba7df4 mpeg12: move full_pel from MpegEncContext to Mpeg1Context
It's MPEG-1 specific.
2011-10-23 14:14:39 +02:00
Anton Khirnov
cc05a45d33 mpeg12: move Mpeg1Context from mpeg12.c to mpeg12.h
It will be used in vdpau code.
2011-10-23 14:14:34 +02:00
Anton Khirnov
acffe45732 mpegvideo: remove some unused variables from MpegEncContext. 2011-10-23 14:13:40 +02:00
Michael Niedermayer
67341f6a77 lavc: add PIX_FMT_GBR24P to align_dimensions()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-23 13:45:20 +02:00
Reimar Döffinger
6f5b4ce612 Reuse vp3_decode_flush instead of duplicating it.
This also fixes that sometimes a frame would actually not be freed.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-10-23 13:25:51 +02:00
Michael Niedermayer
f97faf6751 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  id3v2: fix doxy comment - 'machine byte order' makes no sense on char arrays
  VC1: restore mistakenly removed code
  twinvq: check output buffer size before decoding
  twinvq: return an error when the packet size is too small
  lavf: export some forgotten symbols with non-av prefixes.
  swscale: update altivec yuv2planeX asm to new per-plane API.
  swscale: make yuv2yuvX_10_sse2/avx 8/9/16-bits aware.
  yuv2planeX10 SIMD
  swscale: decide whether to use yuv2plane1/X on a per-plane basis.
  swscale: reintroduce full precision in 16-bit output.
  Split up yuv2yuvX functions
  Split out yuv2yuv1 luma and chroma in order to make them generic DSP functions
  lavc: replace references to deprecated AVCodecContext.error_recognition to use AVCodecContext.err_recognition
  lavc: translate non-flag-based er options into flag-based ef options at codec open
  add -err_filter AVOptions to access flag-based error recognition
  h264_weight: initialize "height" function argument properly.
  presets: spelling error in libvpx 1080p50_60
  avplay: fix fullscreen behaviour with SDL 1.2.14 on Mac OS X

Conflicts:
	ffplay.c
	libavformat/libavformat.v
	libswscale/swscale.c
	libswscale/x86/swscale_template.c
	tests/ref/lavfi/pixfmts_scale

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-23 05:13:56 +02:00
Mashiat Sarker Shakkhar
f18746528d VC1: restore mistakenly removed code
The code was mistakenly removed in cad16562c8.
It stored some motion vector data for future use in B-pictures.

This fixes Bugzilla bug #57.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-10-22 22:51:00 +02:00
Michael Niedermayer
e60779b18c Merge remote-tracking branch 'mans/dnxhd'
* mans/dnxhd:
  dnxhddec: cache luma/chroma_weight*qscale tables for last qscale
  dnxhddec: merge ac_{index,run}_flags
  dnxhddec: store 2*level+1 in ac_level tables
  dnxhddec: rearrange decode_dct_block loop

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 22:18:12 +02:00
Justin Ruggles
e53eecd0e7 twinvq: check output buffer size before decoding 2011-10-22 15:38:05 -04:00
Justin Ruggles
5ed6817822 twinvq: return an error when the packet size is too small 2011-10-22 15:38:05 -04:00
Mans Rullgard
e40cde01dc vorbisenc: simplify floor_classes[] table
This avoids an indirection in the table.  Data size is slightly
smaller on 64-bit systems, 8 bytes larger on 32-bit.

Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 214a85202b2eedbef06357e40278c2f56aa2c6e3)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 20:46:56 +02:00
Mans Rullgard
d4999e0a79 dca: ARMv6 optimised decode_blockcode()
Signed-off-by: Mans Rullgard <mans@mansr.com>
(cherry picked from commit 08e3dea3f7f69309574dafc0af6671615e909720)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 20:28:45 +02:00
Mans Rullgard
9c48a7cc52 ratecontrol: replace VLAs with malloc/free
(cherry picked from commit 2c6bd7d1f992989d1cc108534e0896771b86824f)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 19:45:31 +02:00
Mans Rullgard
39b0165f9e er: replace VLA with malloc/free
(cherry picked from commit 5c2d016a85453f121285d125ed049a8cf492855a)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 19:45:22 +02:00
Michael Niedermayer
364f367921 avcodec: add ifdef from qatar that could not be merged previously due to compilation failure.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 16:51:40 +02:00
Nicolas George
0e138745f7 codec_names: invoke preprocessor on avcodec.h.
This fixes failures when codec IDs are defined conditionally,
for example when scheduling for a major bump.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 16:49:49 +02:00
Dustin Brody
9abc98737f lavc: replace references to deprecated AVCodecContext.error_recognition to use AVCodecContext.err_recognition
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-22 14:49:55 +02:00
Dustin Brody
5ea0001f9e lavc: translate non-flag-based er options into flag-based ef options at codec open
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-22 14:49:22 +02:00
Dustin Brody
c8dad9a694 add -err_filter AVOptions to access flag-based error recognition
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-22 14:49:14 +02:00
Michael Niedermayer
d8cae42d72 Merge remote-tracking branch 'mans/ac3'
* mans/ac3:
  ac3enc: slightly faster quantize_mantissas_blk_ch()
  ac3enc: NEON optimised sum_square_butterfly_float
  ac3enc: neon optimised sum_square_butterfly_int32
  ac3enc: move inner loop of compute_rematrixing_strategy to ac3dsp

Conflicts:
	libavcodec/ac3enc_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 11:11:08 +02:00
Ronald S. Bultje
b0b3231074 h264_weight: initialize "height" function argument properly.
Right now it's not actually initialized on 32-bit, leading to crashes
on win32.
2011-10-22 00:23:24 -07:00
Michael Niedermayer
aedc908601 Merge remote-tracking branch 'qatar/master'
* qatar/master: (35 commits)
  flvdec: Do not call parse_keyframes_index with a NULL stream
  libspeexdec: include system headers before local headers
  libspeexdec: return meaningful error codes
  libspeexdec: cosmetics: reindent
  libspeexdec: decode one frame at a time.
  swscale: fix signed shift overflows in ff_yuv2rgb_c_init_tables()
  Move timefilter code from lavf to lavd.
  mov: add support for hdvd and pgapmetadata atoms
  mov: rename function _stik, some indentation cosmetics
  mov: rename function _int8 to remove ambiguity, some indentation cosmetics
  mov: parse the gnre atom
  mp3on4: check for allocation failures in decode_init_mp3on4()
  mp3on4: create a separate flush function for MP3onMP4.
  mp3on4: ensure that the frame channel count does not exceed the codec channel count.
  mp3on4: set channel layout
  mp3on4: fix the output channel order
  mp3on4: allocate temp buffer with av_malloc() instead of on the stack.
  mp3on4: copy MPADSPContext from first context to all contexts.
  fmtconvert: port float_to_int16_interleave() 2-channel x86 inline asm to yasm
  fmtconvert: port int32_to_float_fmul_scalar() x86 inline asm to yasm
  ...

Conflicts:
	libavcodec/arm/h264dsp_init_arm.c
	libavcodec/h264.c
	libavcodec/h264.h
	libavcodec/h264_cabac.c
	libavcodec/h264_cavlc.c
	libavcodec/h264_ps.c
	libavcodec/h264dsp_template.c
	libavcodec/h264idct_template.c
	libavcodec/h264pred.c
	libavcodec/h264pred_template.c
	libavcodec/x86/h264dsp_mmx.c
	libavdevice/Makefile
	libavdevice/jack_audio.c
	libavformat/Makefile
	libavformat/flvdec.c
	libavformat/flvenc.c
	libavutil/pixfmt.h
	libswscale/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 01:16:41 +02:00
Justin Ruggles
b19e0c2b4e libspeexdec: include system headers before local headers 2011-10-21 17:07:05 -04:00
Justin Ruggles
a470fe80ba libspeexdec: return meaningful error codes 2011-10-21 17:07:04 -04:00
Justin Ruggles
14bc60dbae libspeexdec: cosmetics: reindent 2011-10-21 17:07:04 -04:00
Justin Ruggles
7eeaa6796b libspeexdec: decode one frame at a time.
This allows for knowing the output size before decoding even when there is no
header (e.g. FLV). Otherwise we would have to do a preliminary full frame
decode to determine the number of frames-per-packet.
2011-10-21 17:07:04 -04:00
Justin Ruggles
95891804bf mp3on4: check for allocation failures in decode_init_mp3on4() 2011-10-21 12:34:43 -04:00
Justin Ruggles
180bf988bc mp3on4: create a separate flush function for MP3onMP4.
The correct decoder private context needs to be used.
This fixes mp3on4 playback and seeking in avplay.
2011-10-21 12:33:15 -04:00
Justin Ruggles
53c8443ad2 mp3on4: ensure that the frame channel count does not exceed the codec channel
count.

This also allows for checking output data size based on the actual
number of channel instead of the maximum number of channels.
2011-10-21 12:32:35 -04:00
Justin Ruggles
1183d6cd98 mp3on4: set channel layout 2011-10-21 12:29:51 -04:00
Justin Ruggles
fff0f831e0 mp3on4: fix the output channel order 2011-10-21 12:29:51 -04:00
Justin Ruggles
f507dd067a mp3on4: allocate temp buffer with av_malloc() instead of on the stack.
Avoids allocating unnecessary memory and ensures proper alignment.
2011-10-21 12:29:51 -04:00
Justin Ruggles
cb72230dfa mp3on4: copy MPADSPContext from first context to all contexts.
Fixes segfault when decoding multi-channel MP3onMP4 files.
2011-10-21 12:29:51 -04:00
Justin Ruggles
aad3429d4e fmtconvert: port float_to_int16_interleave() 2-channel x86 inline asm to yasm 2011-10-21 10:13:05 -04:00
Justin Ruggles
4e8e262476 fmtconvert: port int32_to_float_fmul_scalar() x86 inline asm to yasm 2011-10-21 10:13:05 -04:00
Justin Ruggles
185142a5ea fmtconvert: check compile-time x86 instruction set flags 2011-10-21 10:13:05 -04:00
Justin Ruggles
708ab7dd69 fmtconvert: port float_to_int16() x86 inline asm to yasm 2011-10-21 10:13:05 -04:00
Justin Ruggles
45add995de fmtconvert: fix and extend documentation for float_interleave() 2011-10-21 10:13:05 -04:00
Mans Rullgard
b034c95cc1 h264: fix ppc/altivec build
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-21 12:49:01 +01:00
Jean First
b8bb9c0267 Enable multithreding when decoding with libopenjpeg
Enable multithreding when decoding with libopenjpeg

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-10-21 01:07:22 -07:00
Ronald S. Bultje
27209bb108 h264: mark some MC functions with av_always_inline instead of inline.
This actually causes them to be inlined, leading to a significant
speedup (1-1.5% in my measurements).
2011-10-21 01:05:10 -07:00
Ronald S. Bultje
05fb63f5a0 H264: have hl_motion() and its callees take a chroma_idc argument. 2011-10-21 01:05:07 -07:00
Ronald S. Bultje
c2d337429c H264: change weight/biweight functions to take a height argument.
Neon parts by Mans Rullgard <mans@mansr.com>.
2011-10-21 01:00:45 -07:00
Ronald S. Bultje
229d263cc9 Support for lossless and inter H264 4:2:2. 2011-10-21 01:00:45 -07:00
Baptiste Coudurier
76741b0e56 h264: 4:2:2 intra decoding support
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-10-21 01:00:41 -07:00
Ronald S. Bultje
dc49bf1270 sws/pixfmt/pixdesc: add support for yuv420p9le/be. 2011-10-21 00:58:01 -07:00
Ronald S. Bultje
ce42a04884 vp8: fix up handling of segmentation_maps in reference frames.
Associate segmentation_map[] with reference frame, rather than
decoding instance. This fixes cases where the map would be free()'ed
on e.g. a size change in one thread, whereas the other thread was
still accessing it. Also, it fixes cases where threads overwrite data
that is still being referenced by the previous thread, who thinks that
it's part of the frame previously decoded by the next thread.
2011-10-21 00:17:58 -07:00
Michael Niedermayer
ce253edf4e fix shared lib build
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-21 02:27:33 +02:00
Michael Niedermayer
dd8ffc1925 Merge remote-tracking branch 'qatar/master'
* qatar/master: (47 commits)
  lavc: hide private symbols.
  lavc: deprecate img_get_alpha_info().
  lavc: use avpriv_ prefix for ff_toupper4.
  lavc: use avpriv_ prefix for ff_copy_bits and align_put_bits.
  lavc: use avpriv_ prefix for ff_ac3_parse_header.
  lavc: use avpriv_ prefix for ff_frame_rate_tab.
  lavc: rename ff_find_start_code to avpriv_mpv_find_start_code
  lavc: use avpriv_ prefix for ff_split_xiph_headers.
  lavc: use avpriv_ prefix for ff_dirac_parse_sequence_header.
  lavc: use avpriv_ prefix for some dv symbols used in lavf.
  lavc: use avpriv_ prefix for some flac symbols used in lavf.
  lavc: use avpriv_ prefix for some mpeg4audio symbols used in lavf.
  lavc: use avpriv_ prefix for some mpegaudio symbols used in lavf.
  lavc: use avpriv_ prefix for ff_aac_parse_header().
  lavf: hide private symbols.
  lavf: use avpriv_ prefix for some dv functions.
  lavf: use avpriv_ prefix for ff_new_chapter().
  avcodec: add CODEC_CAP_DELAY note to avcodec_decode_audio3() documentation
  avcodec: clarify the CODEC_CAP_DELAY note in avcodec_decode_video2()
  avcodec: clarify documentation of CODEC_CAP_DELAY
  ...

Conflicts:
	configure
	doc/general.texi
	libavcodec/Makefile
	libavcodec/aacdec.c
	libavcodec/allcodecs.c
	libavcodec/avcodec.h
	libavcodec/dv.c
	libavcodec/dvdata.c
	libavcodec/dvdata.h
	libavcodec/libspeexenc.c
	libavcodec/mpegvideo.c
	libavcodec/version.h
	libavformat/avidec.c
	libavformat/dv.c
	libavformat/dv.h
	libavformat/flvenc.c
	libavformat/mov.c
	libavformat/mp3enc.c
	libavformat/oggparsespeex.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-21 02:01:26 +02:00
Michael Niedermayer
b4d0e7804d aacdec:only overwrite configuration if theres a actual change.
Fixes Ticket574

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-20 21:57:52 +02:00
Anton Khirnov
65d3176aaf lavc: hide private symbols.
Overhead as reported by rbelf-size goes from 90860 to 20204.
2011-10-20 21:06:58 +02:00
Anton Khirnov
586657c20a lavc: deprecate img_get_alpha_info().
It's never been touched or used in any way since it was added in 2003
and only works for PIX_FMT_PAL8, which makes me conclude that nobody's
ever used it.
2011-10-20 21:06:58 +02:00
Anton Khirnov
0842d58998 lavc: use avpriv_ prefix for ff_toupper4.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov
9f51c682ee lavc: use avpriv_ prefix for ff_copy_bits and align_put_bits.
They are used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov
6f89efeaa7 lavc: use avpriv_ prefix for ff_ac3_parse_header.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov
9138a130cd lavc: use avpriv_ prefix for ff_frame_rate_tab.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov
773375c3d0 lavc: rename ff_find_start_code to avpriv_mpv_find_start_code
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov
357db4c263 lavc: use avpriv_ prefix for ff_split_xiph_headers.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov
2361e59b98 lavc: use avpriv_ prefix for ff_dirac_parse_sequence_header.
It's used in lavf.
2011-10-20 21:06:58 +02:00
Anton Khirnov
242c73a0fd lavc: use avpriv_ prefix for some dv symbols used in lavf.
Specifically, ff_dv_frame_profile and ff_dv_codec_profile.
2011-10-20 21:06:58 +02:00
Anton Khirnov
d9cca9fc6a lavc: use avpriv_ prefix for some flac symbols used in lavf.
Specifically, ff_flac_parse_streaminfo, ff_flac_is_extradata_valid and
ff_flac_parse_block_header
2011-10-20 21:06:58 +02:00
Anton Khirnov
59a9a23581 lavc: use avpriv_ prefix for some mpeg4audio symbols used in lavf.
Specifically, ff_mpeg4audio_sample_rates, ff_mpeg4audio_get_config and
ff_copy_pce_data
2011-10-20 21:06:57 +02:00
Anton Khirnov
82ab61f901 lavc: use avpriv_ prefix for some mpegaudio symbols used in lavf.
Specifically, ff_mpa_freq_tab, ff_mpa_bitrate_tab, ff_mpa_decode_header,
ff_mpegaudio_decode_header.
2011-10-20 21:06:57 +02:00
Anton Khirnov
73ae27e17b lavc: use avpriv_ prefix for ff_aac_parse_header().
It's used in lavf.
2011-10-20 21:06:57 +02:00
Justin Ruggles
68d3aec819 avcodec: add CODEC_CAP_DELAY note to avcodec_decode_audio3() documentation 2011-10-20 13:30:08 -04:00
Justin Ruggles
352fc5f128 avcodec: clarify the CODEC_CAP_DELAY note in avcodec_decode_video2() 2011-10-20 13:30:08 -04:00
Justin Ruggles
ffeeae923b avcodec: clarify documentation of CODEC_CAP_DELAY 2011-10-20 13:30:08 -04:00
Justin Ruggles
1baa25c7da shorten: fix end-of-stream decoding.
enable CODEC_CAP_DELAY to flush any remaining frames in the buffer.

Stop decoding when the FN_QUIT command is found so that a trailing seek table
isn't decoded as a normal frame.

decode all channels in the same call to avcodec_decode_audio3() so that
decoding will not stop after the first channel of the last frame.

Updated FATE reference. More valid audio is now decoded.
2011-10-20 13:09:46 -04:00
Justin Ruggles
d03f9f65c0 shorten: do not use block size to determine whether to read the header. 2011-10-20 13:09:46 -04:00
Justin Ruggles
882dafe9b6 shorten: check output buffer size before decoding 2011-10-20 13:09:26 -04:00
Justin Ruggles
bd7f7d6c78 shorten: use av_clip_int16() for output sample clipping 2011-10-20 13:09:26 -04:00
Justin Ruggles
069ada46c1 shorten: use bytestream functions to decode the embedded WAVE header 2011-10-20 13:09:25 -04:00
Justin Ruggles
c25762fcf1 shorten: add some comments 2011-10-20 13:09:25 -04:00
Justin Ruggles
15d146c958 shorten: merge decoding of FN_DIFF* subblocks into decode_subframe_lpc() 2011-10-20 13:09:25 -04:00
Justin Ruggles
034f42dfce cosmetics: remove some needless commented-out stuff 2011-10-20 13:09:25 -04:00
Justin Ruggles
cfa317f67d shorten: validate block size 2011-10-20 13:09:25 -04:00
Justin Ruggles
45d7d31fb9 shorten: move declaration of 'ret' to top of shorten_decode_frame() 2011-10-20 13:09:25 -04:00
Justin Ruggles
a8055992c0 shorten: pass on error value from allocate_buffers() instead of returning -1 2011-10-20 13:09:25 -04:00
Justin Ruggles
9e5e2c2d01 shorten: check for realloc failure 2011-10-20 13:09:25 -04:00
Justin Ruggles
fe31a637f1 shorten: move decoding of prediction order and applying of global offset to
decode_subframe_lpc().
2011-10-20 13:09:25 -04:00
Justin Ruggles
0f97c5014b shorten: only calculate output size when returning decoded samples, otherwise
just set data_size to zero.
2011-10-20 13:09:25 -04:00
Justin Ruggles
e9e37f2d10 cosmetics: reindent 2011-10-20 13:09:25 -04:00
Justin Ruggles
9000b6db22 shorten: separate processing of audio commands from non-audio commands 2011-10-20 13:09:25 -04:00
Justin Ruggles
07745485ef shorten: skip some fields in the WAV header embedded in the shorten header.
fixes incorrect bitrate reporting and potential misreporting of the number of
channels.
2011-10-20 13:09:25 -04:00
Justin Ruggles
a1f7885a8b shorten: split reading of file header into a separate functions 2011-10-20 13:09:25 -04:00
Justin Ruggles
b606a01759 libspeexenc: add libspeex encoder 2011-10-20 13:06:15 -04:00
Diego Biurrun
265980dabc x86: Move some variable declarations below the appropriat #ifdef.
This avoids some unused variable warnings with YASM disabled.
2011-10-20 16:19:27 +02:00
Diego Biurrun
2cb7c81669 x86: Fix linking of ProRes DSP ASM with YASM disabled. 2011-10-20 16:19:13 +02:00
Michael Niedermayer
8daf04add4 aacdec: support chan config =1 stereo files
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-20 13:54:54 +02:00
Michael Niedermayer
d0492578c8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  presets: rename presets directory
  lavc: make avcodec_get_context_defaults3 "officially" public
  lavf: replace av_new_stream->avformat_new_stream part II.
  lavf,lavd: replace av_new_stream->avformat_new_stream part I.
  lavf: add avformat_new_stream as a replacement for av_new_stream.
  Use correct scaling table for bwd-pred MVs in second B-field
  Ut Video decoder
  Makefile: change presets extension to .avpreset
  lavfi: add rgbtestsrc source, ported from MPlayer libmpcodecs
  lavfi: add testsrc source
  AVOptions: add documentation.
  presets: update libx264 ffpresets

Conflicts:
	Changelog
	doc/APIchanges
	doc/ffmpeg.texi
	ffpresets/libx264-ipod320.ffpreset
	ffpresets/libx264-ipod640.ffpreset
	ffserver.c
	libavcodec/avcodec.h
	libavcodec/options.c
	libavcodec/version.h
	libavdevice/libdc1394.c
	libavfilter/avfilter.h
	libavfilter/vsrc_testsrc.c
	libavformat/flvdec.c
	libavformat/riff.c
	libavformat/version.h
	libavformat/wtv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-20 02:34:51 +02:00
Michael Niedermayer
1373923ddf v210dec: remove debuging #include
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-20 00:35:45 +02:00
Diego Biurrun
463ea05ab2 avcodec.h: Move G.729/G.723 CODEC_IDs to the correct section.
This is done conditional to the libavcodec version to avoid ABI breaks.
2011-10-20 00:19:19 +02:00
Diego Biurrun
26af0953c0 Only test-compile w32pthreads.h if W32THREADS are available.
This fixes 'make checkheaders' on non-W32THREADS systems.
2011-10-20 00:18:29 +02:00
Matthew Einhorn
e662b263d9 Fixes avpicture_layout to not write past buffer end.
avpicture_get_size() returns the size of buffer required for avpicture_layout.
For pseudo-paletted formats (gray8...) this size does not include the palette.
However, avpicture_layout doesn't know this and still writes the palette. Consequently,
avpicture_layout writes passed the length of the buffer. This fixes it
by fixing avpicture_layout so that it doesn't write the palette for these formats.

Signed-off-by: Matthew Einhorn <moiein2000@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 23:28:04 +02:00
Clément Bœsch
057161d39b mpeg12: remove '[' and ']' around last timecode field to match std representation. 2011-10-19 20:56:02 +02:00
Kieran Kunhya
44d27736fc Add V210 SIMD
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 20:26:55 +02:00
Kieran Kunhya
b1766c170c Move x264asm to libavutil.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 20:26:55 +02:00
Anton Khirnov
f0eeff708a lavc: make avcodec_get_context_defaults3 "officially" public
Deprecate avcodec_get_context_defaults/avcodec_get_context_defaults2
2011-10-19 17:02:11 +02:00
Mashiat Sarker Shakkhar
73447eb4bd Use correct scaling table for bwd-pred MVs in second B-field
When scaling backward predicted MVs in second B-field, the scaling table is
opposite of that for P field pictures; i.e. first field P table will be used as
second field B table and second field P table will be used as first field B
table. This is not documented in the spec, but exists in the ref. decoder.

This fixes SA10139.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-10-19 16:42:47 +03:00
Kostya Shishkov
0d8506b8c5 Ut Video decoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-19 08:24:19 +02:00
Michael Niedermayer
f0ff822ccb mpeg12dec: Support invalid field motion types,
Fixes Ticket539

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 03:29:15 +02:00
Michael Niedermayer
d6c21c7a64 mpeg12dec: assert no field frame mess
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 03:28:25 +02:00
Michael Niedermayer
70d9fb6963 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  sunrast: Check for out of bounds reads
  lavc: rename AV_ER_* options to AV_EF_* and rename AGGRESSIVE to BUFFER
  lavc: replace API-bump-triggered AVCodecContext field change with shorter, non-conflicting name
  Add libvpx presets.
  doc/avtools: add forgotten part to stream specifiers description
  swscale: prevent overflow during initialization
  g722: Add a fate test for the encoder
  fate: Add a target for creating a 16000 Hz mono synthetic audio file
  macosx: use the default surface on newer sdl

Conflicts:
	ffplay.c
	libavcodec/avcodec.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-19 02:08:59 +02:00
Laurent Aimar
d97ca425ef sunrast: Check for out of bounds reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-18 22:49:43 +02:00
Michael Niedermayer
284aa07932 flv: Initialize initial frame to 16
Fixes Ticket563

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-18 14:56:59 +02:00
Michael Niedermayer
73fb23dc5a mpeg12_parser: make mpegvideo_split() more robust
I just found this issue while debuging, i dont have a testcase.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-18 14:08:06 +02:00
Michael Niedermayer
4e3303cf31 mpeg12dec: dont consider parsing extradata as having achived sync.
Fixes Ticket67

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-18 13:56:29 +02:00
Dustin Brody
6b1f93face lavc: rename AV_ER_* options to AV_EF_* and rename AGGRESSIVE to BUFFER
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-18 12:28:30 +02:00
Dustin Brody
204e6132d2 lavc: replace API-bump-triggered AVCodecContext field change with shorter, non-conflicting name
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-18 12:28:22 +02:00
Derek Buitenhuis
1de357d6da libutvideo: Add Ut Video Decoder Wrapper
Add a wrapper for libutvideo's decoder.

This supports decoding the following FOURCCs:
    ULY0 - 4:2:0 YCbCr
    ULY2 - 4:2:2 YCbCr
    ULRG - RGB
    ULRA - RGBA

Also, bump version.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-17 23:44:12 +02:00
Michael Niedermayer
7613d3b8fe mpeg4parser: fix initial qp precission
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-17 13:01:23 +02:00
Clément Bœsch
efb1ce28b2 mpeg12: use drop_frame_flag to fix timecode debug format. 2011-10-17 09:14:36 +02:00
Clément Bœsch
539399d4d1 AVOptions: rename remaining FF_OPT_TYPE_* to AV_OPT_TYPE_*. 2011-10-17 07:33:10 +02:00
Michael Niedermayer
266172aaf9 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  w32threads: support for frame multithreading
  avcodec: remove stray @deprecated comment

Conflicts:
	libavcodec/utils.c
	libavcodec/w32thread.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-17 02:29:40 +02:00
Michael Niedermayer
74dbb5388e av_tempfile: Pass int log_offset, void *log_ctx
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 21:51:28 +02:00
Steven Walters
27237d524e w32threads: support for frame multithreading
Replace our incomplete w32threads implementation with x264's pthreads
w32threads wrapper.
Relicensed to LGPL with kind permission by Pegasys Inc.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-16 21:45:16 +02:00
Mans Rullgard
b44522981c avcodec: remove stray @deprecated comment
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-16 16:22:05 +01:00
Michael Niedermayer
885158c887 Move av_tempfile() into libavutil, it is a generically usefull thing and its small.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 17:12:37 +02:00
Michael Niedermayer
2822361ed1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  prores: get correct size for coded V plane if alpha is present
  prores: do not set pixel format on codec init
  pthread: prevent updating AVCodecContext from itself in frame_thread_free
  pthread: copy coded frame dimensions in update_context_from_thread
  vp8: prevent read from uninitialized memory in decode_mvs
  vp8: force reallocation in update_thread_context after frame size change
  vp8: fix return value if update_dimensions fails
  matroskadec: fix out of bounds write
  adpcmdec: calculate actual number of output samples for each decoder.
  adpcmdec: check remaining buffer size before decoding next block in the ADPCM IMA WAV decoder.
  adpcmdec: do not terminate early in ADPCM IMA Duck DK3 decoder.
  adpcmdec: remove unneeded buf_size==0 check.
  adpcmdec: remove unneeded zeroing of *data_size
  dnxhdenc: fixed signed multiplication overflow

Conflicts:
	tests/ref/fate/prores-alpha
	tests/ref/fate/truemotion1-24

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 04:02:09 +02:00
JULIAN GARDNER
3e01c9b547 dvbsubdec: cosmetic change on how xpos is passed around
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 02:06:31 +02:00
Michael Niedermayer
7d2e4673b1 dvbsubdec: Fix 0xf0 end detection
Based on a change by JULIAN GARDNER

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 21:28:43 +02:00
JULIAN GARDNER
294ea2cfc6 dvbsub: add comments
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 20:30:54 +02:00
JULIAN GARDNER
8a6799d205 dvbsub: add dvb_encode_rle8()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 20:30:18 +02:00
JULIAN GARDNER
7fa1f02ce2 dvbsub: Move setting of *dvb_encode_rle() up
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 20:28:51 +02:00
JULIAN GARDNER
d5f4857a73 dvbsubdec:dvbsub_display_end_segment() move main loop under if() as its useless if false.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 20:16:31 +02:00
Mans Rullgard
91038cdbd1 prores: get correct size for coded V plane if alpha is present
The size check must be updated to take into account both manners
in which v_data_size might be set.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-15 14:59:44 +01:00
Mans Rullgard
cd14e297e6 prores: do not set pixel format on codec init
The pixel format is not known until the frame header is parsed.
Guessing it here only causes trouble for the caller if the guess
turns out to be wrong (and actually causes very wrong output by
avconv/avplay).

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-15 14:59:44 +01:00
Michael Niedermayer
2ed7e353bd h264: Workaround invalid flag combinations of 8x8 inference.
Fixes Ticket555

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 15:38:10 +02:00
Ronald S. Bultje
7b6883898f pthread: prevent updating AVCodecContext from itself in frame_thread_free
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Ronald S. Bultje
feadcd1bdc pthread: copy coded frame dimensions in update_context_from_thread
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Ronald S. Bultje
0f0b5d6434 vp8: prevent read from uninitialized memory in decode_mvs
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Ronald S. Bultje
5653579381 vp8: force reallocation in update_thread_context after frame size change
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Ronald S. Bultje
f05c2fb6eb vp8: fix return value if update_dimensions fails
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Michael Niedermayer
bd4ebbbbed Merge remote-tracking branch 'qatar/master'
* qatar/master:
  proresdsp: fix function prototypes.
  prores-idct: fix overflow in c code.
  fate: update prores-alpha ref after changing pix_fmt to yuv444p10le
  prores: add missing feature warning for alpha
  mov: 10l: Terminate string with 0 not '0'
  mov: Prevent illegal writes when chapter titles are very short.
  prores: add appropriate -fix_fmt parameter to FATE command
  riff: always generate a proper WAVEFORMATEX structure in ff_put_wav_header
  lavc: add a flag-based error_recognition field to AVCodecContext and deprecate non-flag-based ER field
  lavc: rename deprecation symbol FF_API_VERY_AGGRESSIVE to FF_API_ER

Conflicts:
	libavcodec/avcodec.h
	libavformat/mov.c
	tests/fate/prores.mak
	tests/ref/acodec/g726
	tests/ref/fate/prores-alpha

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 22:24:00 +02:00
Justin Ruggles
a62c0f94ee adpcmdec: calculate actual number of output samples for each decoder.
This also allows for removing some of the buf_size checks and using the
sample count for some of the decoding loops.
2011-10-14 15:53:41 -04:00
Justin Ruggles
439998e18b adpcmdec: check remaining buffer size before decoding next block in the
ADPCM IMA WAV decoder.
2011-10-14 15:53:41 -04:00
Justin Ruggles
ff5790c761 adpcmdec: do not terminate early in ADPCM IMA Duck DK3 decoder.
There are still 2 nibbles to decode once the last byte in the packet has been
read. Updated FATE reference.
2011-10-14 15:53:41 -04:00
Justin Ruggles
8140a1288f adpcmdec: remove unneeded buf_size==0 check.
This is already done by avcodec_decode_audio3()
2011-10-14 15:53:41 -04:00
Justin Ruggles
f7f7c1942b adpcmdec: remove unneeded zeroing of *data_size 2011-10-14 15:53:40 -04:00
Mans Rullgard
d341d5fd2c dnxhdenc: fixed signed multiplication overflow
The low 32 bits of a multiplication are the same for signed
and unsigned operands.  Casting to unsigned before multiplying
is thus equivalent while avoiding signed overflow, which is
undefined by the C99 standard.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-14 20:45:22 +01:00
Michael Niedermayer
4b9e9a57ee proresdec: rename to avoid confusion
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 21:45:14 +02:00
Ronald S. Bultje
05c8f119cc proresdsp: fix function prototypes.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-14 21:34:46 +02:00
Ronald S. Bultje
f78cd0c243 prores-idct: fix overflow in c code.
Fix the fate ref for prores-422_proxy by reverting the changes to it
in commit f492df0927

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-14 21:34:20 +02:00
Janne Grunau
19ec283f49 prores: add missing feature warning for alpha 2011-10-14 21:07:53 +02:00
JULIAN GARDNER
0f8d77199a dvbsubdec: add version checking
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 20:20:00 +02:00
JULIAN GARDNER
1fc7b0ed5a dvbsubdec: handle mode change page state
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 20:19:59 +02:00
JULIAN GARDNER
168a5d3b3c dvbsubdec: change the top_bottom correction
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 20:19:59 +02:00
JULIAN GARDNER
f12c7ad86d dvbsubdec: fix buf ptr in dvbsub_parse_region_segment()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 20:19:59 +02:00
JULIAN GARDNER
7e0f4f9d0f dvbsubdec: bottom_field_len fix
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 20:19:59 +02:00
JULIAN GARDNER
55f17d3175 dvbsubdec: fix x/y_pos checks
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 20:19:59 +02:00
JULIAN GARDNER
24fb1b64a6 dvbsubdec: outcomment debug stuff in dvbsub_parse_pixel_data_block()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 20:19:59 +02:00
JULIAN GARDNER
b522d2a3b7 dvbsubdec: dirty handkling
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 20:19:59 +02:00
JULIAN GARDNER
eea064aea6 dvbsubdec: Fix variable increments & checking in dvbsub_read_*bit_string()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 20:12:40 +02:00
Michael Niedermayer
337496980e prores: use C idct for fate as the SSE code is not matching the SSE* code down at the bits
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 19:48:41 +02:00
Dustin Brody
582f231142 lavc: add a flag-based error_recognition field to AVCodecContext and deprecate non-flag-based ER field
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-14 09:00:21 +02:00
Dustin Brody
ac90a71459 lavc: rename deprecation symbol FF_API_VERY_AGGRESSIVE to FF_API_ER
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-14 09:00:04 +02:00
Michael Niedermayer
91eb1b1525 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  prores: add FATE tests
  id3v2: reduce the scope of some non-globally-used symbols/structures
  id3v2: cosmetics: move some declarations before the places they are used
  shorten: remove the flush function.
  shn: do not allow seeking in the raw shn demuxer.
  avformat: add AVInputFormat flag AVFMT_NO_BYTE_SEEK.
  avformat: update AVInputFormat allowed flags
  avformat: don't unconditionally call ff_read_frame_flush() when trying to seek.
  truespeech: use sizeof() instead of hardcoded sizes
  truespeech: remove unneeded variable, 'consumed'
  truespeech: simplify truespeech_read_frame() by using get_bits()
  truespeech: decode directly to output buffer instead of a temp buffer
  truespeech: check to make sure channels == 1
  truespeech: check for large enough output buffer rather than truncating output
  truespeech: remove unneeded zero-size packet check.
  mlpdec: return meaningful error codes instead of -1
  mlpdec: remove unnecessary wrapper function
  mlpdec: only calculate output size once
  mlpdec: validate that the reported channel count matches the actual output channel count
  pcm: reduce pointer type casting
  ...

Conflicts:
	libavformat/avformat.h
	libavformat/id3v2.c
	libavformat/id3v2.h
	libavformat/utils.c
	libavformat/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 03:48:22 +02:00
Michael Niedermayer
8937afd39f proresdec: set CODEC_CAP_DR1, it appears this was forgotten.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-14 02:18:55 +02:00
Justin Ruggles
617a51f9b7 shorten: remove the flush function.
The shorten decoder does not support seeking.
2011-10-13 16:31:16 -04:00
Justin Ruggles
c6ac30c84b truespeech: use sizeof() instead of hardcoded sizes 2011-10-13 16:26:00 -04:00
Justin Ruggles
6d55506c8b truespeech: remove unneeded variable, 'consumed'
increment the 'buf' pointer instead, and consume the whole packet.
2011-10-13 16:26:00 -04:00
Justin Ruggles
b84048935e truespeech: simplify truespeech_read_frame() by using get_bits() 2011-10-13 16:25:59 -04:00
Justin Ruggles
5e5ce70f19 truespeech: decode directly to output buffer instead of a temp buffer 2011-10-13 16:25:59 -04:00
Justin Ruggles
3e7a176759 truespeech: check to make sure channels == 1 2011-10-13 16:25:59 -04:00
Justin Ruggles
a8f8db2636 truespeech: check for large enough output buffer rather than truncating output 2011-10-13 16:25:59 -04:00
Justin Ruggles
595cf1a1aa truespeech: remove unneeded zero-size packet check.
This is already checked in avcodec_decode_audio3()
2011-10-13 16:25:59 -04:00
Justin Ruggles
82be06bbb3 mlpdec: return meaningful error codes instead of -1 2011-10-13 15:13:02 -04:00
Justin Ruggles
e1b8d88d52 mlpdec: remove unnecessary wrapper function 2011-10-13 15:13:02 -04:00
Justin Ruggles
37b67f1bff mlpdec: only calculate output size once 2011-10-13 15:13:02 -04:00
Justin Ruggles
caa845851d mlpdec: validate that the reported channel count matches the actual output
channel count
2011-10-13 15:13:02 -04:00
Mans Rullgard
b45eb9d619 pcm: reduce pointer type casting
Making 'samples' a pointer to uint8_t simplifies the DECODE
macro and reduces the amount of type casting overall.

This also fixes some signed overflows on left shift.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-13 17:56:13 +01:00
Michael Niedermayer
072a62b50a Merge remote-tracking branch 'hexene/stagefright'
* hexene/stagefright:
  tools/build_libstagefright: fetch android system headers and libraries
  libstagefright: reindent after previous commit

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 18:04:02 +02:00
Mans Rullgard
f59bb3d8f3 mathops: remove undefined behaviour from sign_extend()
This function intentionally overflows the signed range on
the left shift.  Using this type-punning avoids errors from
the overflow checker without disabling this test globally.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-13 15:40:16 +01:00
Kostya Shishkov
42feaf4070 vc1: explicitly zero interlaced mode coding variables for progressive mode
Both v->fcm and v->field_mode are used in common code, now they won't be
reset for progressive frame after interlaced one causing writing past the
frame end for example.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-10-13 07:35:07 -07:00
Michael Niedermayer
f884ef00de Merge remote-tracking branch 'qatar/master'
* qatar/master: (31 commits)
  tiffenc: initialize forgotten avctx.
  avplay: free the active audio packet at exit.
  avplay: free rdft data used for spectrogram analysis.
  log.h: make AVClass a named struct
  fix ac3 encoder documentation
  vc1: more prettyprinting cosmetics
  vc1: prettyprint some tables
  vc1: K&R formatting cosmetics
  AVOptions: bump minor and add APIchanges entry.
  cmdutils/avtools: simplify show_help() by using av_opt_child_class_next()
  AVOptions: rename FF_OPT_TYPE_* => AV_OPT_TYPE_*
  Remove all uses of deprecated AVOptions API.
  AVOptions: add av_opt_next, deprecate av_next_option.
  AVOptions: add functions for evaluating option strings.
  AVOptions: split get_number().
  AVOptions: add av_opt_get*, deprecate av_get*.
  AVOptions: add av_opt_set*().
  AVOptions: add new API for enumerating children.
  rv34: move inverse transform functions to DSP context
  flvenc: Write the right metadata entry count
  ...

Conflicts:
	avconv.c
	cmdutils.c
	doc/APIchanges
	ffplay.c
	ffprobe.c
	libavcodec/ac3dec.c
	libavcodec/h264.c
	libavcodec/libvpxenc.c
	libavcodec/libx264.c
	libavcodec/mpeg12enc.c
	libavcodec/options.c
	libavdevice/libdc1394.c
	libavdevice/v4l2.c
	libavfilter/vf_drawtext.c
	libavformat/flvdec.c
	libavformat/mpegtsenc.c
	libavformat/options.c
	libavutil/avutil.h
	libavutil/opt.c
	libswscale/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-13 06:00:03 +02:00
Jean First
47a1d794db tiffenc: initialize forgotten avctx. 2011-10-12 18:20:18 -04:00
Michael Niedermayer
dc66951bb2 proresdsp: fix rounding
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 22:18:35 +02:00
Michael Niedermayer
67dad8e7b1 proresdsp: Correct credits to point to the Author and not just the code this is based on.
Also change Libav to FFmpeg

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 22:09:40 +02:00
Michael Niedermayer
96b0ddeeaa dct-test: Test ff_prores_idct_put_10_sse2()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 22:08:15 +02:00
Michael Niedermayer
dfeeb85b65 dct-test: add transpose permutation support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 22:08:14 +02:00
Michael Niedermayer
370d7ef2c7 proresdsp: Optimize series of padds out
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 22:08:14 +02:00
Michael Niedermayer
6398c0f7e1 proresdsp.asm: Remove useless instructions. 2011-10-12 22:07:52 +02:00
Elvis Presley
bebaf4ea1f prores: change license to LGPL, merge some parts.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 19:55:25 +02:00
Elvis Presley
b87d882578 proresdsp.asm: drop useless shifts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 19:42:53 +02:00
Elvis Presley
ef47c608be x86/proresdsp-init: add forgotten HAVE_YASM
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 19:42:53 +02:00
Kostya Shishkov
50f9721904 vc1: more prettyprinting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-10-12 17:33:58 +02:00
Kostya Shishkov
94e725ca2b vc1: prettyprint some tables
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-10-12 17:33:58 +02:00
Kostya Shishkov
b18c68ad25 vc1: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-10-12 17:33:58 +02:00
Anton Khirnov
145f741e11 AVOptions: rename FF_OPT_TYPE_* => AV_OPT_TYPE_* 2011-10-12 16:51:16 +02:00
Anton Khirnov
641c7afe3c AVOptions: add new API for enumerating children.
This will allow the caller to enumerate child contexts in a generic way
and since the API is recursive, it also allows for deeper nesting (e.g.
AVFormatContext->AVIOContext->URLContext)

This will also allow the new setting/reading API to transparently apply
to children contexts.
2011-10-12 16:51:16 +02:00
Janne Grunau
1bca8f4bc5 rv34: move inverse transform functions to DSP context 2011-10-12 15:52:22 +02:00
Mans Rullgard
318efbfc10 h264: change unsupported bit depth message to error level
Unsupported bit depth is certainly an error the user will
want to know about.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-12 12:39:52 +01:00
Mans Rullgard
c682514a8f qdm2: fix signed multiplication overflow
This code relies on the result wrapping as for unsigned
values, and the sign is not used.  Thus an unsigned type
is proper here.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-12 12:28:08 +01:00
Anton Khirnov
46c3c53bae libx264: support yuv422/444 output. 2011-10-12 08:27:36 +02:00
Michael Niedermayer
b81f8880e0 Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  fix AC3ENC_OPT_MODE_ON/OFF
  h264: fix HRD parameters parsing
  prores: implement multithreading.
  prores: idct sse2/sse4 optimizations.
  swscale: use aligned move for storage into temporary buffer.
  prores: extract idct into its own dspcontext and merge with put_pixels.
  h264: fix invalid shifts in init_cavlc_level_tab()
  intfloat_readwrite: fix signed addition overflows
  mov: do not misreport empty stts
  mov: cosmetics, fix for and if spacing
  id3v2: fix NULL pointer dereference
  mov: read album_artist atom
  mov: fix disc/track numbers and totals
  doc: fix references to obsolete presets directories for avconv/ffmpeg
  flashsv: return more meaningful error value
  flashsv: fix typo in av_log() message
  smacker: validate channels and sample format.
  smacker: check buffer size before reading output size
  smacker: validate number of channels
  smacker: Separate audio flags from sample rates in smacker demuxer.
  ...

Conflicts:
	cmdutils.h
	doc/ffmpeg.texi
	libavcodec/Makefile
	libavcodec/motion_est_template.c
	libavformat/id3v2.c
	libavformat/mov.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-12 05:40:57 +02:00
Daniel Kristjansson
f36ce75e35 pcm: Print number of bits in the error message of unsupported DVD PCM formats. 2011-10-12 00:47:43 +02:00
John Stebbins
5f3fb59953 fix AC3ENC_OPT_MODE_ON/OFF
The values were reversed.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
2011-10-11 14:57:58 -04:00
Mans Rullgard
fdba370f8a h264: fix HRD parameters parsing
The bit_rate_value_minus1 and cpb_size_value_minus1 elements
allow a wider range than get_ue_golomb() supports.  This
adds a get_ue_golomb_long() function supporting up to 31
leading zeros, which is the maximum for these syntax
elements, and uses it in decode_hrd_parameters().

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 18:24:51 +01:00
Ronald S. Bultje
91f4732913 prores: implement multithreading.
60% speedup (overall decoding time) at 2 threads, and another 60%
speedup at 4 threads.
2011-10-11 07:50:49 -07:00
Ronald S. Bultje
e3f530feca prores: idct sse2/sse4 optimizations.
~3.0-3.5x as fast as original C version, 1.6x as fast overall.
2011-10-11 07:50:48 -07:00
Ronald S. Bultje
92fb52d906 prores: extract idct into its own dspcontext and merge with put_pixels. 2011-10-11 07:50:48 -07:00
Mans Rullgard
8babfc033e h264: fix invalid shifts in init_cavlc_level_tab()
The level_code expression includes a shift which is invalid in
those cases where the value is not used.  Moving the calculation
to the branch where the result is used avoids these.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 15:00:56 +01:00
Diego Biurrun
4b7f49082f flashsv: return more meaningful error value 2011-10-11 14:28:23 +02:00
Diego Biurrun
f9a9c8f9bc flashsv: fix typo in av_log() message 2011-10-11 14:28:23 +02:00
Michael Niedermayer
5174032953 g723.1: use memmove() where overlapping src and dst can happen.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-11 13:55:09 +02:00
Michael Niedermayer
7b5c03064d vc1: enable interlaced p fields again, they seem no longer to crash with out of array writes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-11 13:55:09 +02:00
Michael Niedermayer
4509be3d2f vc1: reset interlaced variables, prevent another bunch of crashes.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-11 13:55:09 +02:00
Justin Ruggles
ff1f89de2d smacker: validate channels and sample format. 2011-10-11 07:48:16 -04:00
Justin Ruggles
cf044f8bff smacker: check buffer size before reading output size 2011-10-11 07:48:16 -04:00
Justin Ruggles
e190e453bd smacker: validate number of channels 2011-10-11 07:48:16 -04:00
Mans Rullgard
be1242a3f2 h264: fix detection of optional trailing PPS elements
The PPS may contain a few trailing elements whose presence is
only signalled by data remaining after the the mandatory part
has been parsed.  The current code fails to take into account
the rbsp_trailing_bits() when deciding whether to parse these
optional elements.  Assuming no unnecessary padding bytes are
passed to this function, the optional elements are present if
either more than 8 extra bits remain or the remaining bits do
not form a valid rbsp_trailing_bits() after the mandatory PPS
elements have been parsed.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 12:05:51 +01:00
Mans Rullgard
c79d2a20ba sipr: fix get_bits(0) calls
Zero-length get_bits() is undefined, must check before calling.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 12:05:51 +01:00
Mans Rullgard
cb668476ab motion_est: make MotionExtContext.map_generation unsigned
The way this value is used, it should be an unsigned type.
While the numerical value has no meaning, unsigned wraparound
is relied upon.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-11 12:05:50 +01:00
Michael Niedermayer
1e4d60353c vc1: disable parts of the interlaced code due to security issues.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-11 03:42:51 +02:00
Michael Niedermayer
41f55277fa Merge remote-tracking branch 'qatar/master'
* qatar/master: (34 commits)
  h264: reset h->ref_count in case of errors in ff_h264_decode_ref_pic_list_reordering()
  error_resilience: fix the check for missing references in ff_er_frame_end() for H264
  4xm: prevent NULL dereference with invalid huffman table
  4xmdemux: prevent use of uninitialized memory
  4xm: clear FF_INPUT_BUFFER_PADDING_SIZE bytes in temporary buffers
  ptx: check for out of bound reads
  tiffdec: fix out of bound reads/writes
  eacmv: check for out of bound reads
  eacmv: fix potential pointer arithmetic overflows
  adpcm: fix out of bound reads due to integer overflow
  anm: prevent infinite loop
  avsdemux: check for out of bound writes
  avs: check for out of bound reads
  avsdemux: check for corrupted data
  AVOptions: refactor set_number/write_number
  AVOptions: cosmetics, rename static av_set_number2() to write_number().
  AVOptions: cosmetics, move and rename static av_set_number().
  AVOptions: split av_set_string3 into opt type-specific functions
  avidec: fix signed overflow in avi_sync()
  mxfdec: Fix some buffer overreads caused by the misuse of AVPacket related functions.
  ...

Conflicts:
	Changelog
	configure
	libavcodec/ptx.c
	libavcodec/ra144.c
	libavcodec/vaapi_vc1.c
	libavcodec/vc1.c
	libavcodec/version.h
	libavformat/4xm.c
	libavformat/avidec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-11 03:42:43 +02:00
Laurent Aimar
4c7a232fc8 h264: reset h->ref_count in case of errors in ff_h264_decode_ref_pic_list_reordering()
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:36 +02:00
Laurent Aimar
e8ac80fb2c error_resilience: fix the check for missing references in ff_er_frame_end() for H264
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:36 +02:00
Laurent Aimar
1b1182ce97 4xm: prevent NULL dereference with invalid huffman table
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:36 +02:00
Laurent Aimar
8d518a9c4f 4xm: clear FF_INPUT_BUFFER_PADDING_SIZE bytes in temporary buffers
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:35 +02:00
Laurent Aimar
dc64f203a6 ptx: check for out of bound reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:37:15 +02:00
Laurent Aimar
04a845caa7 tiffdec: fix out of bound reads/writes
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:13 +02:00
Laurent Aimar
46cb2f6a29 eacmv: check for out of bound reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:13 +02:00
Laurent Aimar
8df8a87e3f eacmv: fix potential pointer arithmetic overflows
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:12 +02:00
Laurent Aimar
c7f89064e2 adpcm: fix out of bound reads due to integer overflow
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:12 +02:00
Laurent Aimar
2475f1a83c anm: prevent infinite loop
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:12 +02:00
Laurent Aimar
de049a95f4 avs: check for out of bound reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-10 21:36:12 +02:00
Baptiste Coudurier
11a32d53ca dnxhddec: handle cid change in bitstream. 2011-10-10 09:40:26 -07:00
Kostya Shishkov
109d8aa1e6 vc1: K&R reformatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-10-10 18:35:35 +02:00
Justin Ruggles
8f8f5ae991 ra288: log an error message when output buffer is too small.
also return AVERROR(EINVAL) instead of -1.
2011-10-10 11:38:58 -04:00
Justin Ruggles
fa6be04bf7 ra288: use a more descriptive calculation for output data size 2011-10-10 11:38:58 -04:00
Justin Ruggles
f10524d51c ra144: use macro constants to make the code more understandable. 2011-10-10 11:38:58 -04:00
Justin Ruggles
cadd4d332a ra144dec: log an error message when output buffer is too small.
also return AVERROR(EINVAL) instead of -1.
2011-10-10 11:38:58 -04:00
Justin Ruggles
80bdf7e0b7 ra144dec: use a more descriptive calculation for output data size 2011-10-10 11:38:57 -04:00
Mashiat Sarker Shakkhar
51757ac789 lavc: Micro version bump for VC1 interlaced decoding support
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-10 15:26:37 +02:00
Mashiat Sarker Shakkhar
cad16562c8 vc1dec: interlaced stream decoding support 3/3
Cosmetics: break some lines and reformat TODOs

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-10 15:26:37 +02:00
Mashiat Sarker Shakkhar
f0c02e1cbc vc1dec: interlaced stream decoding support 2/3
Cosmetics: reformat some data tables in vc1data.c

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-10 15:26:37 +02:00
Mashiat Sarker Shakkhar
d5b015e42d vc1dec: interlaced stream decoding support 1/3
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-10-10 15:26:37 +02:00
Gwenole Beauchesne
53efb758c0 vaapi: Fix VC-1 decoding (reconstruct bitstream TTFRM correctly).
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-10-10 14:11:02 +02:00
Carl Eugen Hoyos
0b3e070035 Bump minor for G.723.1 encoder and muxer. 2011-10-10 10:25:07 +02:00
Michael Niedermayer
0a23067ab4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mpeg4dec: use unsigned type for startcode in ff_mpeg4_decode_picture_header
  mpeg124: use sign_extend() function
  ac3dec: use get_sbits() instead of manually sign-extending
  4xm: fix signed overflow
  wmavoice: fix a signed overflow
  mpegvideo_enc: fix a signed overflow
  crc: fix signed overflow
  fate: run avconv with -nostats flag
  avtools: add -v as alias for -loglevel
  avconv: always print stats with AV_LOG_INFO
  doc/avconv: add forgotten output/per-stream info to -filter
  avconv: add -stats option to enable/disable printing encoding progress
  avconv: in output_packet() don't set decoded_data_size for video.
  avconv: remove pointless always true condition
  avconv: factorize common code in transcode_init()
  zmbv: remove memcpy() of decoded frame
  mpeg12enc: use sign_extend() function
  h264pred: use unsigned types for pixel values, fix signed overflows
  h264: fix signed overflows in x*0x01010101 expressions
  h264pred: remove unused variables

Conflicts:
	avconv.c
	tests/fate-run.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-10 03:50:58 +02:00
Mohamed Naufal
ef64c45c94 g723.1 encoder
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-10 02:58:18 +02:00
Mans Rullgard
581810f502 mpeg4dec: use unsigned type for startcode in ff_mpeg4_decode_picture_header
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-09 23:28:54 +01:00
Mans Rullgard
aa498fef0d mpeg124: use sign_extend() function
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-09 23:22:14 +01:00
Mans Rullgard
633ddb8519 ac3dec: use get_sbits() instead of manually sign-extending
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-09 23:21:31 +01:00
Mans Rullgard
84dda40762 4xm: fix signed overflow
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-09 23:13:35 +01:00