8246 Commits

Author SHA1 Message Date
Diego Biurrun
5cc5152e80 Employ FF_ARRAY_ELEMS instead of manually calculating array length.
(cherry picked from commit 6376362d15ccbc02e15d0b3b7a7a5d862efd6b91)
2011-09-21 17:57:56 +02:00
Asad Mehmood
64556c200e flvdec: Remove AVFMTCTX_NOHEADER if both flags and metadata claim 1 stream
If there is only 1 stream in an flv avformat_find_stream_info will continually
read until probesize is reached. This should stop it reading if the metadata
also claims there to be 1 stream.
(cherry picked from commit bcc531f04a0590732d42da133c11c138e8d08b59)
2011-09-21 17:57:01 +02:00
Stefan Fritsch
77dafced71 http: Fix decetion of range support in HTTP servers
currently libavformat only allows seeking if a request with "Range:
0-" results in a 206 reply from the HTTP server which includes a
Content-Range header. But according to RFC 2616, the server may also
reply with a normal 200 reply (which is more efficient for a request
for the whole file). In fact Apache HTTPD 2.2.20 has changed the
behaviour in this way and it looks like this change will be kept in
future versions. The fix for libavformat is easy: Also look at the
Accept-Ranges header.
(cherry picked from commit 31dfc4959816aa4637e50c7f79660c75205ef84c)
2011-09-21 17:56:15 +02:00
David Goldwich
dd606be909 lavf: Fix context pointer in av_open_input_stream when avformat_open_input fails
Signed-off-by: David Goldwich <david.goldwich@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 63d64228a7f31d534e3bcae87cbd37f4a0ae2dd6)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-21 14:28:57 +02:00
Laurent Aimar
8c987d8291 oggdec: fix out of bound write in the ogg demuxer
Between ogg_save() and ogg_restore() calls, the number of streams
could have been reduced.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
(cherry picked from commit 0e7efb9d23c3641d50caa288818e8c27647ce74d)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-21 14:28:50 +02:00
Laurent Aimar
6ddb12b688 Fixed size given to init_get_bits().
init_get_bits() takes a number of bits and not a number of bytes as
its size argument.

Signed-off-by: Alex Converse <alex.converse@gmail.com>
(cherry picked from commit b59efc94347ccf0cbc2ff14a5a9e99819c5bdc4d)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-21 14:28:31 +02:00
Laurent Aimar
4482ee9d9c Fixed off by one packet size allocation in the smacker demuxer.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit a92d0fa5d234582583d41b67dddecffc2c819573)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-13 17:25:50 +02:00
Laurent Aimar
2ac3aa129e Check for invalid packet size in the smacker demuxer.
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit e055932f5636a82275837968eea9c8fcb5bca474)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-13 17:25:45 +02:00
Laurent Aimar
1486e99b90 ape demuxer: fix segfault on memory allocation failure.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 273aab99bf7be2bcda95dd64101c2317ee0fcb99)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-13 17:25:41 +02:00
Kostya Shishkov
1125f26f83 smacker demuxer: handle possible av_realloc() failure.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 47a8589f7bc69d1a29da1dfdfbd0dfa78a9e31fd)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-13 17:25:16 +02:00
Luca Barbato
e30e0a16af flvenc: use int64_t to store offsets
Metadata currently is written only at the start of the file in normal
cases, when transcoding from a rtmp source metadata could be
written later and the offset recorded can exceed 32bit.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 7f5bf4fbaf1f2142547321a16358f9871fabdcc6)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 13:00:45 +02:00
Alex Converse
c5388d680e mxfdec: Include FF_INPUT_BUFFER_PADDING_SIZE when allocating extradata.
This prevents out of bounds reads when extradata is being decoded.
(cherry picked from commit 1f6f58d5855288492fc2640a9f1035c01c75d356)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:52:48 +02:00
Anton Khirnov
44b3f05309 lavf: fix segfault in av_open_input_stream()
ic is NULL in case of error.
(cherry picked from commit 13551ad1e336573e3732fdeaf25607c47244bb80)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:34:05 +02:00
Jindrich Makovicka
e308a91c9c mpegts: fix Continuity Counter error detection
According to MPEG-TS specs, the continuity_counter shall not be
incremented when the adaptation_field_control of the packet
equals '00' or '10'.

