ffmpeg.git
7 years agoffv1: split clear_slice_state() out so individual slices can be cleared.
Michael Niedermayer [Fri, 20 Apr 2012 12:51:42 +0000 (14:51 +0200)]
ffv1: split clear_slice_state() out so individual slices can be cleared.

This allows us to clear outside of the main thread for example.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoffv1: split init_slice_state() out so individual slices can be inited
Michael Niedermayer [Fri, 20 Apr 2012 12:50:07 +0000 (14:50 +0200)]
ffv1: split init_slice_state() out so individual slices can be inited

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoffv1: Add a CRC check to the global header with version 1.3
Michael Niedermayer [Fri, 20 Apr 2012 12:47:24 +0000 (14:47 +0200)]
ffv1: Add a CRC check to the global header with version 1.3

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolavfi/mp: remove libmpcodecs mirror filter
Stefano Sabatini [Thu, 19 Apr 2012 22:32:20 +0000 (00:32 +0200)]
lavfi/mp: remove libmpcodecs mirror filter

The native libavfilter hflip filter does the same thing.

7 years agolavfi: add avfilter_unref_bufferp()
Robert Nagy [Mon, 16 Apr 2012 06:17:25 +0000 (08:17 +0200)]
lavfi: add avfilter_unref_bufferp()

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
7 years agoavidec: zero extradata padding
Michael Niedermayer [Thu, 19 Apr 2012 20:52:34 +0000 (22:52 +0200)]
avidec: zero extradata padding

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agomtvdec: check that the buf is large enough for probing
Michael Niedermayer [Thu, 19 Apr 2012 19:46:51 +0000 (21:46 +0200)]
mtvdec: check that the buf is large enough for probing

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agojvdec: Make sure there is enough data for the id string.
Michael Niedermayer [Thu, 19 Apr 2012 19:43:15 +0000 (21:43 +0200)]
jvdec: Make sure there is enough data for the id string.

Previously too little data could lead to a false detection.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Thu, 19 Apr 2012 18:46:37 +0000 (20:46 +0200)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  dv: Initialize encoder tables during encoder init.
  dv: Replace some magic numbers by the appropriate #define.
  FATE: pass the decoded output format and audio source file to enc_dec_pcm
  FATE: specify the input format when decoding in enc_dec_pcm()
  x86inc: support AVX abstraction for 2-operand instructions
  configure: detect PGI compiler and set suitable flags
  avconv: check for an incompatible changing channel layout
  avio: make AVIOContext.av_class pointer to const
  nutdec: add malloc check and fix const to non-const conversion warnings

Conflicts:
ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agobuild system: remove -wcast-qual
Michael Niedermayer [Wed, 18 Apr 2012 22:18:30 +0000 (00:18 +0200)]
build system: remove -wcast-qual

Generating warnings when casting const away leads to tight constraints
on the code if one wants to avoid warnings. This is especially true for
generic code that is supposed to work with both const and non const.
These tight constrains cause people to waste time trying to find a
way to write code so it doesnt generate any warning, while people
should rather spend their time thinking on how to write fast,
clean, maintainable and bug free code.
Removing this class of warnings fixes this issue.

Approved-by: Nicolas George <nicolas.george@normalesup.org>
Approved-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agomlpdec: set channel variables after checking them
Michael Niedermayer [Thu, 19 Apr 2012 17:50:54 +0000 (19:50 +0200)]
mlpdec: set channel variables after checking them

This fixes out of array reads

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoMake targa-in-mov QuickTime-compatible for more colour-spaces.
Carl Eugen Hoyos [Thu, 19 Apr 2012 15:29:17 +0000 (17:29 +0200)]
Make targa-in-mov QuickTime-compatible for more colour-spaces.

See ticket #1228.

7 years agoRemove .rodata alignment kludge for Mach-O if a recent enough yasm is used.
Nico Weber [Tue, 17 Apr 2012 18:26:01 +0000 (11:26 -0700)]
Remove .rodata alignment kludge for Mach-O if a recent enough yasm is used.