Signed-off-by: Jindrich Makovicka <jindrich.makovicka@nangu.tv>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 8923cfa328e8eb565aebcfe8672b276fd1c19bf7)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:32:56 +02:00
Tomas Härdin
91f9c7917c gxf: Fix 25 fps DV material in GXF being misdetected as 50 fps
Set DV packet durations using fields_per_frame.
This requires turning gxf_stream_info into the demuxer's context for access to the value in gxf_packet().
Since MPEG-2 seems to work fine this done only for DV.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 99fecc64b064a013559d3d61f7d9790e3c95c80e)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:30:04 +02:00
Alex Converse
baec70e16f adts: Fix PCE copying.
Parse the extension flag bit when reading the MPEG4 AudioSpecificConfig.

This has nothing to do with SBR/PS contradictory to what was noted when it was removed.
(cherry picked from commit 7f01a4192cdf4565eadee457f76e6b5196e35e0b)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:26:10 +02:00
Clément Bœsch
694279bfd2 mxfenc: fix ignored drop flag in binary timecode representation.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
(cherry picked from commit 4d5e7ab5c48451404038706ef3113c9925a83087)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-11 12:23:05 +02:00
Gavin Kinsey
e6df35b3be Prevent double free of side_data when AVFMT_FLAG_KEEP_SIDE_DATA flag is set
(cherry picked from commit d64066f6e88c827e33002b2c7740efd62cd5ba7f)
2011-09-08 23:48:08 +02:00
Michael Niedermayer
9e40946edf rtpdec_asf: fix memleak
Based on a suggestion by Ronald S. Bultje
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit a2b66a366d7d9d7dacc217601b5e4406624f91ea)
2011-09-07 16:57:33 +02:00
Michael Niedermayer
076a8dfd41 rtpdec_asf: fix memleak
Based on a suggestion by Ronald S. Bultje
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit a2b66a366d7d9d7dacc217601b5e4406624f91ea)
2011-09-07 16:57:24 +02:00
Michael Niedermayer
61f55565fb rtpdec_asf: fix memleak
Based on a suggestion by Ronald S. Bultje
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit a2b66a366d7d9d7dacc217601b5e4406624f91ea)
2011-09-07 16:57:15 +02:00
Michael Niedermayer
aedef891fc Fix memory corruption in case of memory allocation failure in av_probe_input_buffer()
Reported-by: Tanami Ohad
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 941bb552c6e08b40eb7d7842df19285cd650edd0)
2011-09-07 15:11:55 +02:00
Michael Niedermayer
f601bf4004 rtp: Fix integer underflow that could allow remote code execution.
Fixes MSVR-11-0088
Credit:  Jeong Wook Oh of Microsoft and Microsoft Vulnerability Research (MSVR)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit ba9a7e0d71bd34f8b89ae99322b62a310be163a6)
2011-09-07 15:11:55 +02:00
Michael Niedermayer
21d99be9dc Merge branch 'release/0.8' into release/0.7
* release/0.8: (21 commits)
  rtp: Fix integer underflow that could allow remote code execution.
  cavsdec: avoid possible crash with crafted input
  vf_scale: apply the same transform to the aspect during init that is applied per frame
  Fix memory corruption in case of memory allocation failure in av_probe_input_buffer()
  Make all option parsing functions match the function pointer type through which they are called.
  mjpegdec; even better RSTn skiping Fixes Ticket426
  jpegdec: better rst skiping Fixes Ticket426
  mpeg4: fix another packed divx issue. Fixes getting_stuck.avi
  mpeg4: adjust dummy frame threashold for packed divx. Fixes Ticket427
  configure: add missing CFLAGS to fix building on the HURD
  cavs: fix some crashes with invalid bitstreams
  jpegdec: actually search for and parse RSTn
  Fix compilation with --disable-avfilter. (cherry picked from commit 67a8251690a17f05630eb6f45a73db0f0e806c72)
  libavfilter: fix --enable-small
  0.8.2
  cavs: fix oCERT #2011-002 FFmpeg/libavcodec insufficient boundary check
  Fix possible crash when decoding mpeg streams.
  Bink: clip AC coefficients during dequantization.
  ffmpeg: fix passlogfile regression
  Fix several security issues in matroskadec.c (MSVR-11-0080).
  ...

Conflicts:
	Doxyfile
	RELEASE
	VERSION

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 15:04:56 +02:00
Michael Niedermayer
c2a2ad133e rtp: Fix integer underflow that could allow remote code execution.
Fixes MSVR-11-0088
Credit:  Jeong Wook Oh of Microsoft and Microsoft Vulnerability Research (MSVR)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit ba9a7e0d71bd34f8b89ae99322b62a310be163a6)
2011-09-07 15:01:30 +02:00
Michael Niedermayer
f597825052 Fix memory corruption in case of memory allocation failure in av_probe_input_buffer()
Reported-by: Tanami Ohad
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 941bb552c6e08b40eb7d7842df19285cd650edd0)
2011-09-07 14:20:53 +02:00
Reimar Döffinger
95345e942c Avoid crash due to ic being NULL if avformat_open_input fails.
This updates the code to match current master.
Should fix trac issue #410.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-08-23 19:47:19 +02:00
Michael Niedermayer
22d841becd Merge branch 'master' into oldabi
* master: (780 commits)
  ffmpeg: Fix doxygen comments for MetadataMap
  filters.texi: fix wrong references in the "Filtergraph syntax" section
  yadif: correct documentation on the parity parameter
  mpegvideo.h: remove the 1 line difference to qatar
  applehttp: fix variant discard logic
  Fix possible crash when decoding mpeg streams.
  h263dec: Fix asserts broken by the elimination of FF_COMMON_FRAME.
  avidec: skip seek pos adjustment for non interleaved files. Fixes Ticket327
  lsws: remove deprecated and unused stuff after the 0->1 major bump
  cosmetics: remove some stray comments from AVCodec declarations
  cosmetics: fix indentation/alignment in AVCodec declarations
  Abort if command offset decreases, avoids potential endless loop.
  Warn when falling back to unreliable UMF fps tag.
  Detect NI-avi at playtime like mplayer. Fixes Ticket333
  avidec: Fix XAN DPCM demuxing.
  Fix a possible miscompilation of cabac with old (broken) compilers.
  Fix -loop_input.
  Set bits_per_coded_sample when encoding ADPCM.
  vf_boxblur: call avfilter_draw_slice() at the end of draw_slice()
  vf_boxblur: fix out-of-buffer access when h > w
  ...

Conflicts:
	ffmpeg.c
	libavcodec/avcodec.h
	libavcodec/opt.h
	libavcodec/version.h
	libavdevice/avdevice.h
	libavfilter/avfilter.h
	libavformat/avformat.h
	libavformat/aviobuf.c
	libavformat/rtsp.c
	libavformat/udp.c
	libavformat/utils.c
	libavformat/version.h
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-05 13:02:20 +02:00
Michael Niedermayer
84a6abd954 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  applehttp: fix variant discard logic
  h263dec: Fix asserts broken by the elimination of FF_COMMON_FRAME.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-04 20:59:36 +02:00
Luca Barbato
1bf6cb85be applehttp: fix variant discard logic
The v->ctx is always not NULL now, check for streams presence to
mark the read_header state.

Fixes bug #25, possibly introduced by 603b8bc
2011-08-04 11:21:33 +02:00
Michael Niedermayer
72b0c9f55f avidec: skip seek pos adjustment for non interleaved files.
Fixes Ticket327

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-04 01:33:40 +02:00
Reimar Döffinger
1816addc4e Warn when falling back to unreliable UMF fps tag.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-08-03 20:06:38 +02:00
Michael Niedermayer
46eaaad8dd Detect NI-avi at playtime like mplayer.
Fixes Ticket333

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-03 19:02:33 +02:00
Michael Niedermayer
652c772981 avidec: Fix XAN DPCM demuxing.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-03 19:02:33 +02:00
Michael Niedermayer
1d186e9e12 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Revert "swscale: use 15-bit intermediates for 9/10-bit scaling."
  swscale: use 15-bit intermediates for 9/10-bit scaling.
  dct32: Add SSE2 ASM optimizations
  Correct chroma vector calculation for RealVideo 3.
  lavf: Add an option to discard corrupted frames
  mpegts: Mark wrongly-sized packets as corrupted
  mpegts: Move scan test to handle_packets
  mpegts: Mark corrupted packets
  mpegts: Reset continuity counter on seek
  mpegts: Fix for continuity counter
  mpegts: Silence "can't seek" warning on unseekable
  apichange: add an entry for AV_PKT_FLAG_CORRUPT
  avpacket: signal possibly corrupted packets
  mpeg4videodec: remove dead code that would have detected erroneous encoding
  aac: Remove some suspicious illegal memcpy()s from LTP.
  bink: Eliminate unnecessary shadow declaration.