Yasm was fixed in its r2161 and yasm 0.8.0 (Apr 2010) contained this fix.
Nasm was fixed in 2.06 (Jun 2009):
https://groups.google.com/group/alt.lang.asm/browse_thread/thread/fcc85bbc3745d893

I tested with yasm  0.7.99 and yasm 1.2.0.7, where this works fine.

I also tested with nasm. The nasm shipping with Xcode is too old to understand
ffmpeg's assembly, before and after the patch. Nasm 2.10 fails to compile
fft_mmx.asm on trunk with

  libavcodec/x86/fft_mmx.asm:88: panic: section ".text" has already been specified with alignment 32, conflicts with new alignment of 16

but builds fine if I change the two alignment "16"s in x86inc.asm to "32". With this patch,
nasm 2.10 fails with

  libavcodec/x86/fft_mmx.asm:39: panic: section ".rodata" has already been specified with alignment 32, conflicts with new alignment of 16

instead, but again builds fine with s/16/32/.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoPrint unexpected length of flicvideo extradata.
Carl Eugen Hoyos [Thu, 19 Apr 2012 14:07:31 +0000 (16:07 +0200)]
Print unexpected length of flicvideo extradata.

7 years agomxfdec: Add missing break in frame layout parsing
Matthieu Bouron [Fri, 13 Apr 2012 13:32:55 +0000 (15:32 +0200)]
mxfdec: Add missing break in frame layout parsing

Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agomxf: Fix frame layout values
Matthieu Bouron [Fri, 13 Apr 2012 13:28:52 +0000 (15:28 +0200)]
mxf: Fix frame layout values

Reviewed-by: Tomas Härdin <tomas.hardin@codemill.se>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoh263dec: Check for width/height changes on frame skips too.
Michael Niedermayer [Thu, 19 Apr 2012 12:37:35 +0000 (14:37 +0200)]
h263dec: Check for width/height changes on frame skips too.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agodv: Initialize encoder tables during encoder init.
Diego Biurrun [Wed, 18 Apr 2012 16:47:16 +0000 (18:47 +0200)]
dv: Initialize encoder tables during encoder init.

7 years agoerror_concealment: Check that the reference is not NULL
Michael Niedermayer [Thu, 19 Apr 2012 10:14:08 +0000 (12:14 +0200)]
error_concealment: Check that the reference is not NULL

In normal picture decoding this does not need to be checked but as
error concealment is run in the case of errors the availability of
references is less certain. This may be fixed differently at some
point so that all references are always filled in before the EC
code, in which case this should then be changed to an assert()

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoerror_concealment: make sure mbaff flags are 0 as interlaced is not supported.
Michael Niedermayer [Thu, 19 Apr 2012 10:09:33 +0000 (12:09 +0200)]
error_concealment: make sure mbaff flags are 0 as interlaced is not supported.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoerror_concealment: switch asserts mostly to av_asserts.
Michael Niedermayer [Thu, 19 Apr 2012 10:02:29 +0000 (12:02 +0200)]
error_concealment: switch asserts mostly to av_asserts.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agovc1dec: check that coded slice positions and interlacing match.
Michael Niedermayer [Thu, 19 Apr 2012 09:02:22 +0000 (11:02 +0200)]
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>
7 years agoh263dec: always enable picture dimensions reverting check.
Michael Niedermayer [Thu, 19 Apr 2012 08:43:46 +0000 (10:43 +0200)]
h263dec: always enable picture dimensions reverting check.

This does not need to be limited to threads and may help with error
resilience on single thread

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agodv: Replace some magic numbers by the appropriate #define.
Diego Biurrun [Wed, 18 Apr 2012 14:05:17 +0000 (16:05 +0200)]
dv: Replace some magic numbers by the appropriate #define.

7 years agoFATE: pass the decoded output format and audio source file to enc_dec_pcm
Justin Ruggles [Tue, 17 Apr 2012 15:47:57 +0000 (16:47 +0100)]
FATE: pass the decoded output format and audio source file to enc_dec_pcm