Conflicts:
	doc/APIchanges
	libavcodec/version.h
	libavformat/avformat.h
	libavformat/options.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-02 22:12:18 +02:00
Zohar Kelrich
73e8e8dbf9 lavf: Add an option to discard corrupted frames
Signed-off-by: Zohar Kelrich <lumimies@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-02 02:52:41 +02:00
Zohar Kelrich
5081514269 mpegts: Mark wrongly-sized packets as corrupted
Signed-off-by: Zohar Kelrich <lumimies@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-02 02:52:41 +02:00
Zohar Kelrich
cdb9884a63 mpegts: Move scan test to handle_packets
This fixes an issue where packets which start being read
while reading the header stick around after a seek.

Signed-off-by: Zohar Kelrich <lumimies@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-02 02:52:27 +02:00
Zohar Kelrich
ce9e31655e mpegts: Mark corrupted packets
Signed-off-by: Zohar Kelrich <lumimies@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-02 02:43:22 +02:00
Zohar Kelrich
c64f80b0e8 mpegts: Reset continuity counter on seek
Signed-off-by: Zohar Kelrich <lumimies@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-02 02:43:22 +02:00
Zohar Kelrich
8b9df201df mpegts: Fix for continuity counter
Make continuity counter respect discontinuity flag
and null packets. Unpack the adaptation_field_control field.

Signed-off-by: Zohar Kelrich <lumimies@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-02 02:43:22 +02:00
Zohar Kelrich
be9c00615b mpegts: Silence "can't seek" warning on unseekable
Do not try to seek when we already know we are not allowed to.
Silences warning that always happens when streaming.

Signed-off-by: Zohar Kelrich <lumimies@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-02 02:43:21 +02:00
Carl Eugen Hoyos
1c5480651e Support FourCC DreX as MPEG4 ASP. 2011-08-01 01:23:39 +02:00
Carl Eugen Hoyos
222b333ed5 Cosmetics: Restore alphabetical order. 2011-08-01 00:58:49 +02:00
Carl Eugen Hoyos
9b60b076fb Support muxing MP1, MP2 and MP3 in caf. 2011-08-01 00:58:49 +02:00
Carl Eugen Hoyos
c6e0332f30 Explicitely fail for unsupported codecs when muxing caf. 2011-08-01 00:58:49 +02:00
Carl Eugen Hoyos
b35477a2f2 Use av_get_bits_per_sample() for mBitsPerChannel in caf. 2011-08-01 00:58:49 +02:00
Naoya OYAMA
7747a091f5 Cosmetics: Fix indentation. 2011-08-01 00:58:49 +02:00
Reimar Döffinger
b39f872a41 Limit fsize before adding to pointer.
This avoids a theoretically possible pointer arithmetic overflow
which would lead to a crash due to reading from NULL page.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-07-31 19:40:08 +02:00
Michael Niedermayer
faba79e080 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  mxfdec: Include FF_INPUT_BUFFER_PADDING_SIZE when allocating extradata.
  H.264: tweak some other x86 asm for Atom
  probe: Fix insane flow control.
  mpegts: remove invalid error check
  s302m: use nondeprecated audio sample format API
  lavc: use designated initialisers for all codecs.
  x86: cabac: add operand size suffixes missing from 6c32576

Conflicts:
	libavcodec/ac3enc_float.c
	libavcodec/flacenc.c
	libavcodec/frwu.c
	libavcodec/pictordec.c
	libavcodec/qtrleenc.c
	libavcodec/v210enc.c
	libavcodec/wmv2dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-30 06:46:08 +02:00