This will allow decoding to md5 and doing a diff comparison to a reference
checksum instead of a fuzzy stddev or oneoff comparison.

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agoFATE: specify the input format when decoding in enc_dec_pcm()
Justin Ruggles [Tue, 17 Apr 2012 01:06:00 +0000 (21:06 -0400)]
FATE: specify the input format when decoding in enc_dec_pcm()

The output format is not always the same as the file extension,
which is sometimes required for correct probing. We can avoid
probing by specifying the format since it is already known.

7 years agox86inc: support AVX abstraction for 2-operand instructions
Loren Merritt [Tue, 10 Apr 2012 14:40:38 +0000 (10:40 -0400)]
x86inc: support AVX abstraction for 2-operand instructions

Add cvtdq2ps and cvtps2dq to the AVX instruction list.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
7 years agoconfigure: detect PGI compiler and set suitable flags
Mans Rullgard [Wed, 18 Apr 2012 23:42:56 +0000 (00:42 +0100)]
configure: detect PGI compiler and set suitable flags

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agoavconv: check for an incompatible changing channel layout
Justin Ruggles [Tue, 17 Apr 2012 17:30:00 +0000 (13:30 -0400)]
avconv: check for an incompatible changing channel layout

The decoder can change the layout and channel count during decoding,
but currently we only validate that the two are compatible when opening
the codec. This checks for incompatibilities after each decoded frame.

7 years agoMerge remote-tracking branch 'hexene/stagefright'
Michael Niedermayer [Wed, 18 Apr 2012 23:58:26 +0000 (01:58 +0200)]
Merge remote-tracking branch 'hexene/stagefright'

* hexene/stagefright:
  libstagefright: avoid memory leak
  libstagefright: support more output pixel formats
  libstagefright: avoid potential deadlock on output MediaBuffer
  libstagefright: explicitly set positive timestamps as stagefright expects them so
  Merge branches 'stagefright' and 'stagefright-test' into stagefright-test

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoavio: make AVIOContext.av_class pointer to const
Mans Rullgard [Wed, 18 Apr 2012 20:01:15 +0000 (21:01 +0100)]
avio: make AVIOContext.av_class pointer to const

Fix this warning:
libavformat/aviobuf.c:663:20: warning: assignment discards qualifiers from pointer target type

Although this is a public header, it should remain source and
binary compatible.

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agonutdec: add malloc check and fix const to non-const conversion warnings
Mans Rullgard [Wed, 18 Apr 2012 19:48:36 +0000 (20:48 +0100)]
nutdec: add malloc check and fix const to non-const conversion warnings

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agolibstagefright: avoid memory leak
Mohamed Naufal [Wed, 18 Apr 2012 21:30:41 +0000 (03:00 +0530)]
libstagefright: avoid memory leak

7 years agoMake tiff-in-mov QuickTime-compatible for more colour-spaces.
Carl Eugen Hoyos [Wed, 18 Apr 2012 20:29:46 +0000 (22:29 +0200)]
Make tiff-in-mov QuickTime-compatible for more colour-spaces.

Fixes ticket #1228.

7 years agolibstagefright: support more output pixel formats
Mohamed Naufal [Wed, 18 Apr 2012 20:12:12 +0000 (01:42 +0530)]
libstagefright: support more output pixel formats

7 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Wed, 18 Apr 2012 20:08:28 +0000 (22:08 +0200)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  ppc: drop unused function dct_quantize_altivec()
  mpegaudiodec: Do not discard mp_decode_frame() return value.
  matroska: do not set invalid default duration if frame rate is zero
  mkv: use av_reduce instead of av_d2q for framerate estimation
  mkv: report average framerate as minimal as well
  avcodec_string: Favor AVCodecContext.codec over the default codec.
  cook: Make constants passed to AV_BE2NE32C() unsigned to avoid signed overflow.

Conflicts:
libavcodec/cook.c
libavcodec/ppc/mpegvideo_altivec.c
libavcodec/utils.c
libavformat/matroskadec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolibstagefright: avoid potential deadlock on output MediaBuffer
Mohamed Naufal [Wed, 18 Apr 2012 19:38:50 +0000 (01:08 +0530)]
libstagefright: avoid potential deadlock on output MediaBuffer

Maintain an output queue of AVFrames instead of MediaBuffers
so that the latter can be released early. This avoids a potential deadlock
between the stagefright decoder::read() and Stagefright_decode_frame()

7 years agoh263dec: Prevent dimension changes from leaking on errors in header parsing.
Michael Niedermayer [Wed, 18 Apr 2012 19:03:03 +0000 (21:03 +0200)]
h263dec: Prevent dimension changes from leaking on errors in header parsing.

This fixes crashes with frame threads caused by inconsistent context parameters.

Fixes Ticket1207

Found-by: John Villamil
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolibstagefright: explicitly set positive timestamps as stagefright expects them so
Mohamed Naufal [Wed, 18 Apr 2012 18:32:53 +0000 (00:02 +0530)]
libstagefright: explicitly set positive timestamps as stagefright expects them so

7 years agoppc: drop unused function dct_quantize_altivec()
Diego Biurrun [Mon, 2 Apr 2012 16:03:29 +0000 (16:03 +0000)]
ppc: drop unused function dct_quantize_altivec()

This also allows dropping some PPC-specific ugliness from dsputil.[ch].

7 years agompegaudiodec: Do not discard mp_decode_frame() return value.
Diego Biurrun [Thu, 5 Apr 2012 14:48:33 +0000 (16:48 +0200)]
mpegaudiodec: Do not discard mp_decode_frame() return value.

This fixes the warning:
libavcodec/mpegaudiodec.c:1704:14: warning: variable ‘out_size’ set but not used

7 years agodiracdec: check xybsep
Michael Niedermayer [Wed, 18 Apr 2012 14:49:46 +0000 (16:49 +0200)]
diracdec: check xybsep

Fixes division by 0

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoindeo: Make sure the to be used vlc table has been initilaized.
Michael Niedermayer [Wed, 18 Apr 2012 14:42:34 +0000 (16:42 +0200)]
indeo: Make sure the to be used vlc table has been initilaized.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoReset pts_correction state on codec flush.
Robert Nagy [Wed, 18 Apr 2012 12:32:27 +0000 (14:32 +0200)]
Reset pts_correction state on codec flush.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoogm: Fix division by 0
Michael Niedermayer [Wed, 18 Apr 2012 13:21:35 +0000 (15:21 +0200)]
ogm: Fix division by 0

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoh264: reset current_slice on context reinit
Michael Niedermayer [Wed, 18 Apr 2012 13:16:36 +0000 (15:16 +0200)]
h264: reset current_slice on context reinit

This fixes a null pointer dereference

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agolavf: check that the context to avformat_open_input() is valid.
Michael Niedermayer [Wed, 18 Apr 2012 11:49:07 +0000 (13:49 +0200)]
lavf: check that the context to avformat_open_input() is valid.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoAVoption doxy: clarify a few needs in relation to AVClass less structs.
Michael Niedermayer [Wed, 18 Apr 2012 08:19:45 +0000 (10:19 +0200)]
AVoption doxy: clarify a few needs in relation to AVClass less structs.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agomatroska: do not set invalid default duration if frame rate is zero
Mans Rullgard [Wed, 18 Apr 2012 12:48:20 +0000 (13:48 +0100)]
matroska: do not set invalid default duration if frame rate is zero

If a video track specifies a zero frame rate (invalid but occurs),
this results in a division by zero and subsequent undefined conversion
to integer.  Setting the default duration from the frame rate only
if the latter is greater than zero avoids such problems.

Signed-off-by: Mans Rullgard <mans@mansr.com>
7 years agoFix build dependencies for libvo-aac and libopencore-amrnb.
Alexander Bokovikov [Wed, 18 Apr 2012 08:32:13 +0000 (10:32 +0200)]
Fix build dependencies for libvo-aac and libopencore-amrnb.

7 years agoaacdec: drop channel reseting code.
Michael Niedermayer [Wed, 18 Apr 2012 07:43:13 +0000 (09:43 +0200)]
aacdec: drop channel reseting code.

its no longer needed and causes a race with the flv demuxer.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoaacdec: disable new chan_config guessing code from libav.
Michael Niedermayer [Wed, 18 Apr 2012 07:37:38 +0000 (09:37 +0200)]
aacdec: disable new chan_config guessing code from libav.

It causes more problems than it solves.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoaacdec: more verbose overread error message
Michael Niedermayer [Wed, 18 Apr 2012 07:36:41 +0000 (09:36 +0200)]
aacdec: more verbose overread error message

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agomkv: use av_reduce instead of av_d2q for framerate estimation
Luca Barbato [Tue, 17 Apr 2012 23:32:07 +0000 (16:32 -0700)]
mkv: use av_reduce instead of av_d2q for framerate estimation

It avoids some rounding errors.

7 years agoaacdec: reduce difference to alexs version of aacdec.c
Michael Niedermayer [Tue, 17 Apr 2012 22:50:18 +0000 (00:50 +0200)]
aacdec: reduce difference to alexs version of aacdec.c

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agomkv: report average framerate as minimal as well
Luca Barbato [Tue, 17 Apr 2012 22:47:22 +0000 (15:47 -0700)]
mkv: report average framerate as minimal as well

This is in line with other demuxers and overall seems more correct
than assuming codec time base.

7 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Tue, 17 Apr 2012 20:18:21 +0000 (22:18 +0200)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  aacenc: Fix issues with huge values of bit_rate.
  dv_tablegen: Drop unnecessary av_unused attribute from dv_vlc_map_tableinit().
  proresenc: multithreaded quantiser search
  riff: use bps instead of bits_per_coded_sample in the WAVEFORMATEXTENSIBLE header
  avconv: only set the "channels" option when it exists for the specified input format
  avplay: update get_buffer to be inline with avconv
  aacdec: More robust output configuration.
  faac: Fix multi-channel ordering
  faac: Add .channel_layouts
  rtmp: Support 'rtmp_playpath', an option which overrides the stream identifier
  rtmp: Support 'rtmp_app', an option which overrides the name of application
  avutil: add better documentation for AVSampleFormat

Conflicts:
libavcodec/aac.h
libavcodec/aacdec.c
libavcodec/aacenc.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoavcodec_string: Favor AVCodecContext.codec over the default codec.
Alex Converse [Tue, 17 Apr 2012 18:32:56 +0000 (11:32 -0700)]
avcodec_string: Favor AVCodecContext.codec over the default codec.

This improves output for formats with more than one AVCodec.

7 years agocook: Make constants passed to AV_BE2NE32C() unsigned to avoid signed overflow.
Alex Converse [Tue, 17 Apr 2012 01:48:39 +0000 (18:48 -0700)]
cook: Make constants passed to AV_BE2NE32C() unsigned to avoid signed overflow.

7 years agoindeo5: dont run the wavelet transform over partially decoded bands.
Michael Niedermayer [Tue, 17 Apr 2012 18:02:13 +0000 (20:02 +0200)]
indeo5: dont run the wavelet transform over partially decoded bands.

This fixes a null pointer dereference.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoyadif: Improve pts calculation for is_second.
Robert Nagy [Sun, 15 Apr 2012 15:12:02 +0000 (17:12 +0200)]
yadif: Improve pts calculation for is_second.

Tested-by: Robert Nagy <ronag89@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoCrystalHD: Set aspect ratio.
sebist [Tue, 17 Apr 2012 07:36:27 +0000 (09:36 +0200)]
CrystalHD: Set aspect ratio.

Signed-off-by: sebist <sebok.istvan@gmail.com>
Reviewed-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoCrystalHD: fix pStride value.
sebist [Tue, 17 Apr 2012 07:29:27 +0000 (09:29 +0200)]
CrystalHD: fix pStride value.

Signed-off-by: sebist <sebok.istvan@gmail.com>
Reviewed-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agonuv: check buffer size before checking content.
Michael Niedermayer [Tue, 17 Apr 2012 17:32:04 +0000 (19:32 +0200)]
nuv: check buffer size before checking content.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoavidec: Dont crash on avi packets that belong to dv streams in dv in avi
Michael Niedermayer [Tue, 17 Apr 2012 15:42:09 +0000 (17:42 +0200)]
avidec: Dont crash on avi packets that belong to dv streams in dv in avi

Fixes null pointer dereference

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoavidec: document early_exit argument
Michael Niedermayer [Tue, 17 Apr 2012 15:41:03 +0000 (17:41 +0200)]
avidec: document early_exit argument

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agomatroskadec: check headerstrip data availability.
Michael Niedermayer [Tue, 17 Apr 2012 15:12:22 +0000 (17:12 +0200)]
matroskadec: check headerstrip data availability.

Fixes null ptr dereference

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoaacenc: Fix issues with huge values of bit_rate.
Reimar Döffinger [Fri, 6 Apr 2012 13:25:05 +0000 (15:25 +0200)]
aacenc: Fix issues with huge values of bit_rate.

Do not pointlessly call ff_alloc_packet multiple times,
and fix an infinite loop by clamping the maximum
number of bits to target in the algorithm that does
not use lambda.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
7 years agocopy pts and format props between lavfi buffer and frame.
Robert Nagy [Sat, 14 Apr 2012 10:09:46 +0000 (12:09 +0200)]
copy pts and format props between lavfi buffer and frame.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agooggdec: Safety check against stream counts being inconsistent in seek()
Michael Niedermayer [Tue, 17 Apr 2012 12:44:06 +0000 (14:44 +0200)]
oggdec: Safety check against stream counts being inconsistent in seek()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agooggdec: Recreate streams only in the 1 stream case.
Michael Niedermayer [Tue, 17 Apr 2012 12:03:26 +0000 (14:03 +0200)]
oggdec: Recreate streams only in the 1 stream case.

Other cases are not supported and lead to inconsistencies which
can lead to out of array writes.

Reported-by: Dale Curtis <dalecurtis@chromium.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agodv_tablegen: Drop unnecessary av_unused attribute from dv_vlc_map_tableinit().
Diego Biurrun [Mon, 16 Apr 2012 16:58:11 +0000 (18:58 +0200)]
dv_tablegen: Drop unnecessary av_unused attribute from dv_vlc_map_tableinit().

7 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Tue, 17 Apr 2012 10:13:22 +0000 (12:13 +0200)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  indeo3: add parens around some macro arguments
  h264: use proper PROLOGUE statement for a function using 8 registers.
  doc: Update sample Vim config with suitable (function) indentation settings.
  dv: Merge dvquant.h into dvdata.c where all other DV tables reside.
  dv: Move static tables only used in one place to where they are used.
  graphparser: set next to NULL on an entry extracted from inputs list
  doc/filters: update documentation.
  avconv: flush decoders immediately after an EOF.
  avconv: send EOF to vsrc_buffer.
  avconv: reindent.

Conflicts:
doc/filters.texi
ffmpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agofate: libavutil tests do not require SAMPLES.
Nicolas George [Mon, 16 Apr 2012 11:19:07 +0000 (13:19 +0200)]
fate: libavutil tests do not require SAMPLES.

7 years agoparseutils: include errors in test output.
Nicolas George [Mon, 16 Apr 2012 10:07:48 +0000 (12:07 +0200)]
parseutils: include errors in test output.

7 years agoproresenc: multithreaded quantiser search
Kostya Shishkov [Sun, 15 Apr 2012 06:48:43 +0000 (08:48 +0200)]
proresenc: multithreaded quantiser search

7 years agoriff: use bps instead of bits_per_coded_sample in the WAVEFORMATEXTENSIBLE header
Justin Ruggles [Mon, 16 Apr 2012 16:14:25 +0000 (12:14 -0400)]
riff: use bps instead of bits_per_coded_sample in the WAVEFORMATEXTENSIBLE header

This matches the value for the plain WAVEFORMATEX header.
Also fixes stream copy to WAVE for non-16-bit raw pcm.

7 years agoavconv: only set the "channels" option when it exists for the specified input format
Justin Ruggles [Mon, 16 Apr 2012 16:51:24 +0000 (12:51 -0400)]
avconv: only set the "channels" option when it exists for the specified input format

This allows the user to specify an input channel layout without avconv aborting because the
"channels" option was not found.

7 years agoffmpeg: make max frames work again, after merge
Michael Niedermayer [Tue, 17 Apr 2012 01:54:49 +0000 (03:54 +0200)]
ffmpeg: make max frames work again, after merge

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agovf_thumbnail: colorspace changed from yv12 to rgb
Michael Niedermayer [Tue, 17 Apr 2012 01:24:32 +0000 (03:24 +0200)]
vf_thumbnail: colorspace changed from yv12 to rgb

Not fully investigated but thumbnail supports rgb and not yv12 so
this is better ...

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agofate: fix vp8 size change regression
Michael Niedermayer [Tue, 17 Apr 2012 01:20:37 +0000 (03:20 +0200)]
fate: fix vp8 size change regression

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agovsrc_buffer: fix null ptr segfault
Michael Niedermayer [Tue, 17 Apr 2012 01:19:57 +0000 (03:19 +0200)]
vsrc_buffer: fix null ptr segfault

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoavfiltergraph: More advanced heuristic to select colorspace.
Michael Niedermayer [Tue, 17 Apr 2012 01:18:51 +0000 (03:18 +0200)]
avfiltergraph: More advanced heuristic to select colorspace.

This fixes regressions caused by switching from ffmpegs system to avfilters.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agofate: gif: change checksum to bgr8 from rgb8 as thats what gets selected now
Michael Niedermayer [Tue, 17 Apr 2012 01:21:08 +0000 (03:21 +0200)]
fate: gif: change checksum to bgr8 from rgb8 as thats what gets selected now

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoimgconvert: fix regression with fate-gif colorspaces.
Michael Niedermayer [Tue, 17 Apr 2012 01:17:19 +0000 (03:17 +0200)]
imgconvert: fix regression with fate-gif colorspaces.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoffmpeg: fix regression with jpeg pix fmts
Michael Niedermayer [Tue, 17 Apr 2012 01:16:40 +0000 (03:16 +0200)]
ffmpeg: fix regression with jpeg pix fmts

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoffmpeg: fix regression with png
Michael Niedermayer [Tue, 17 Apr 2012 01:15:54 +0000 (03:15 +0200)]
ffmpeg: fix regression with png

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoffmpeg: choose_pix_fmt: pass target fmt in
Michael Niedermayer [Tue, 17 Apr 2012 01:15:19 +0000 (03:15 +0200)]
ffmpeg: choose_pix_fmt: pass target fmt in

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoMerge commit '3b266da3d35f3f7a61258b78384dfe920d875d29'
Michael Niedermayer [Tue, 17 Apr 2012 02:01:17 +0000 (04:01 +0200)]
Merge commit '3b266da3d35f3f7a61258b78384dfe920d875d29'

* commit '3b266da3d35f3f7a61258b78384dfe920d875d29':
  avconv: add support for complex filtergraphs.
  avconv: make filtergraphs global.
  avconv: move filtered_frame from InputStream to OutputStream.
  avconv: don't set output width/height directly from input value.
  avconv: move resample_{width,height,pix_fmt} to InputStream.
  avconv: remove a useless variable from OutputStream.
  avconv: get output pixel format from lavfi.
  graphparser: fix the order in which unlabeled input links are returned.
  avconv: change {input,output}_{streams,files} into arrays of pointers.
  avconv: don't pass input/output streams to some functions.

Conflicts:
cmdutils.c
cmdutils.h
doc/ffmpeg.texi
ffmpeg.c
ffplay.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
7 years agoavplay: update get_buffer to be inline with avconv
Luca Barbato [Mon, 16 Apr 2012 06:08:45 +0000 (23:08 -0700)]
avplay: update get_buffer to be inline with avconv

The buffer must have its dimension, pixel format and aspect ratio
set.

7 years agoaacdec: More robust output configuration.
Alex Converse [Tue, 10 Apr 2012 23:27:28 +0000 (16:27 -0700)]
aacdec: More robust output configuration.

Save the old output configuration (if it has been used
successfully) when trying a new configuration. If the new configuration
fails to decode, restore the last successful configuration.

7 years agofaac: Fix multi-channel ordering
Carl Eugen Hoyos [Wed, 25 Jan 2012 01:51:49 +0000 (02:51 +0100)]
faac: Fix multi-channel ordering

Signed-off-by: Alex Converse <alex.converse@gmail.com>
7 years agofaac: Add .channel_layouts
Alex Converse [Mon, 16 Apr 2012 17:35:11 +0000 (10:35 -0700)]
faac: Add .channel_layouts

7 years agomatroskadec: use av_grow_packet in merge_packets.
Nicolas George [Mon, 16 Apr 2012 16:02:02 +0000 (18:02 +0200)]
matroskadec: use av_grow_packet in merge_packets.

It ensures that the packet is properly padded
and makes the code simpler.

Fixes trac ticket #1223.

7 years agomem.c: fix wrong comment.
Reimar Döffinger [Sun, 15 Apr 2012 20:35:19 +0000 (22:35 +0200)]
mem.c: fix wrong comment.

Overwriting the av_malloc etc. functions is not easily
possible anymore, even for systems that support overriding
symbols in shared libraries in principle.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
7 years agoRespect -copyinkf for subtitles.
Reimar Döffinger [Sun, 15 Apr 2012 19:43:55 +0000 (21:43 +0200)]
Respect -copyinkf for subtitles.

Necessary to make it possible to copy teletext streams
(trac issue #531).

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
7 years agoAdd skip_to_keyframe stream variable.
Reimar Döffinger [Fri, 13 Apr 2012 22:17:30 +0000 (00:17 +0200)]
Add skip_to_keyframe stream variable.

This replaces the matroskadec one with the same name.
The advantage is not only easier reuse in other demuxers
but also that we can make the decisions after the parser.
This fixes seeking in files that mark the keyframes incorrectly,
for example the file in track ticket #1003.
The matroska variable is still kept to be able to complain
about such broken files.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
7 years agortmp: Support 'rtmp_playpath', an option which overrides the stream identifier
Samuel Pitoiset [Sun, 15 Apr 2012 19:50:50 +0000 (21:50 +0200)]
rtmp: Support 'rtmp_playpath', an option which overrides the stream identifier

This option is the stream identifier to play or to publish.
Sometimes the URL parser cannot determine the correct
playpath automatically, so it must be given explicitly
using this option (ie. -rtmp_playpath).

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agortmp: Support 'rtmp_app', an option which overrides the name of application
Samuel Pitoiset [Sun, 15 Apr 2012 19:49:48 +0000 (21:49 +0200)]
rtmp: Support 'rtmp_app', an option which overrides the name of application

This option is the name of application to connect on the RTMP server.
Sometimes the URL parser cannot determine the app name automatically,
so it must be given explicitly using this option (ie. -rtmp_app).

Signed-off-by: Martin Storsjö <martin@martin.st>
7 years agoavutil: add better documentation for AVSampleFormat
Justin Ruggles [Wed, 11 Apr 2012 16:44:26 +0000 (12:44 -0400)]
avutil: add better documentation for AVSampleFormat