Commit Graph

8765 Commits

Author SHA1 Message Date
Carl Eugen Hoyos
7e75f06182 Be less verbose about continuity check errors. 2011-10-09 22:47:35 +02:00
Michael Niedermayer
c5db8b4d09 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavf: fix signed overflow in avformat_find_stream_info()
  vp8: fix signed overflows
  motion_est: fix some signed overflows
  dca: fix signed overflow in shift
  aacdec: fix undefined shifts
  bink: Check for various out of bound writes
  bink: Check for out of bound writes when building tree
  put_bits: fix invalid shift by 32 in flush_put_bits()

Conflicts:
	libavcodec/bink.c
	libavformat/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 04:02:03 +02:00
Laurent Aimar
e3123856c7 vqa: fix double free on corrupted streams
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-09 03:08:03 +02:00
Mans Rullgard
a31e9f68a4 lavf: fix signed overflow in avformat_find_stream_info()
On the first iteration through this code, last_dts is always
INT64_MIN (AV_NOPTS_VALUE) and the subtraction overflows in
an invalid manner.  Although the result is only used if the
input values are valid, performing the subtraction is still
not allowed in a strict environment.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-08 20:04:22 +01:00
Michael Niedermayer
9b47173545 Merge remote-tracking branch 'qatar/master'
* qatar/master: (24 commits)
  mpegps: Use av_get_packet() instead of poorly emulating it.
  motionpixels: decode only the 111 complete frames for fate
  mpc8: Check out of bound bands limit
  xan: Prevent NULL dereference with missing palette
  xan: Check for out of bound reads in xan_huffman_decode()
  xan: Fixed out of bound accesses in xan_unpack()
  motionpixels: Prevent calling init_vlc() with invalid parameters
  shorten: Fix out of bound writes in fix_bitshift()
  dsicinav: Check for out of bounds writes
  tiertexseqv: Check for out of bound reads
  quickdraw: Check for out of bound reads
  dsicinav: Check for out of bounds reads
  motionpixels: Fix the size of workspace buffers
  motionpixels: Clear FF_INPUT_BUFFER_PADDING_SIZE bytes at the end of the temporary buffer
  wmavoice: Check for corrupted extra data
  wmavoice: Check for out of bound writes
  xan: Prevent NULL dereferences with missing reference frame
  bink: Prevent NULL dereferences with missing reference frame
  wavpack: Reset internal state on corrupted blocks
  wmapro: Validate the number of audio channels before using it
  ...

Conflicts:
	libavcodec/h264.c
	libavcodec/xan.c
	tests/ref/fate/motionpixels

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-08 03:39:01 +02:00
Alex Converse
98ef887a75 mpegps: Use av_get_packet() instead of poorly emulating it. 2011-10-07 17:04:14 -07:00
Maksym Veremeyenko
4052bf69ac return error code if error happens
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-07 22:28:07 +02:00
Laurent Aimar
1e3336de69 mpc8: Fix return value on EOF
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-07 16:25:30 +02:00
Laurent Aimar
1775b92fee segafilm: Check for memory allocation failures in segafilm demuxer.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-06 23:19:45 +02:00
Laurent Aimar
762ffa6861 segafilm: Fix potential division by 0 on corrupted streams in the demuxer
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-06 23:01:45 +02:00
Laurent Aimar
790f4dd5c9 Fixed segfault on corrupted sega streams in the demuxer.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-06 22:32:02 +02:00
Michael Niedermayer
f7fbbf466f lavf/utils: document AVIndexEntry.timestamp
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 20:21:40 +02:00
Michael Niedermayer
955113e31b mpegps: drop incorrect line of sofdec detection
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 12:40:35 +02:00
Clément Bœsch
1b3b4a575b libmodplug: free file content buffer in read_close() callback. 2011-10-06 08:50:56 +02:00
Clément Bœsch
8830c4e8a9 libmodplug: add TODO entry for probing. 2011-10-06 08:30:38 +02:00
Clément Bœsch
c768e96668 libmodplug: add metadata support. 2011-10-06 08:30:38 +02:00
Clément Bœsch
e6f937237a libmodplug: add an option to enlarge the max supported file size. 2011-10-06 08:30:37 +02:00
Clément Bœsch
a763b46298 libmodplug: support options (noise reduction, reverb, bass boost, ...) 2011-10-06 08:30:37 +02:00
Michael Niedermayer
6638207bce Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Fix 'heigth' vs. 'height' typos.
  lavc/lavf: use unique private classes.
  lavc: use designated initializers for av_codec_context_class

Conflicts:
	libavdevice/fbdev.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 03:42:14 +02:00
Michael Niedermayer
714517b26a flvenc: Ignore metadata that has special values and is stored already based on
more correct values.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 03:20:57 +02:00
Michael Niedermayer
63b6d5f33f update_stream_timings: Remove redundant check.
Found-by:Nicolas
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-06 00:07:03 +02:00
Clément Bœsch
d7366d918f libmodplug: handle EOF correctly. 2011-10-05 23:45:09 +02:00
Carl Eugen Hoyos
d9b6068764 Use WMAv2 as default audio codec for asf. 2011-10-05 23:44:14 +02:00
Carl Eugen Hoyos
3bcbd8c5c7 Use M4S2 as default video tag for MPEG-4 ASP in asf. 2011-10-05 23:44:13 +02:00
Clément Bœsch
9a2ceee2e3 libmodplug: simplify and fix read_packet() callback.
In case of av_new_packet() error, a correct return error code is raised,
the data memcpy is avoided, and pkt dts/pts are not assigned anymore
(since the defaults are good).
2011-10-05 21:25:03 +02:00
Clément Bœsch
5420885737 libmodplug: consistent use of sizeof. 2011-10-05 21:25:02 +02:00
Michael Niedermayer
f9bd979476 generic seeking: fail if there are 1000 non keyframes found with no keyframe.
This avoids scanning through a whole file just to fail.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-05 18:23:47 +02:00
Anton Khirnov
a4ea00d021 lavc/lavf: use unique private classes.
This is needed by the new AVOptions API.
2011-10-05 07:52:30 +02:00
Michael Niedermayer
ec1ffae0cd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  qcelpdec: cosmetics: do not add line break before opening bracket in 'for', 'while', 'if/else', and 'switch' statements.
  qcelp: check output buffer size before decoding
  qcelpdec: fix the return value of qcelp_decode_frame().
  sipr: fix the output data size check and only calculate it once.
  Synchronize various 4CCs and codec tags from FFmpeg.
  qdm2: check output buffer size before decoding
  Fix out of bound reads in the QDM2 decoder.
  Check for out of bound writes in the QDM2 decoder.
  ogg/celt: do not set sample_fmt in the demuxer

Conflicts:
	libavcodec/avcodec.h
	libavcodec/qdm2.c
	libavformat/oggparsecelt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-05 04:07:59 +02:00
Clément Bœsch
26c7ff9317 Add libmodplug support. 2011-10-04 22:36:33 +02:00
Diego Biurrun
12bd8532cf Synchronize various 4CCs and codec tags from FFmpeg. 2011-10-04 11:58:53 +02:00
Clément Bœsch
5241e0144f isom: replace pseudo doxycomments with normal comments.
Those chunks don't need to be parsed and they weren't parsed correctly
by Doxygen anyway.
2011-10-04 07:48:24 +02:00
Michael Niedermayer
2f9d6ffda7 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  id3v2: remove pointless casts
  id3v2: read TXXX frames with two calls to decode_str() instead of one.
  id3v2: don't discard the whole tag when encountering empty frames.
  libvpx: fix build with older libvpx versions.
  ARM: check for inline asm 'y' operand modifier support

Conflicts:
	libavcodec/libvpxenc.c
	libavformat/id3v2.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-04 03:24:59 +02:00
Justin Ruggles
fc2dd2c7ac ogg/celt: do not set sample_fmt in the demuxer 2011-10-03 21:23:22 -04:00
Michael Niedermayer
85ea5c6e73 lavf/utils: fix overestimation of the rational number density.
Fixes Ticket498

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-03 16:32:17 +02:00
Loren Osborn
bf5c3bac51 mpegtsenc: Lift limit on PMT PID
Fixes Ticket518
2011-10-03 16:03:29 +02:00
Anton Khirnov
60df6b0048 id3v2: remove pointless casts 2011-10-03 13:06:51 +02:00
Anton Khirnov
d2961e4ebf id3v2: read TXXX frames with two calls to decode_str() instead of one.
Read the key in the first, value in the second.

This allows to avoid pointless strdups and simplify decode_str() by
dropping two of its parameters.
2011-10-03 13:06:51 +02:00
Anton Khirnov
1e18d32d01 id3v2: don't discard the whole tag when encountering empty frames.
While they're technically invalid, it's better to skip them and try to
read the rest of the tag.
2011-10-03 13:06:41 +02:00
Compn
3ebab62fc6 riff: map 0x0038 to amrnb, works on http://video.mopoto.com/4/40/407/40709.avi 2011-10-02 17:41:16 -04:00
Laurent Aimar
a1876e0072 Fix use of uninitialized memory in 4X Technologies demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-02 01:02:29 +02:00
Michael Niedermayer
9cb9e39c41 avienc: Add a limit on the number of skiped frames muxed in a row.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 03:48:33 +02:00
Michael Niedermayer
ef74ab20c2 Merge remote-tracking branch 'qatar/master'
* qatar/master: (34 commits)
  dpcm: return error if packet is too small
  dpcm: use smaller data types for static tables
  dpcm: use sol_table_16 directly instead of through the DPCMContext.
  dpcm: replace short with int16_t
  dpcm: check to make sure channels is 1 or 2.
  dpcm: misc pretty-printing
  dpcm: remove unnecessary variable by using bytestream functions.
  dpcm: move codec-specific variable declarations to their corresponding decoding blocks.
  dpcm: consistently use the variable name 'n' for the next input byte.
  dpcm: output AV_SAMPLE_FMT_U8 for Sol DPCM subcodecs 1 and 2.
  dpcm: calculate and check actual output data size prior to decoding.
  dpcm: factor out the stereo flag calculation
  dpcm: cosmetics: rename channel_number to ch
  avserver: Fix a bug where the socket is IPv4, but IPv6 is autoselected for the loopback address.
  lavf: Avoid using av_malloc(0) in av_dump_format
  dxva2_h264: pass the correct 8x8 scaling lists
  dca: NEON optimised high freq VQ decoding
  avcodec: reject audio packets with NULL data and non-zero size
  dxva: Add ability to enable workaround for older ATI cards
  latmenc: Set latmBufferFullness to largest value to indicate it is not used
  ...

Conflicts:
	libavcodec/dxva2_h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:54:46 +02:00
Laurent Aimar
d39d7122e3 Fix double free on error in Deluxe Paint Animation demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:39 +02:00
Laurent Aimar
5d44c061cf Check for out of bound writes in the avs demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:39 +02:00
Laurent Aimar
1cce7def0a Check for corrupted data in avs demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 02:41:39 +02:00
Michael Niedermayer
2a93f28a4b avformat_free_context: favor av_freep()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 01:29:30 +02:00
Michael Niedermayer
3b6c0ba382 oggenc: favor av_freep()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-01 01:26:55 +02:00
Martin Storsjö
e81e5e8ad2 lavf: Avoid using av_malloc(0) in av_dump_format
On OS X, av_malloc(0) returns pointers that cause crashes when
freed.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-30 22:31:30 +03:00
Alex Converse
3b0e242825 lavf/utils: Drop old hack for implicit HE-AAC signaling.
It has not been needed since a58858d60d.

Fixes decode of implicit HE-AAC without extradata or ADTS headers.
2011-09-30 20:08:10 +02:00
Michael Niedermayer
78972a69e3 lavf/utils: ignore subtitle timestamps in timings calculation
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 17:17:22 +02:00
Maksym Veremeyenko
dacf076614 fix memory leak in oggenc
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 16:27:54 +02:00
Kieran Kunhya
d4a544cbc4 latmenc: Set latmBufferFullness to largest value to indicate it is not used
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-09-30 11:17:27 +02:00
Michael Niedermayer
0f68a2bc8b g723_1_demuxer: rco is also a commonly used extension.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-30 00:08:20 +02:00
Tomas Härdin
e571305a71 mov: Only touch extradata in mov_read_extradata() if codec_id is what we expect
Extradata should only be parsed from the avss, fiel, jp2h and alac atoms for
AVS, MJPEG, Motion JPEG 2000 and ALAC respectively.
This also fixes the mov demuxer coming up with bogus extradata for some
AVC-Intra samples due to the presence of fiel atoms.
2011-09-29 15:07:28 -07:00
Compn
7afe23808a add LJ2K and LJ2C to jpeg2000 decoder
works on http://web.archive.org/web/20070128115405/http://www.leadcodecs.com/Download/MJ2K/WhatBox_MJ2k_720x480_PerfectQuality2.avi
2011-09-29 17:14:08 -04:00
Mohamed Naufal Basheer
f990dc374e Add the G723.1 demuxer and decoder 2011-09-29 21:44:03 +02:00
Alex Converse
fe21f78d2b mpeg probe: check the 2/4-bit synchronization value found after a pack_start_code. 2011-09-29 09:45:57 -07:00
Michael Niedermayer
f9a2d0c3fe Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  avconv: Reformat s16 volume adjustment.
  ARM: NEON optimised vector_fmac_scalar()
  dca: use vector_fmac_scalar from dsputil
  dsputil: add vector_fmac_scalar()
  latmenc: Fix private options
  vf_unsharp: store hsub/vsub in the filter context
  vf_unsharp: adopt a more natural order of params in apply_unsharp()
  vf_unsharp: rename method "unsharpen" to "apply_unsharp"
  vf_scale: apply the same transform to the aspect during init that is applied per frame
  vf_pad: fix "vsub" variable value computation
  vf_scale: add a "sar" variable
  lavfi: fix realloc size computation in avfilter_add_format()
  vsrc_color: use internal timebase
  lavfi: fix signature for avfilter_graph_parse() and avfilter_graph_config()
  graphparser: prefer void * over AVClass * for log contexts
  avfiltergraph: use meaningful error codes
  avconv: Initialize return value for codec copy path.
  fate: use 'run' helper for seek-test
  fate: remove seek-mpeg2reuse test
  Fix memory (re)allocation in matroskadec.c, related to MSVR-11-0080.
  ...

Conflicts:
	doc/filters.texi
	libavfilter/avfilter.h
	libavfilter/avfiltergraph.c
	libavfilter/avfiltergraph.h
	libavfilter/graphparser.c
	libavfilter/vf_scale.c
	libavfilter/vsrc_color.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-29 01:11:01 +02:00
Nicolas George
194c2432ee movenc: Replace av_realloc by av_realloc_f when relevant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 18:13:52 +02:00
Nicolas George
af84d9bb9e gxfenc: Replace av_realloc by av_realloc_f when relevant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 18:13:52 +02:00
Nicolas George
247a1dc847 aviobuf: Replace av_realloc by av_realloc_f when relevant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 18:13:52 +02:00
Nicolas George
e47cfe9e5c avienc: Replace av_realloc by av_realloc_f when relevant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 18:13:52 +02:00
Nicolas George
71e23d39a3 avidec: Replace av_realloc by av_realloc_f when relevant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 18:13:52 +02:00
Nicolas George
0cc44facf1 4xm: Replace av_realloc by av_realloc_f when relevant.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 18:13:52 +02:00
Nicolas George
4a14dd76cf bintext: remove unused variable.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 16:11:01 +02:00
Kieran Kunhya
32dfd8ca65 latmenc: Fix private options
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-28 15:49:07 +03:00
Michael Niedermayer
23c1db9b83 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: use different variables for decoded and filtered frame.
  avconv: add support for copying attachments.
  matroskaenc: write attachments.
  matroskadec: export mimetype of attachments as metadata.
  avconv: factorize common code from new_*_stream()
  doc/avconv: expand documentation for some options.
  doc/avconv: document -timelimit.

Conflicts:
	avconv.c
	cmdutils.c
	tests/codec-regression.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-28 02:07:44 +02:00
Michael Niedermayer
77d2ef13a8 Fix memory (re)allocation in matroskadec.c, related to MSVR-11-0080.
Whitespace of the patch cleaned up by Aurel
Some of the issues have been reported by Steve Manzuik / Microsoft Vulnerability Research (MSVR)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>

(cherry picked from commit 956c901c68)

Further suggestions from Kostya <kostya.shishkov@gmail.com> have been
implemented by Reinhard Tartler <siretart@tauware.de>

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-09-27 23:14:05 +02:00
Tomas Härdin
a1cb09d351 mxf: Add PictureEssenceCoding UL for V210
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 22:27:52 +02:00
Michael Niedermayer
9e0438c903 img2enc: show first 4 bytes if a malformed jpeg2000 codestream is detected
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 21:32:39 +02:00
Michael Niedermayer
0047ac1427 img2enc: Accept raw jpeg2000 codestream too,
our decoder outputs that, jasper can as well

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 21:32:39 +02:00
Anton Khirnov
c7a63a521b matroskaenc: write attachments. 2011-09-27 15:26:36 +02:00
Anton Khirnov
98cfe22b5c matroskadec: export mimetype of attachments as metadata. 2011-09-27 15:26:36 +02:00
Tomas Härdin
3e48dceac0 mxfdec: Consider QuantizationBits between 17 and 24 to be pcm_s24*
This fixes playback of BRD38772509.mxf

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 15:15:54 +02:00
Tanami, Ohad
99d7d1510e swfdec: return correct error code at EOF
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 14:52:46 +02:00
Michael Niedermayer
7c1aba4f01 Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  fate: allow testing with libavfilter disabled
  x86: XOP/FMA4 CPU detection support
  ws_snd: misc cosmetic clean-ups
  ws_snd: remove the 2-bit ADPCM table and just subtract 2 instead.
  ws_snd: use memcpy() and memset() instead of loops
  ws_snd: use samples pointer for loop termination instead of a separate iterator variable.
  ws_snd: make sure number of channels is 1
  ws_snd: add some checks to prevent buffer overread or overwrite.
  ws_snd: decode to AV_SAMPLE_FMT_U8 instead of S16.
  flacdec: fix buffer size checking in get_metadata_size()
  rtp: Simplify ff_rtp_get_payload_type
  rtpenc: Add a payload type private option
  rtp: Correct ff_rtp_get_payload_type documentation
  avconv: replace all fprintf() by av_log().
  avconv: change av_log verbosity from ERROR to FATAL for fatal errors.
  cmdutils: replace fprintf() by av_log()
  avtools: parse loglevel before all the other options.
  oggdec: add support for Xiph's CELT codec
  sol: return error if av_get_packet() fails.
  cosmetics: reindent and pretty-print
  ...

Conflicts:
	avconv.c
	cmdutils.c
	libavcodec/avcodec.h
	libavcodec/version.h
	libavformat/oggparsecelt.c
	libavformat/utils.c
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-27 02:14:37 +02:00
Rafaël Carré
1430ae44e8 rtp: Simplify ff_rtp_get_payload_type
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-26 21:55:27 +03:00
Rafaël Carré
9152880e95 rtpenc: Add a payload type private option
Specifying the payload type is useful when the type number has
already been negotiated before creating the stream, for example
in SIP protocol.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-26 21:54:57 +03:00
Rafaël Carré
142887741f rtp: Correct ff_rtp_get_payload_type documentation
Since 0c378ea1f, it can't fail anymore.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-26 21:54:14 +03:00
Nicolas George
4ca59d1948 oggdec: add support for Xiph's CELT codec
This patch also introduces CODEC_ID_CELT.

Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-09-26 13:51:29 +02:00
Aurelien Jacobs
f3d5840474 act: correct file description comment 2011-09-26 00:24:01 +02:00
Aurelien Jacobs
c894449fc4 act, bintext, wtvenc: use named struct initializers 2011-09-26 00:22:41 +02:00
Laurent Aimar
7ec5ea437f Fix return value on EOF in mpc v8 demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 23:01:43 +02:00
Reimar Döffinger
a1526cd78f id3v2: Fix some (function) pointer types.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 23:01:43 +02:00
Laurent Aimar
f57b00e897 Fixed NULL pointer dereference in id3v2 parser.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 23:01:43 +02:00
Justin Ruggles
b15a9888a8 sol: return error if av_get_packet() fails.
This prevents sending a packet with data=NULL size=AVERROR_EOF.
2011-09-25 16:53:49 -04:00
Mans Rullgard
bb416bd68c lavf: do not set codec_tag for rawvideo
If the demuxer did not set a codec_tag, there is none and
inventing one makes no sense.  This change stops the rawvideo
"decoder" over-writing user-supplied pixfmt with one derived
from the codec_tag.  The pixfmt-codec_tag-pixfmt round-trip
is lossy since several pixfmts map to the same codec_tag.

This fixes fate-lavf-pixfmt with avfilter disabled.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-25 14:07:21 +01:00
Michael Niedermayer
ba9d174851 bit: remove more unused variables
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 12:29:20 +02:00
Michael Niedermayer
136a663ceb bit: use AVERROR_INVALIDDATA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 12:29:20 +02:00
Michael Niedermayer
a246cefa75 flvdec: Check for overflow before allocating arrays
On allocation, the array length is multiplied by sizeof(int64_t),
this prevents the multiplication from overflowing.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-25 12:55:21 +03:00
Nicolas George
73a5287482 lavf/utils: replace deprecated url_ferror. 2011-09-25 11:18:41 +02:00
Nicolas George
86af962830 lavf/utils: use correct format string for int64_t. 2011-09-25 11:18:41 +02:00
Nicolas George
9c98af13af lavf/utils: use AV_NOWARN_DEPRECATED in compatibility code. 2011-09-25 11:18:41 +02:00
Clément Bœsch
6f8c8fa8af bit: use explicit struct initializers. 2011-09-25 10:44:31 +02:00
Michael Niedermayer
bf85b909f6 bit: remove unused variable
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 05:37:27 +02:00
Michael Niedermayer
a5e8492796 bit: set AVPacket.pos
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 05:37:22 +02:00
Michael Niedermayer
fa15b1e7b9 bit: loose seekback & wrong bitrate code.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 05:33:12 +02:00
Michael Niedermayer
dfc571ff18 bit: rewrite probe
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 05:33:09 +02:00
Michael Niedermayer
21922dc5ae bit: replace assert() by proper check.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 05:31:49 +02:00
Michael Niedermayer
fc9d6035c3 bit: return AVERROR_EOF on eof.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 05:05:03 +02:00
Michael Niedermayer
f2f28861da AMV video encoder.
Authors are Vladimir Voroshilov and Dobrica Pavlinušić based on svn blame/log
For full details of authorship see http://code.google.com/p/amv-codec-tools/

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 04:33:16 +02:00
Laurent Aimar
3b26daedd8 Removed debug message in the probe function of bit demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-25 00:29:44 +02:00
Michael Niedermayer
eae3cf06a5 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  flvdec: Fix invalid pointer deferences when parsing index
  configure: disable hardware capabilities ELF section with suncc on Solaris x86
  Use explicit struct initializers for AVCodec declarations.
  Use explicit struct initializers for AVOutputFormat/AVInputFormat declarations.
  adpcmenc: Set bits_per_coded_sample
  adpcmenc: fix QT IMA ADPCM encoder
  adpcmdec: Fix QT IMA ADPCM decoder
  permit decoding of multichannel ADPCM_EA_XAS
  Fix input buffer size check in adpcm_ea decoder.
  fft: avoid a signed overflow
  mpegps: Handle buffer exhaustion when reading packets.

Conflicts:
	libavcodec/adpcm.c
	libavcodec/adpcmenc.c
	libavdevice/alsa-audio-enc.c
	libavformat/flvdec.c
	libavformat/mpeg.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 22:39:52 +02:00
Vladimir Voroshilov
0f2297a9b9 Add .bit (de)muxer 2011-09-24 22:10:46 +02:00
Vladimir Voroshilov
5df643c5df G.729 .bit file demuxer 2011-09-24 21:11:01 +02:00
Michael Niedermayer
fb98b71261 act: remove AVERROR_NOFMT useage.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 21:11:01 +02:00
Vladimir Voroshilov
6080553e6e ACT demuxer 2011-09-24 21:11:01 +02:00
Laurent Aimar
2b4e49d428 flvdec: Fix invalid pointer deferences when parsing index
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-24 18:08:39 +03:00
Diego Biurrun
30b4ee7901 Use explicit struct initializers for AVOutputFormat/AVInputFormat declarations. 2011-09-24 12:11:17 +02:00
Alex Converse
9fba8ebe0a mpegps: Handle buffer exhaustion when reading packets. 2011-09-23 16:36:16 -07:00
Michael Niedermayer
a7758884db Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtp: factorize  dynamic payload type fallback
  flvdec: Ignore the index if it's from a creator known to be different
  cmdutils: move grow_array out of #if CONFIG_AVFILTER
  avconv: actually set InputFile.rate_emu
  ratecontrol: update last_qscale_for sooner
  Fix unnecessary shift with 9/10bit vertical scaling
  prores: mark prores as intra-only in libavformat/utils.c:is_intra_only()
  prores: return more meaningful error values
  prores: improve error message wording
  prores: cosmetics: prettyprinting, drop useless parentheses
  prores: lowercase AVCodec name entry

Conflicts:
	cmdutils.c
	libavcodec/proresdec_lgpl.c
	tests/ref/lavfi/pixfmts_scale

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-24 01:03:07 +02:00
Rafaël Carré
0c378ea1f7 rtp: factorize dynamic payload type fallback
Move the identical code in rtp_write_header() and
ff_sdp_write_media() inside ff_rtp_get_payload_type()

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-09-23 22:00:24 +02:00
Martin Storsjö
bafff1668c flvdec: Ignore the index if it's from a creator known to be different
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-23 20:59:48 +03:00
Michael Niedermayer
3f7dc480c1 psxstr: improve probe to not misdetect so much.
The score of 50 can probably be raised if needed
Fixes Ticket490

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-23 19:10:55 +02:00
Carl Eugen Hoyos
cab2860c8a Use a colon in the stream description, this matches how -map works now. 2011-09-23 10:16:36 +02:00
Michael Niedermayer
6d789f50d2 flvdec: Inject in stream extradata, into the stream.
The code before was unsafe, had a race condition and could crash.
This Fixes Ticket499

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-23 06:02:17 +02:00
Robert Krüger
57d5d5f62d Minor documentation clarification regarding AVStream.start_time semantics 2011-09-23 04:21:02 +02:00
Diego Biurrun
5cc2530fc2 prores: mark prores as intra-only in libavformat/utils.c:is_intra_only() 2011-09-23 01:42:14 +02:00
Michael Niedermayer
28d3738428 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add LATM demuxer
  avplay: flush audio decoder with empty packets at EOF if the decoder has CODEC_CAP_DELAY set.
  8svx/iff: fix decoding of compressed stereo 8svx files.
  8svx: log an error message if output buffer is too small
  8svx: check packet size before reading the initial sample value.
  8svx: output 8-bit samples instead of 16-bit.
  8svx: split delta decoding into a separate function.
  mp4: Don't read an empty Decoder Config Descriptor
  fate.sh: Ignore errors from rm command during cleanup.
  fate.sh: Run git-pull in quiet mode to avoid console spam.
  Apple ProRes decoder
  rtmp: Make the input FLV parser handle data cut at any point
  rv34: Check for invalid slices offsets
  eval: test isnan(sqrt(-1)) instead of just sqrt(-1)

Conflicts:
	Changelog
	libavcodec/8svx.c
	libavcodec/proresdec.c
	libavcodec/version.h
	libavformat/iff.c
	libavformat/version.h
	tests/ref/fate/eval

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-23 00:35:31 +02:00
Aaron Colwell
6c4cc0f640 matroskadec: Fix seeking for matroska files with CUES before first cluster
This change fixes a bug where seeking doesn't work properly for
matroska files that have the CUES element before the first cluster.
This bug was accidentally introduced a few months ago by my deferred CUES
loading patch<http://git.videolan.org/?p=ffmpeg.git;a=commit;h=31ad14c21e0735387ba8082c6e3436241f7ccfc8>
.

When the CUES element appears before the first cluster in the file, the data
is parsed and placed in matroska->index but that data is never added to the
seek index. Currently the transfer from matroska->index to the seek index
only happens when matroska_parse_cues() is called.
Matroska_parse_cues() only gets called on a seek if cues_parsing_deferred is
set. Cues_parsing_deferred only gets set if parsing the CUES requires
seeking past the first cluster. There is no code to handle the case where
CUES is before the first cluster.

This fix essentially restores the matroska->index processing that was
happening at the end of matroska_read_header() before I made my CUES
deferral change. In the case where CUES is before the first
cluster, matroska->index will have data and the seek index will be updated.
In the case where CUES is later in the file, matroska->index will be empty
and cues_parsing_deferred will be set so loading will happen later.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-22 21:34:50 +02:00
Janne Grunau
dcb9f6a20d Add LATM demuxer
This is a raw demuxer for the AAC LATM decoder and thus limited to
single stream LOAS.
2011-09-22 20:39:24 +02:00
Justin Ruggles
1993c6849c 8svx/iff: fix decoding of compressed stereo 8svx files.
Make the iff demuxer send the whole audio chunk to the decoder as a
single packet and move stereo interleaving from the iff demuxer to the
decoder.

Based on a patch by Stefano Sabatini.
git.videolan.org/ffmpeg.git
commit e280a4da2a
2011-09-22 14:11:34 -04:00
Alex Converse
1c2e07b811 mp4: Don't read an empty Decoder Config Descriptor 2011-09-22 10:09:04 -07:00
Michael Niedermayer
e8d8517b16 lavf/utils: only complain about aspect missmatch when the difference is "meassureable"
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-22 18:19:00 +02:00
Martin Storsjö
b14629e5ea rtmp: Make the input FLV parser handle data cut at any point
This makes the RTMP writing code able to handle FLV data
fed in arbitrarily small or large chunks, with multiple
consecutive packets in one write call, or having the FLV
packet header split over numerous write calls.

When used in conjunction with the flv muxer, the AVIO buffer
size still needs to be large enough to fit the initial metadata
packet though, since the size of that packet is written with a
seekback.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-22 10:36:16 +03:00
Carl Eugen Hoyos
e71322cb00 Support Sorenson Spark in f4v.
Such files are produced by the Flash Media Server,
see samples/f4v/H263_NM_f.mp4
2011-09-21 23:42:03 +02:00
Carl Eugen Hoyos
d5d027682c Use the parser for AC-3 in mov.
Fixes ticket #494.
2011-09-21 23:42:03 +02:00
Michael Niedermayer
3e1a7ae44a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  swfdec: Add support for sample_rate_code 0 (5512 Hz)
  dct-test: factor out some common code and do whas was likely intended
  doc: library versions need to be bumped in version.h
  Revert "ffmpeg: get rid of useless AVInputStream.nb_streams."
  Remove some forgotten AVCodecContext.palctrl usage.
  lavc/utils: move avcodec_init() higher in the file.
  lavc: replace some deprecated FF_*_TYPE with AV_PICTURE_TYPE_*
  ac3dec: actually use drc_scale private option
  lavc: undeprecate AVPALETTE_SIZE and AVPALETTE_COUNT macros
  alsa: add missing header
  msmpeg4: remove leftover unused debug variable declaration
  Fix assert() calls that need updates after FF_COMMON_FRAME macro elimination.
  Fix av_dlog invocations with wrong or missing logging context.
  vf_yadif: add support to yuva420p
  vf_yadif: correct documentation on the parity parameter
  vf_yadif: copy buffer properties like aspect for second frame as well
  oma: support for encrypted files
  id3v2: add support for non-text and GEOB type tag frames
  des: add possibility to calculate DES-CBC-MAC with small buffer

Conflicts:
	ffmpeg.c
	libavcodec/dct-test.c
	libavformat/mpegts.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-21 21:25:43 +02:00
Alex Converse
05fc9e40a4 swfdec: Add support for sample_rate_code 0 (5512 Hz) 2011-09-21 09:42:35 -07:00
Anton Khirnov
609a2fa1fa Remove some forgotten AVCodecContext.palctrl usage. 2011-09-21 13:51:53 +02:00
Diego Biurrun
35a6855868 Fix av_dlog invocations with wrong or missing logging context.
This fixes build failures with -DDEBUG in CPPFLAGS.
2011-09-21 09:57:32 +02:00
David Goldwich
61f4387d39 oma: support for encrypted files
Signed-off-by: David Goldwich <david.goldwich@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-21 08:33:15 +02:00
David Goldwich
7a019dffe5 id3v2: add support for non-text and GEOB type tag frames
This extends the ID3v2 parser to allow for reading of non-text (i.e.
other than T***) meta tag frames providing a ff_id3v2_read_all()
function. An additional data structure 'ID3v2ExtraMeta' is introduced
for these tags since AVDictionary is string oriented and unsuitable
for binary data.

A parser for tag frames of type GEOB is implemented, which is needed
to extract keyring information from encrypted OMA files. GEOB data
is parsed into 'ID3v2ExtraMetaGEOB' data structures.

The routine to decode characters from different encodings to UTF-8,
formerly part of the read_ttag() function, is moved to its own
function. Because some tag frames contain subparts of unknown length,
the function is now also able to read until a null character is found.
In addition, the function now takes care of allocating a buffer long
enough to hold the decoded characters.

Signed-off-by: David Goldwich <david.goldwich@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-21 08:28:21 +02:00
Michael Niedermayer
7cb5def1f3 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rtmp: Don't blindly skip the 4 trailer bytes from the FLV packets
  rtmp: Handle FLV packets written in more than one write call
  rv34: Check for invalid slice offsets

Conflicts:
	libavformat/rtmpproto.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-21 01:05:36 +02:00
Michael Niedermayer
c83442b057 mp3demux: pass on error code on packet read.
Reported-by: Tanami, Ohad
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-21 00:51:53 +02:00
Martin Storsjö
847052db34 rtspdec: Require TCP-interleaved RTP packets to be at least 11 bytes, instead of 12.
(A minimal RTP packet is 12 bytes, but a minimal RTCP packet can be
much smaller, at least as small as 8 bytes.)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-20 21:58:15 +02:00
Martin Storsjö
3ffe32eb96 rtmp: Don't blindly skip the 4 trailer bytes from the FLV packets
If not enough bytes are available, keep track of them and skip
them on next call.

In practice, if these trailer bytes are written in a separate
call, there is no other data written in this call, making it
fall into the "FLV packet too small" case currently - working,
but not as intended.

This patch makes the code more robust, handling all cases
except for having the FLV packet header split over multiple
write calls.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-20 16:23:48 +03:00
Chiranjeevi Melam
a14c784210 rtmp: Handle FLV packets written in more than one write call
If the FLV packet is larger than the AVIO buffer, a partial
FLV packet will be flushed to the RTMP protocol.

This commit handles the most common cases of FLV packets
being written in more than one call.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-20 16:23:46 +03:00
Michael Niedermayer
cadbe4ecd1 mov: Fix grayscale Cinepak in mov
Fixes Ticket165

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-20 06:19:25 +02:00
Michael Niedermayer
65655a0499 lavf/utils: better dts wrap correction.
Fixes Ticket488

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-20 04:32:46 +02:00
Michael Niedermayer
a6186f3a00 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  movenc: fix NULL reference in mov_write_tkhd_tag
  rmdec: Reject invalid deinterleaving parameters
  rv34: Fix potential overreads
  rv34: Fix buffer size used for MC of B frames after a resolution change
  rv34: Avoid NULL dereference on corrupted bitstream
  rv10: Reject slices that does not have the same type as the first one
  vf_yadif: add an option to enable/disable deinterlacing based on src frame "interlaced" flag
  vsrc_color: set output pos values to -1
  vsrc_color: add @file doxy
  vsrc_buffer: remove duplicated file description
  eval: implement not() expression
  eval: add sqrt function for computing the square root
  rmdec: use the deinterleaving mode and not the codec when creating audio packets.
  lavf: Fix context pointer in av_open_input_stream when avformat_open_input fails

Conflicts:
	doc/eval.texi
	doc/filters.texi
	libavcodec/rv10.c
	libavfilter/vsrc_color.c
	libavformat/rmdec.c
	libavutil/avutil.h
	libavutil/eval.c
	tests/ref/fate/eval

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-19 22:45:34 +02:00
Anton Khirnov
c92a2a4eb8 movenc: fix NULL reference in mov_write_tkhd_tag
st may be NULL when there are more mov streams than AVStreams, e.g. when
chapters are present.
2011-09-19 16:44:42 +02:00
Laurent Aimar
f06068bbd6 rmdec: Reject invalid deinterleaving parameters
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-19 15:45:22 +03:00
Laurent Aimar
3e033da847 rmdec: use the deinterleaving mode and not the codec when creating audio packets.
It prevents crashes due to non initialized fields.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-19 12:37:31 +02:00
Carl Eugen Hoyos
4a9b069b67 Support 3IVD in isom, produced by 3ivx DivX Doctor.
Fixes ticket #486.
2011-09-19 12:20:42 +02:00
David Goldwich
63d64228a7 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>
2011-09-19 12:03:56 +02:00
Joakim Plate
8e4c10003a Set AV_PKT_FLAG_KEY based on nupplevideo header
Based from lipbmpdemux/nupplevideo.h and from myth NuppelVideoRecorder.cpp
2011-09-18 18:25:44 +02:00
Joakim Plate
7768f6b1b9 add support for generic seeking by reading timestamps in nuv 2011-09-18 18:16:37 +02:00
Chiranjeevi Melam
07631deeee rtmpproto.c: Fixed RTMP Stream output issue
Original code had the assumption of only one FLV packet per RTMP packet. But that assumption is incorrect for higher bit rates. Made changes to the code to accommodate more than one FLV packet per RTMP
+packet.
2011-09-18 06:32:05 +02:00
Arne de Bruijn
b2f230e23d mpegpsdec: fix reading first mpegps packet 2011-09-18 01:57:56 +02:00
Michael Niedermayer
9a9ceb8776 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavfi: add select filter
  oggdec: fix out of bound write in the ogg demuxer
  movenc: create an alternate group for each media type
  lavd: add libcdio-paranoia input device for audio CD grabbing
  rawdec: refactor private option for raw video demuxers
  pcmdec: use unique classes for all pcm demuxers.
  rawdec: g722 is always 1 channel/16kHz

Conflicts:
	Changelog
	configure
	doc/filters.texi
	libavdevice/avdevice.h
	libavfilter/avfilter.h
	libavfilter/vf_select.c
	tests/ref/lavf/mov

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-17 22:36:43 +02:00
Laurent Aimar
0e7efb9d23 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>
2011-09-17 09:41:02 -07:00
Laurent Aimar
4907f81358 Reject audio tracks with invalid interleaver parameters in RM demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-17 18:26:53 +02:00
Anton Khirnov
7574cacbd5 movenc: create an alternate group for each media type
Partially fixes bug 44.
2011-09-17 08:42:30 +02:00
Anton Khirnov
85d982f1e2 rawdec: refactor private option for raw video demuxers
pixel_format/video_size only apply to 'rawvideo' (==uncompressed) demuxer
and make no sense for the other raw (== containerless) demuxers. Keep
only the framerate option for those.

Also use unique classes for all raw video demuxers
2011-09-17 06:43:09 +02:00
Anton Khirnov
34d2bf30a0 pcmdec: use unique classes for all pcm demuxers. 2011-09-17 06:42:32 +02:00
Anton Khirnov
d906f49aa8 rawdec: g722 is always 1 channel/16kHz 2011-09-17 06:42:17 +02:00
Michael Niedermayer
5c5306df96 lavf/utils: rewrite real fps calculation code.
The new code is free of biasing to the first timestamps
Fixes fraps.fps.test.zip

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-16 21:29:58 +02:00
Daniel Kristjansson
4460b81f9e mxfenc: Add support for MPEG-2 MP@HL-14 in mxf container
Support Main Profile at High 1440 Level in MXF container,
using essence coding label from SMPTE RDD 9, table 6.
2011-09-16 18:16:30 +02:00
Peter Ross
07a70caba7 Binary text decoder
Decoder and demuxer for various binary text formats.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-16 05:53:14 +02:00
Michael Niedermayer
62101030c4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  swscale: fix byte overreads in SSE-optimized hscale().
  matroskadec: fix typo.
  matroskadec: bail on parsing of incorrect seek index segments

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-15 23:10:26 +02:00
Michael Niedermayer
e78d1a594a mpegts: make sure the "standard" code doesnt override the probing with NONE/DATA.
Fixes video stream detection in vid_0x80.ts

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-15 23:01:04 +02:00
Laurent Aimar
b59efc9434 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>
2011-09-15 13:23:04 -07:00
Ingo Brückl
5d305c9398 Correct determination of file size and frames in VBRI headers
The fields "Number of Bytes" and "Number of Frames" are mixed up. "Bytes"
come first, "Frames" behind.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-15 20:16:55 +02:00
Elvis Presley
5554de13b2 ProRes Decoder
Signed-off-by: Elvis Presley <elvis@e.p>
2011-09-15 15:58:56 +02:00
Dustin Brody
d7d2f0e63c matroskadec: fix typo.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-15 09:34:38 +02:00
Dustin Brody
4a9628f276 matroskadec: bail on parsing of incorrect seek index segments
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-15 09:34:16 +02:00
Michael Niedermayer
3ee83f4605 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavf utils: Remove write-only variable
  lavf utils: Rename shadowing variable
  smacker: fix a few off by 1 errors
  Check for invalid VLC value in smacker decoder.
  Check and propagate errors when VLC trees cannot be built in smacker decoder.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-14 21:57:47 +02:00
Joakim Plate
cdced09ef6 Don't override duration from file header with bitrate duration
This is most noticable on matroska files which has duration
as part of it's header.
2011-09-14 20:08:43 +02:00
Joakim Plate
5d70536804 [yop] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:53:45 +02:00
Joakim Plate
7bcd81299a [wtv] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:53:45 +02:00
Joakim Plate
d9d7174d70 [tta] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:53:45 +02:00
Joakim Plate
fc12f54ea9 [tmv] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:53:45 +02:00
Joakim Plate
425907809b [r3d] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:53:45 +02:00
Joakim Plate
e22155ef0e [nsv] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:53:45 +02:00
Joakim Plate
a3f4fc813d [mxfdec] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:53:45 +02:00
Joakim Plate
88ad79415c [mpc8] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:53:45 +02:00
Joakim Plate
833358172b [jvd] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:53:39 +02:00
Joakim Plate
58540d7bd3 [filmstrip] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:51:07 +02:00
Joakim Plate
928cfc7e4f [ffmdec] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:51:07 +02:00
Joakim Plate
1df00ac80f [dv] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:51:07 +02:00
Joakim Plate
75f418064e [cafdec] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:51:07 +02:00
Joakim Plate
598cc84fbf [bink] Check return value of avio_seek and avoid modifying state if it fails 2011-09-14 19:51:07 +02:00
Alex Converse
940173d4d1 lavf utils: Remove write-only variable 2011-09-14 10:35:46 -07:00
Alex Converse
4439caa482 lavf utils: Rename shadowing variable 2011-09-14 10:35:42 -07:00
elupus
9fa47cb773 make mpegts_get_pcr resync if it's not on a valid mpegts packet 2011-09-14 17:11:23 +02:00
elupus
6214266362 cosmetic reindent of mpegts_get_pcr 2011-09-14 17:11:07 +02:00
elupus
0a90b6a43e check return value of url_fseek in mpegts_get_pcr 2011-09-14 17:10:40 +02:00
elupus
880e83827f respect the maximum position mpegts_get_pcr is allowed to seek to 2011-09-14 17:09:56 +02:00
elupus
2130d2f594 remove unused code in mpegts_get_pcr 2011-09-14 17:08:43 +02:00
Michael Niedermayer
6a507ccfe5 wtvenc: add some asserts because iam paranoid
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-14 01:08:01 +02:00
zhentan feng
438debd095 WTV muxer (2_wtvenc.patch, 3_add_wtv_muxer.patch) 2011-09-14 00:41:25 +02:00
Michael Niedermayer
38670356f9 libavformat/utils: print ts in the "invalid dts/pts combination" case.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-13 06:42:13 +02:00
Laurent Aimar
a92d0fa5d2 Fixed off by one packet size allocation in the smacker demuxer.
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-12 23:44:51 +03:00
Laurent Aimar
e055932f56 Check for invalid packet size in the smacker demuxer.
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-12 23:43:52 +03:00
Joakim Plate
6c9a24636b asf: only try to read asf index once
This avoid retrying to read ASF index in files for every
attempt to seek. This makes a big difference to protocols
with slow seeking (for example http)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 22:12:14 +02:00
Laurent Aimar
c58d45e004 segafilm: Fix potential division by 0 on corrupted segafilm streams in the demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 21:45:23 +02:00
Laurent Aimar
7cbe025758 segafilm: Check for memory allocation failures in segafilm demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 21:45:07 +02:00
Laurent Aimar
273aab99bf ape demuxer: fix segfault on memory allocation failure.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-12 21:12:31 +02:00
Michael Niedermayer
9765caec1b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  adpcm: split ADPCM encoders and decoders into separate files.
  doc/avconv: fix typo.
  rv34: check that subsequent slices have the same type as first one.
  smacker demuxer: handle possible av_realloc() failure.
  lavfi: add split filter from soc.
  lavfi: add showinfo filter
  libxavs: add private options corresponding to deprecated global options

Conflicts:
	Changelog
	libavcodec/adpcm.c
	libavfilter/avfilter.h
	libavfilter/vf_showinfo.c
	libavfilter/vf_split.c
	libavformat/smacker.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 21:01:12 +02:00
Philip de Nier
47886e3644 mxfdec: skip to end of structural sets This fixes reading of partition packs. The code stops reading after the operational pattern and should skip the array of essence container labels that follow 2011-09-12 18:17:49 +02:00
Kostya Shishkov
47a8589f7b smacker demuxer: handle possible av_realloc() failure.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-12 15:51:21 +02:00
Joakim Plate
7e4111cfe2 rmdec: Check return value of more avio_seek calls
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 04:39:13 +02:00
Joakim Plate
f9e083a156 avidec: Check return value of more avio_seek calls
The move of avio_seek in avi_read_seek is to avoiding modifying
state if the seek would fail.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 04:39:12 +02:00
Joakim Plate
ac1d489320 asf: Check return value of more avio_seek calls
This reduces problems when underlying protocol is not
seekable even if marked as such or if the file has been
cut short.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 04:39:12 +02:00
Laurent Aimar
bc851a2946 Fix writes out of bounds in the ogg demuxer.
Between ogg_save() and ogg_restore() calls, the number of streams
could have been reduced.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 04:39:12 +02:00
Michael Niedermayer
411cc5c46a Merge remote-tracking branch 'qatar/master'
* qatar/master: (31 commits)
  audioconvert: add explanatory comments to channel_names array
  audioconvert: K&R whitespace cosmetics
  avconv: use correct index when selecting metadata to write to.
  avconv: fix inverted variable
  doc/avconv: document option types (input/output/per-stream/...)
  doc/avtools-common-opts: write a section about stream specifiers.
  doc/avconv: remove two pointless paragraphs.
  doc/avconv: document that global options should be specified first.
  doc/avconv: remove entries for nonexistent options
  doc/avconv: remove documentation for removed 'timestamp' option
  doc: cosmetics, rename fftools-common-opts to avtools-....
  avconv: move streamid_map to options context.
  avconv: extend -vf syntax
  avconv: move top_field_first to options context.
  avconv: move inter/intra matrix to options context.
  avconv: remove -psnr option.
  avconv: remove me_threshold option.
  avconv: move video_rc_override_string to options context.
  avconv: move frame pixel format to the options context.
  avconv: move frame aspect ratio to the options context.
  ...

Conflicts:
	avconv.c
	cmdutils_common_opts.h
	doc/avconv.texi

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-12 00:32:54 +02:00
Laurent Aimar
d0121e8d96 Fixed segfault on corrupted smacker streams in the demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-11 21:19:45 +02:00
Laurent Aimar
1632a576e6 Fixed segfault on memory allocation failure in ape demuxer.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-11 21:19:45 +02:00
Joakim Plate
c8ce2b0a1d mpegts: When playing mpegts over rtp/rtsp/sdp, lavf must still read PAT/SDT to get available streams
The code path using for mpegts over rtp doesn't open the demuxer using
mpegts_read_header,
so it never starts listening for PAT/SDT, only uses auto_guess

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-11 20:21:47 +02:00
Joakim Plate
53f8f0a70e Fix for some non interleaved avi files that gets played twice or won't end
This changes so we assume EOF when we can't find the next
streams index entry for non interleaved file.

http://trac.xbmc.org/ticket/5585

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-11 18:21:07 +02:00
Joakim Plate
e42a3dd123 Allow reading of growing avi files (ie currently being written)
This uses the RIFF header stored size to figure out the expected AVI file size, instead
of the actual file. To work fully it requires handling failed avio_seek() instead
of assuming they always succeed.

Some fate file has been cut off and contains half a frame at the end which previously
was not output during demuxing. This frame is now output to encoder, thus fate
diff update.
2011-09-11 17:44:20 +02:00
Georgi Chorbadzhiyski
f1f15c3c1a mpegts: improve error reporting
When reporting continuity error show pid, expected and received cc.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-09-11 09:27:13 -04:00
Aviad Rozenhek
162f1fbc14 mpegts: on seek, reset the cc for all PIDs
Prevent false positive continuity counter error logs.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-09-11 09:26:21 -04:00
Michael Niedermayer
cb66db8010 mpegts: update comment to match code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-11 00:55:16 +02:00
Joakim Plate
6796b82407 libavformat/utils: Only require first packet to be known for all audio and video streams
It can take a long time before subtitles or data streams show up,
so we shouldn't wait for those before assuming we have all info
for streams.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-11 00:33:20 +02:00
Joakim Plate
6d40f88cab mpegts: Some additional HDMV types and reg descriptors for mpegts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-10 22:10:00 +02:00
chinshou
b10ba1175d avisynth: Fix upside down bug 2011-09-10 05:24:39 +02:00
chinshou
4f123a7d7c avisynth: Remove wrong pts calculation.
Fixes Ticket428
2011-09-10 05:24:26 +02:00
Laurent Aimar
e5e0580b93 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: Michael Niedermayer <michaelni@gmx.at>
2011-09-10 00:26:48 +02:00
Wolfram Gloger
6dcbbe34e8 av_interleave_packet_per_dts: switch noninterleaved flushing logic to max dts.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-09 17:19:54 +02:00
Chiranjeevi Melam
8096b7c67f asfenc: fix assert failure on long ffserver runs 2011-09-09 03:34:27 +02:00
Gavin Kinsey
d64066f6e8 Prevent double free of side_data when AVFMT_FLAG_KEEP_SIDE_DATA flag is set 2011-09-08 23:47:23 +02:00
Michael Niedermayer
78d7d8fe91 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Employ FF_ARRAY_ELEMS instead of manually calculating array length.
  Fixed invalid access in wavpack decoder on corrupted bitstream.
  Fixed invalid writes in wavpack decoder on corrupted bitstreams.
  Fixed invalid access in wavpack decoder on corrupted extra bits sub-blocks.
  rtpdec_asf: Fix integer underflow that could allow remote code execution

Conflicts:
	libavformat/rtpdec_asf.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-08 22:37:31 +02:00
Yan Jing
8ba987bff3 ffmdec: set avio buffer to ffm->packet_size, avoid dirty reads 2011-09-08 20:53:44 +02:00
Michael Niedermayer
0b99e858d1 ffmdec: fix seeking for non indexed files
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-08 20:53:37 +02:00
Yan Jing
59810f8388 ffmdec: handle wrapped file in ffm_seek 2011-09-08 20:09:40 +02:00
Diego Biurrun
6376362d15 Employ FF_ARRAY_ELEMS instead of manually calculating array length. 2011-09-08 15:57:14 +02:00
Carl Eugen Hoyos
f6e99bf514 Add loas as an extension for LOAS/LATM. 2011-09-08 08:24:17 +02:00
Carl Eugen Hoyos
c1fcd7e1ab Support remuxing aac_latm. 2011-09-08 08:22:50 +02:00
zhentan feng
42d4df06e1 WTV muxer (1_extract_wtv_common_code.patch) 2011-09-08 01:55:07 +02:00
Asad Mehmood
bcc531f04a 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.
2011-09-08 00:26:28 +02:00
Michael Niedermayer
f1b5693027 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Add LATM muxer
  v210enc: clip values according to specifications
  v210enc: switch to PIX_FMT_422P10
  v210dec: switch to PIX_FMT_422P10
  AVOptions: remove AVOption.offset <= 0 checks
  AVOptions: deprecate av_opt_set_defaults2
  AVOptions: move doxy for av_opt_set_defaults() from opt.c to opt.h
  libx264: fix setting some more parameters
  libx264: fix setting the H.264 level
  libx264: add 'direct-pred' private option
  libx264: add 'partitions' private option

Conflicts:
	Changelog
	libavcodec/Makefile
	libavcodec/libx264.c
	libavcodec/v210enc.c
	libavfilter/src_movie.c
	libavformat/version.h
	libavutil/opt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 22:58:39 +02:00
Michael Niedermayer
5ea091fb5a rtpdec_asf: 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>
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-07 23:33:53 +03:00
Michael Niedermayer
a2b66a366d rtpdec_asf: fix memleak
Based on a suggestion by Ronald S. Bultje
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 16:48:49 +02:00
Michael Niedermayer
ba9a7e0d71 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>
2011-09-07 14:59:39 +02:00
Kieran Kunhya
0ca36b4de7 Add LATM muxer
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-09-07 12:57:55 +02:00
Anton Khirnov
9c684feadc libx264: add 'direct-pred' private option
Deprecate AVCodecContext.directpred
2011-09-07 07:27:55 +02:00
Anton Khirnov
0635a8aa21 libx264: add 'partitions' private option
Deprecate AVCodecContext.partitions.
2011-09-07 07:27:18 +02:00
Joseph Wecker
0078430e30 flvdec: A little bit of cleanup 2011-09-07 02:38:57 +02:00
Joseph Wecker
4ee53d7e86 flvenc: Correctly encode data stream into in-band metadata frames. 2011-09-07 02:38:15 +02:00
Joseph Wecker
4c05042978 flvdec: Properly decoding in-band metadata packets as data frames. 2011-09-07 02:38:13 +02:00
Joseph Wecker
c054f11606 flvdec: Started to remove most of the "only 1-audio+1-video" assumptions 2011-09-07 02:36:42 +02:00
Joseph Wecker
30bcd6a945 flv: Ammon's changes migrated from 0.6.0 - I believe for the android broadcaster. 2011-09-07 02:02:03 +02:00
Carl Eugen Hoyos
b5d4c0e26e Support Speex in isom.
Adobe Flash Media Server produces such files although the f4v
specification does not allow Speex (nor Nellymoser).
2011-09-07 01:10:14 +02:00
Michael Niedermayer
9243454e31 libavformat/utils: only run delta_dts_min calculation code when its value is used.
This should improve speed.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 00:23:18 +02:00
Michael Niedermayer
effbeff503 libavformat/utils: use FFMIN() where possible
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 00:13:09 +02:00
wg
37ed5df5c5 libavformat/utils: Treat subtitle streams as noninterleaved when 20 seconds have passed without a packet
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-07 00:10:44 +02:00
Michael Niedermayer
d2084402e6 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavc: fix type for thread_type option
  avconv: move format to options context
  avconv: move limit_filesize to options context
  avconv: move start_time, recording_time and input_ts_offset to options context
  avconv: add a context for options.
  cmdutils: allow storing per-stream/chapter/.... options in a generic way
  cmdutils: split per-option code out of parse_options().
  cmdutils: add support for caller-provided option context.
  cmdutils: declare only one pointer type in OptionDef
  cmdutils: move grow_array() from avconv to cmdutils.
  cmdutils: move exit_program() declaration to cmdutils from avconv
  http: Consider the stream as seekable if the reply contains Accept-Ranges: bytes
  nutenc: add namespace to the api facing functions

Conflicts:
	avconv.c
	cmdutils.c
	cmdutils.h
	ffmpeg.c
	ffplay.c
	ffprobe.c
	ffserver.c
	libavformat/http.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-05 03:10:45 +02:00
Stefan Fritsch
346ea9e222 http: Consider the stream as seekable if the reply contains Accept-Ranges: bytes
The initial request contains "Range: 0-", which servers normally
have responded with "HTTP/1.1 206 Partial Content" reply with
a Content-Range header, which was used as indicator for seekability.

Apache, since 2.2.20, responds with "HTTP/1.1 200 OK" for these
requests, which is more friendly to caches and proxies, but the
seekability still is indicated via the Accept-Ranges: bytes header.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-04 11:28:53 +02:00
Luca Barbato
5ee5dc4e9a nutenc: add namespace to the api facing functions
Rename write_{header,packet,trailer} to nut_write_{header,packet,trailer}
in order to make easier debugging them.
2011-09-04 11:09:06 +02:00
Michael Niedermayer
1889c6724a Merge remote-tracking branch 'qatar/master'
* qatar/master:
  AVOptions: fix av_set_string3() doxy to match reality.
  cmdutils: get rid of dummy contexts for examining AVOptions.
  lavf,lavc,sws: add {avcodec,avformat,sws}_get_class() functions.
  AVOptions: add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find().
  cpu detection: avoid a signed overflow

Conflicts:
	avconv.c
	cmdutils.c
	doc/APIchanges
	ffmpeg.c
	libavcodec/options.c
	libavcodec/version.h
	libavformat/version.h
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-04 04:11:53 +02:00
Stefan Fritsch
31dfc49598 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.
2011-09-03 22:29:07 +02:00
Anton Khirnov
fb4ca26bdb lavf,lavc,sws: add {avcodec,avformat,sws}_get_class() functions. 2011-09-03 20:53:35 +02:00
Anton Khirnov
c11fb8288d AVOptions: add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find().
It allows to search for options only with AVClass, without allocating
the corresponding context.
2011-09-03 20:52:21 +02:00
Tomas Härdin
9289eada91 Parse MXF partitions
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-02 20:40:54 +02:00
Clément Bœsch
3dd2c8bbbc wav: init st to NULL to avoid a false-positive warning.
If st is NULL, it means no 'fmt ' tag is found, but 'data' tag (which
needs a previous 'fmt ' tag to be parsed correctly and st initialized)
check will make sure st is never dereferenced in that case.
2011-09-01 20:23:40 +02:00
Diego Biurrun
aebb56e184 Replace some commented-out debug printf() / av_log() messages with av_dlog().
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-01 01:31:03 +02:00
Carl Eugen Hoyos
a9424d27c4 Support speex in avi. 2011-08-30 23:45:39 +02:00
Carl Eugen Hoyos
c41bf905f4 Only autodetect loas in transport streams.
The Makito encoder sets stream type 0x11 for AAC.
This patch should be reverted if it breaks decoding valid streams (and
the problem can't be fixed in the probe function).
2011-08-30 10:46:51 +02:00
Carl Eugen Hoyos
75a225217c Support Nellymoser in isom. 2011-08-30 10:46:51 +02:00
Baptiste Coudurier
f33be93b1b mov: read tmcd tag and set timecode drop flag accordingly. 2011-08-30 09:14:05 +02:00
Michael Niedermayer
db5effe1a4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Revert "h264: Properly set coded_{width, height} when parsing H.264."
  isom: add missing AVC-Intra tags, rearrange list and update comments
  avconv: remove stubs of crop* and pad* options
  avconv: re-add nb_streams to InputFile.

Conflicts:
	avconv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-29 22:24:01 +02:00
Tomas Härdin
8b7222979c isom: add missing AVC-Intra tags, rearrange list and update comments
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-29 16:48:39 +02:00
Carl Eugen Hoyos
312645e030 Do not set codec_tag property for matroska muxers.
Fixes ticket #8.
2011-08-28 23:13:17 +02:00
Carl Eugen Hoyos
262ab1c59a Do not assume timestamps for mp2 format. 2011-08-28 21:43:04 +02:00
Michael Niedermayer
3dd44e5075 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Use deinterleavers for demangling audio packets in RealMedia.
  vf_scale: don't leak SWS context.
  doxygen: drop another pointless star from pointer variable name

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-28 00:15:05 +02:00
Fredrik Axelsson
09a858da7d Add support for BDAV/m2ts-mode muxing
Signed-off-by: Fredrik Axelsson <fraxbe@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-27 23:57:24 +02:00
Reimar Döffinger
056c13fd17 vocdec: Take channel count into account when calculating bit rate.
Fixes trac issue #343.

Carl Eugen Hoyos actually made a patch first, but I missed it because
trac does not send notification emails when an attachment is added.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-08-27 22:12:51 +02:00
Marton Balint
dacd827b81 Rename find_program_from_stream to av_find_program_from_stream and add it to avformat.h
Also extend the functionality to use the last found program to start the search
after that program.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-27 22:06:09 +02:00
Michael Niedermayer
941bb552c6 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>
2011-08-27 21:39:52 +02:00
Kostya Shishkov
10397215aa Use deinterleavers for demangling audio packets in RealMedia.
Unlike other containers RealMedia stores its audio packets in scrambled form,
with interleaver ID preceeding audio codec ID. Currently deinterleaving
decision is tied to the codec while it's possible to have non-default
deinterleaver with audio codec (like Int0 deinterleaver instead of specific
one for Sipro).

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-27 17:23:45 +02:00
Michael Niedermayer
094a496818 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  fifo: add FIFO API test program, and fate test
  fifo: add av_fifo_peek2(), and deprecate av_fifo_peek()
  postprocess.c: filter name needs to be double 0 terminated
  doxygen: fix wrong comment syntax, //< vs. ///<
  doxygen: drop pointless star from pointer variable names
  Replace deprecated av_find_stream_info() by avformat_find_stream_info().
  xmv: eliminate superfluous zeroing of zero data
  configure: fix typo in avconv dependency list

Conflicts:
	configure
	doc/APIchanges
	libavutil/Makefile
	libavutil/avutil.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-26 23:18:54 +02:00
Stefano Sabatini
f2011ed234 fifo: add av_fifo_peek2(), and deprecate av_fifo_peek()
The new function provides a more generic interface than av_fifo_peek()
for peeking at a FIFO buffer data.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-26 20:53:02 +02:00
Diego Biurrun
c960e67ad0 Replace deprecated av_find_stream_info() by avformat_find_stream_info(). 2011-08-26 17:40:07 +02:00
Sven Hesse
5f677aac76 xmv: eliminate superfluous zeroing of zero data
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-26 16:26:57 +02:00
Michael Niedermayer
876d1d796b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vp6: partially propagate huffman tree building errors during coeff model parsing and fix misspelling
  mpeg12: propagate chunk decode errors and fix conditional indentation
  vc1: fix VC-1 Pulldown handling.
  VC1: Fix first/last row checks with slices
  mp4: Handle non-trivial ES Descriptors.
  vc1: properly zero coded_block[] edges on new slice entry.

Conflicts:
	libavcodec/vc1dec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-26 01:29:40 +02:00
Michael Niedermayer
7c4e4c6a06 udp: fix circular buffer error handling
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-25 21:43:30 +02:00
Michael Niedermayer
20f0bf8cfb udp: buffer datagrams in circular buffer instead of a bytestream
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-25 21:33:54 +02:00
Alex Converse
ad6c7c1b52 mp4: Handle non-trivial ES Descriptors. 2011-08-25 11:53:21 -07:00
Michael Niedermayer
7e7012d0b4 oggdec: subtract time of first packet only from duration when it is significant
this fixes accuracy with normal ogg files while keeping support for ogg files
starting at times different from 0

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-24 23:20:09 +02:00
Michael Niedermayer
d2cab951e3 oggdec: Make sure start time correction is applied once to each stream
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-24 23:13:57 +02:00
Michael Niedermayer
bd4640375e Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: Replace goto redo on decode fail with continue.
  avconv: Remove dead store.
  libx264: add 'crf_max' private option.
  libx264: add 'weightp' private option.
  libx264: add 'rc_lookahead' private option.
  libx264: add 'psy_trellis' private option.
  libx264: add 'psy_rd' private option.
  libx264: add 'aq_strength' private option.
  libx264: add 'aq_mode' private option.
  libx264: add 'cqp' private option.
  libx264: add 'crf' private option.
  lavc: remove vbv_delay option
  lavf utils: Fix bad indentation.
  avconv: use av_clip_int16 for audio clipping

Conflicts:
	libavcodec/libx264.c
	libavcodec/options.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-24 20:26:48 +02:00
Alex Converse
7e6029f98a lavf utils: Fix bad indentation. 2011-08-23 09:53:23 -07:00
Michael Niedermayer
4ca6a151e0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  avconv: print the codecs names in the stream mapping.
  avconv: move the avcodec_find_decoder() call to add_input_streams().
  Windows Media Image decoder (WMVP/WVP2)
  ac3enc: remove outdated TODO comment for apply_channel_coupling()

Conflicts:
	Changelog
	libavcodec/avcodec.h
	libavcodec/vc1dec.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-23 18:26:37 +02:00
Alberto Delmás
45ecda8554 Windows Media Image decoder (WMVP/WVP2)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-23 11:18:35 +02:00
Michael Niedermayer
124deea1a0 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libx264: only use ABR mode when the user explicitly set bitrate.
  libx264: use medium preset by default.
  mp2 encoder: make 128k the default bitrate.
  movenc: use libx264 by default when possible for mov, mp4 and psp
  avienc: saner default audio codec.
  matroskaenc: saner default codecs.
  avplay: add examples of how to specify size/pixel format through private options
  lavc: add A|E|D flags to "ac" and "ar" options

Conflicts:
	doc/ffplay.texi
	libavcodec/libx264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-22 15:00:53 +02:00
Nicolas George
aeba058340 lavf: warn when a parser is needed and not found. 2011-08-22 12:13:27 +02:00
Nicolas George
355ac7ff6c rtpenc: use avcodec_get_name to report unsupported codecs. 2011-08-22 12:13:27 +02:00
Nicolas George
1c58264e62 flvenc: use avcodec_get_name to report unsupported codecs. 2011-08-22 12:13:27 +02:00
Carl Eugen Hoyos
05a267305d Support more codecs when muxing caf. 2011-08-22 09:35:58 +02:00
Anton Khirnov
fb42d156ed movenc: use libx264 by default when possible for mov, mp4 and psp 2011-08-22 07:17:35 +02:00
Anton Khirnov
b71389cbae avienc: saner default audio codec.
libmp3lame if available, ac3 otherwise.
2011-08-22 07:17:19 +02:00
Anton Khirnov
3436c4a368 matroskaenc: saner default codecs.
libvorbis/libx264 for video if available, otherwise ac3/mpeg4.
2011-08-22 07:16:55 +02:00
Michael Niedermayer
ff96098084 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  WavPack demuxer: do not rely on index when timestamp is not in indexed range.
  WavPack demuxer: store position of the first block in index.
  WavPack decoder: implement flush function
  avconv: Separate initialization from the main transcode loop.

Conflicts:
	avconv.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-21 15:27:02 +02:00
Carl Eugen Hoyos
ef25e70de3 Stream-copying PureVoice into caf works fine. 2011-08-21 14:52:48 +02:00
Kostya Shishkov
ccb919e34b WavPack demuxer: do not rely on index when timestamp is not in indexed range.
This fixes the situation when there are not enough entries in the index
(e.g. on initial seek there's only one index entry in the index) and index
search returns just the last known entry. That causes seeking function just to
seek there instead of trying harder to get at the requested position.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-21 12:55:17 +02:00
Kostya Shishkov
5561fe487f WavPack demuxer: store position of the first block in index.
Currently for multichannel audio position for the last block position is
stored in index (and used for seeking), which is obviously not correct.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-21 12:54:35 +02:00
Carl Eugen Hoyos
7bdc5de33d Autodetect LOAS in transport streams.
Fixes ticket 365.
2011-08-20 00:27:54 +02:00
Carl Eugen Hoyos
47818b2a67 Add LOAS demuxer. 2011-08-20 00:27:38 +02:00
Sven Hesse
8ea6157d83 xmv: Read the video packet data first, then swap its bytes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-18 23:56:12 +02:00
Sven Hesse
c062aa8deb xmv: Remove superfluous zeroing of already zero'd data
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-18 23:54:17 +02:00
Sven Hesse
730333efc4 xmv: Add some doxygen comments
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-18 23:54:08 +02:00
Sven Hesse
6fb501245d xmv: Merge XMVAudioTrack into XMVAudioPacket
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-18 23:53:44 +02:00
Sven Hesse
d50fc62ea2 xmv: Make the various offset variables uint64_t
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-18 23:52:52 +02:00
Michael Niedermayer
909e0fe243 xmv: fix license header to match patch
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-18 23:32:51 +02:00
Michael Niedermayer
edae3dbf1d Merge remote-tracking branch 'qatar/master'
* qatar/master: (23 commits)
  h264: hide reference frame errors unless requested
  swscale: split hScale() function pointer into h[cy]Scale().
  Move clipd macros to x86util.asm.
  avconv: reindent.
  avconv: rescue poor abused start_time global.
  avconv: rescue poor abused recording_time global.
  avconv: merge two loops in output_packet().
  avconv: fix broken indentation.
  avconv: get rid of the arbitrary MAX_FILES limit.
  avconv: get rid of the output_streams_for_file vs. ost_table schizophrenia
  avconv: add a wrapper for output AVFormatContexts and merge output_opts into it
  avconv: make itsscale syntax consistent with other options.
  avconv: factor out adding input streams.
  avconv: Factorize combining auto vsync with format.
  avconv: Factorize video resampling.
  avconv: Don't unnecessarily convert ipts to a double.
  ffmpeg: remove unsed variable nopts
  RV3/4 parser: remove unused variable 'off'
  add XMV demuxer
  rmdec: parse FPS in RealMedia properly
  ...

Conflicts:
	avconv.c
	libavformat/version.h
	libswscale/swscale.c
	tests/ref/fate/lmlm4-demux

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-18 10:56:08 +02:00
Aurelien Jacobs
dc6c36ce46 matroskadec: use correct compression parameters for current track CodecPrivate 2011-08-18 00:21:21 +02:00
Sven Hesse
c6c6c1aaa6 add XMV demuxer
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-17 15:04:37 +02:00
Kostya Shishkov
a43b1e74e2 rmdec: parse FPS in RealMedia properly
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-17 15:00:42 +02:00
Kostya Shishkov
48ce8b8da7 Use parsers for RealVideo 3/4 to determine correct PTS
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-17 15:00:42 +02:00
Kostya Shishkov
7c1f6df4b5 rmdec: correct DTS calculation in RealMedia container.
First, container stores only DTS and not PTS as it was believed.
Second, multiple frames in a packet store timestamp instead of position
after the frame length.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-17 15:00:42 +02:00
Michael Niedermayer
27fbe31c92 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Revert "avconv: use stream copy by default when possible."
  avconv: print stream copy information.
  avconv: use stream copy by default when possible.
  matroskaenc: vertical alignment.
  matroskaenc: implement query_codec()
  lavf: add avformat_query_codec().
  lavc: add avcodec_get_type() for mapping codec_id -> type.
  flvenc: use int64_t to store offsets
  avconv: don't segfault on 0 input files.
  Do not write ID3v1 tags by default
  mpegts: log into an AVFormatContext rather than MpegTSContext.

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

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-17 14:23:20 +02:00
Michael Niedermayer
41bf67d8d4 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  movenc: change AV_LOG_INFO to AV_LOG_WARNING for some warnings
  avconv: remove a write-only variable
  avconv: remove pointless parameter from new_*_stream().
  avconv: cosmetics, move code
  avconv: cosmetics -- move copy_chapters().
  avconv: cosmetics -- move parse_forced_key_frames().
  lavc: add audio flag to the 'b' option, deprecate 'ab'.
  avconv: rename sameq to same_quant
  doc/avconv: add forgotten end of chapter.
  Changelog: document avconv incompatibilities with ffmpeg.
  avconv: replace -vcodec/-acodec/-scodec with a better system.
  avconv: remove presets.
  svq3: propagate codec memory allocation failure in context init

Conflicts:
	Changelog
	avconv.c
	libavcodec/options.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-16 23:47:35 +02:00
Anton Khirnov
a3f2f766af matroskaenc: vertical alignment. 2011-08-16 20:24:20 +02:00
Anton Khirnov
15c14ce6b2 matroskaenc: implement query_codec() 2011-08-16 20:24:20 +02:00
Anton Khirnov
48f9e457ea lavf: add avformat_query_codec().
It allows to check if a given codec can be written into a container.
2011-08-16 20:24:20 +02:00
Luca Barbato
7f5bf4fbaf 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>
2011-08-16 20:24:20 +02:00
Diogo Franco
f1f298cd32 Do not write ID3v1 tags by default
ID3v1 are legacy tags with several limitations; furthermore
avconv/ffmpeg writes the tags in UTF-8 which probably has near-0
software support.

Add a -write_id3v1 option to be able to turn it on; disabled by default.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-16 20:24:20 +02:00
Alex Converse
d8b999e2d0 mpegts: log into an AVFormatContext rather than MpegTSContext.
MpegTSContext's AVClass member can be NULL.
2011-08-16 11:09:39 -07:00
Anton Khirnov
eb97dbb05a movenc: change AV_LOG_INFO to AV_LOG_WARNING for some warnings 2011-08-16 10:34:17 +02:00
Michael Niedermayer
1a34478b71 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Fix NASM include directive
  dsputil_mmx: Honor HAVE_AMD3DNOW
  lavf,lavd: remove all usage of AVFormatParameters from demuxers.
  jack: add 'channels' private option.
  VC-1: fix reading of custom PAR.
  Remove redundant and dubious video codec detection by its extradata
  mpeg12: remove repeat-field code disabled since May 2002
  patch checklist: suggest fate instead of regression tests
  Turn on resampling on sudden size change instead of bailing out during recode.
  avtools: reinitialise filter chain when input video stream changes dimensions

Conflicts:
	Makefile
	avconv.c
	doc/developer.texi
	ffplay.c
	libavcodec/x86/dsputil_mmx.c
	libavdevice/libdc1394.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-15 23:35:53 +02:00
Anton Khirnov
c14fe6bc99 lavf,lavd: remove all usage of AVFormatParameters from demuxers.
AVFormatParameters are converted into corresponding private options in
av_open_input_file/stream() compat wrappers, so accessing them from
demuxers is redundant.
2011-08-15 19:59:48 +02:00
Kostya Shishkov
e9fb763611 Remove redundant and dubious video codec detection by its extradata
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-15 14:03:01 +02:00
Baptiste Coudurier
1c967827d2 mxf: H.264/MPEG-4 AVC Intra support
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-15 00:40:54 +02:00
Stefano Sabatini
323b930699 fifo: add av_fifo_peek2(), and deprecate av_fifo_peek()
The new function provides a more flexible interface for peeking at a
FIFO buffer data.
2011-08-14 01:56:28 +02:00
Reimar Döffinger
eb8b325202 Support streaming .au files.
FFmpeg writes data_size as AU_UNKNOWN_SIZE, make demuxer not
fail when data_size is set to this value.
Should fix trac issue #394.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-08-14 00:05:36 +02:00
Clément Bœsch
75af0e6a16 dv: honor timecode in DV muxer.
This is based on the original work by Baptiste Coudurier.
2011-08-13 19:13:03 +02:00
Clément Bœsch
b49fe589ea mxf: honor timecode drop flag in mxf muxer if set. 2011-08-13 19:13:02 +02:00
Clément Bœsch
b33ca05b46 mxf: add cli option in mxfenc to replace GOP timecode parsing.
This is based on the original work by Baptiste Coudurier.
2011-08-13 19:13:02 +02:00
Clément Bœsch
4c3c6e60f9 mxf: move framenum to timecode convert to timecode helpers.
This is based on the original work by Baptiste Coudurier.
2011-08-13 19:13:02 +02:00
Thierry Foucu
1892052f8d mov: Set negative Sample_duration in STTS to 1
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-13 03:39:58 +02:00
Michael Niedermayer
0cb233cf46 Merge commit 'b2c087871dafc7d030b2d48457ddff597dfd4925'
* commit 'b2c087871dafc7d030b2d48457ddff597dfd4925':
  Move x86util.asm from libavcodec/ to libavutil/.
  Move x86inc.asm to libavutil/.
  APIchanges: note error_recognition in lavf
  lavf: add support for error_recognition, use it in avidec, and bump minor API version
  avconv: change semantics of -map
  avconv: get rid of new* options.
  cmdutils: allow precisely specifying a stream for AVOptions.
  configure: add missing CFLAGS to fix building on the HURD
  libx264: Include hint for possible values for configuring libx264
  cmdutils: allow ':'-separated modifiers in option names.
  avconv: make -map_metadata work consistently with the other options
  avconv: remove deprecated options.
  avconv: make -map_chapters accept only the input file index.
  Make a copy of ffmpeg under a new name -- avconv.
  ffmpeg: add a warning stating that the program is deprecated.
  Add weighted motion compensation for RV40 B-frames
  RV3/4: calculate B-frame motion weights once per frame
  Move RV3/4-specific DSP functions into their own context
  mjpeg: propagate decode errors from ff_mjpeg_decode_sos and ff_mjpeg_decode_dqt
  h264: notice memory allocation failure

Conflicts:
	.gitignore
	Makefile
	cmdutils.c
	configure
	doc/ffplay.texi
	doc/ffprobe.texi
	doc/ffserver.texi
	libavcodec/libx264.c
	libavformat/avformat.h
	libavformat/avidec.c
	libavformat/version.h
	tests/lavf-regression.sh
	tests/lavfi-regression.sh

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-13 02:56:08 +02:00
Dustin Brody
2f63440c59 lavf: add support for error_recognition, use it in avidec, and bump minor API version
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-12 19:10:22 +02:00
Clément Bœsch
9acffed9e0 oggenc: add missing initializer braces to shut up gcc warning.
This fixes the warning:
    libavformat/oggenc.c:75:7: warning: missing braces around initializer [-Wmissing-braces]
2011-08-10 21:03:39 +02:00
Clément Bœsch
df2039f573 avidec: add missing initializer braces to shut up gcc warning.
This fixes the warning:
    libavformat/avidec.c:81:5: warning: missing braces around initializer [-Wmissing-braces]
2011-08-10 21:02:32 +02:00
Reimar Döffinger
0399044805 Always pass a AVFormatContext to av_log.
This is consistent, allows custom handlers to print more info
(since they probably know about the AVFormatContext class
but not a demuxer-specific one) and also avoids issues due
to the class pointer being NULL for non-raw mpegts.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-08-10 20:39:50 +02:00
Thierry Foucu
63377695a6 AVCodecTag: Add MKTAG for Go2Meeting video codec
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-09 21:53:48 +02:00
Anton Khirnov
4d58e4cb4c Rename ffserver to avserver. 2011-08-09 19:56:25 +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
Alex Converse
1f6f58d585 mxfdec: Include FF_INPUT_BUFFER_PADDING_SIZE when allocating extradata.
This prevents out of bounds reads when extradata is being decoded.
2011-07-29 16:03:53 -07:00
Alex Converse
5ef953e84f probe: Fix insane flow control.
A loop control variable was shadowed inside the loop and never updated.
2011-07-29 09:29:44 -07:00
Mike Williams
298c4e3c52 mpegts: remove invalid error check
mpegts_read_header is used by both mpegts and mpegtsraw, so this
erro check is no longer valid.

Signed-off-by: Mike Williams <mike@mikebwilliams.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-07-29 08:48:33 +02:00
Michael Niedermayer
2dd2abe391 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  h263dec: Propagate AV_LOG_ERRORs from slice decoding through frame decoding with sufficient error recognition
  x86: cabac: don't load/store context values in asm
  H.264: optimize CABAC x86 asm for Atom
  vp3/theora: flush after seek.
  doc/fftools-common-opts: wording fixes missing from the previous commit.
  doc: document using AVOptions in fftools.
  cmdutils: add codec_opts parameter to setup_find_stream_info_opts()
  cmdutils: clarify documentation for filter_codec_opts()
  cmdutils: clarify documentation for setup_find_stream_info_opts()
  lavf: add forgotten attribute_deprecated to av_find_stream_info()

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-29 01:50:53 +02:00
Anton Khirnov
3c7fa664af lavf: add forgotten attribute_deprecated to av_find_stream_info() 2011-07-28 17:13:14 +02:00
Michael Niedermayer
956c901c68 Fix several security issues in matroskadec.c (MSVR-11-0080).
Whitespace of the patch cleaned up by Aurel
Some of the issues have been reported by Steve Manzuik / Microsoft Vulnerability Research (MSVR)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-28 14:59:54 +02:00
Stefano Sabatini
fdd130a213 prefer "SAR" over "PAR" in av_dump_format()
"SAR" (Sample Aspect Ratio) is globally preferred over "PAR" (Pixel
Aspect Ratio), although the two terms share the same semantics.

For example the corresponding AVStream field is called
sample_aspect_ratio, and libavfilter has a filter named setsar.

Therefore prefer the term "SAR" over "PAR" in the
libavformat/utils.c:dump_stream_format() and avcodec_string() output
for avoiding confusion.
2011-07-28 10:24:43 +02:00
Michael Niedermayer
788d839938 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ape: adjust some printf format strings to correctly match argument types

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-26 15:37:22 +02:00
Diego Biurrun
ab3d241be1 ape: adjust some printf format strings to correctly match argument types 2011-07-26 00:34:52 +02:00
Michael Niedermayer
2962049ac3 muxer opts: fix avdict use in case of early private context alloc
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-25 22:38:13 +02:00
Michael Niedermayer
158eb8599a rtp: disable udp fifos, the rtp code cannot work with the fifos in its current form as rtp bypasses the public API.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-25 16:37:12 +02:00
Michael Niedermayer
bd652ff66e udp: allow fifo size to be tuned seperately
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-25 16:37:12 +02:00
Carl Eugen Hoyos
88084eecdf Use little endian for caf codec tags. 2011-07-24 23:52:42 +02:00
Michael Niedermayer
5271b857eb Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dnxhddec: avoid a branch in 10-bit decode_dct_block()
  H.264: Add optimizations to predict x86 assembly.
  riff: Add mpgv MPEG-2 fourcc
  add Flash Screen Video 2 decoder

Conflicts:
	configure
	doc/general.texi
	libavcodec/Makefile
	libavcodec/allcodecs.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-23 16:47:10 +02:00
Alex Converse
505345ed5d riff: Add mpgv MPEG-2 fourcc
Supported by mplayer and seen in the wild.
2011-07-22 10:39:13 -07:00
Michael Niedermayer
4095fa9038 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dnxhddec: optimise dnxhd_decode_dct_block()
  rtp: remove disabled code
  eac3enc: use different numbers of blocks per frame to allow higher bitrates
  dnxhd: add regression test for 10-bit
  dnxhd: 10-bit support
  dsputil: update per-arch init funcs for non-h264 high bit depth
  dsputil: template get_pixels() for different bit depths
  dsputil: create 16/32-bit dctcoef versions of some functions
  jfdctint: add 10-bit version
  mov: add clcp type track as Subtitle stream.
  mpeg4: add Mpeg4 Profiles names.
  mpeg4: decode Level Profile for MPEG4 Part 2.
  ffprobe: display bitstream level.
  imgconvert: remove unused glue and xglue macros

Conflicts:
	libavcodec/dsputil_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-22 12:08:52 +02:00
Diego Biurrun
4cc843facd rtp: remove disabled code 2011-07-21 23:03:10 +02:00
Thierry Foucu
73c0dd939d mov: add clcp type track as Subtitle stream.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-21 09:34:41 -07:00
Stefano Sabatini
daa6237229 au: reuse the result of the previous call to av_get_bits_per_sample()
Avoid an unnecessary call to the function, slighlty more
robust/readable.
2011-07-21 13:04:48 +02:00
Michael Niedermayer
7c6c4cf2fb Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Remove h264_lowres_idct_put/add functions
  Remove snow/dwt test program
  h264: remove some disabled code
  Fix incorrect max_lowres values
  matroskadec: fix integer underflow if header length < probe length.
  cosmetics: indentation
  eac3enc: use frame exponent strategy when applicable.
  cosmetics: rename eac3dec_data.c/h to eac3_data.c/h since the tables will also be used in the E-AC-3 encoder.
  dsputil: fix ff_check_alignment()

Conflicts:
	libavcodec/Makefile
	libavcodec/h264idct_template.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-20 18:31:45 +02:00
Chris Evans
69619a13c3 matroskadec: fix integer underflow if header length < probe length.
This fixes a crash with specifically crafted files.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-19 18:06:06 -07:00
Michael Niedermayer
d303e0affd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  simple_idct: simplify some ifdeffery
  simple_idct: remove code for DCTELEM != int16
  Remove VLAs in ff_amrwb_lsp2lpc()
  fate: make vsynth tests depend on only the relevant vref
  rtsp: remove disabled code
  dsputil: restore mistakenly removed hunk of disabled code

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-19 18:46:04 +02:00
Diego Biurrun
76e25dbca6 rtsp: remove disabled code 2011-07-18 18:22:02 +02:00
Michael Niedermayer
3c3daf4d19 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  vf_libopencv: replace opencv/cxtypes.h #include by opencv/cxcore.h
  dsputil: remove disabled code
  tta: remove disabled code
  gxfenc: place variable declarations before statements
  x86: Use LOCAL_ALIGNED in mpegvideo_mmx_template
  random_seed: use proper #includes

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-18 16:43:46 +02:00
ami_stuff
93263dc19e au: add computation for duration
Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
2011-07-18 14:11:04 +02:00
Diego Biurrun
6eaaf8da88 gxfenc: place variable declarations before statements
libavformat/gxfenc.c:409: warning: ISO C90 forbids mixed declarations and code
2011-07-17 23:59:20 +02:00
Michael Niedermayer
78accb876c Merge remote-tracking branch 'qatar/master'
* qatar/master:
  ffmpeg: fix some indentation
  ffmpeg: fix operation with --disable-avfilter
  simple_idct: remove disabled code
  motion_est: remove disabled code
  vc1: remove disabled code
  fate: separate lavf-mxf_d10 test from lavf-mxf
  cabac: Move code only used in the cabac test program to cabac.c.
  ffplay: warn that -pix_fmt is no longer working, suggest alternative
  ffplay: warn that -s is no longer working, suggest alternative
  lavf: rename enc variable in utils.c:has_codec_parameters()
  lavf: use designated initialisers for all (de)muxers.
  wav: remove a use of deprecated AV_METADATA_ macro
  rmdec: remove useless ap parameter from rm_read_header_old()
  dct-test: remove write-only variable
  des: fix #if conditional around P_shuffle
  Use LOCAL_ALIGNED in ff_check_alignment()

Conflicts:
	ffmpeg.c
	libavformat/avidec.c
	libavformat/matroskaenc.c
	libavformat/mp3enc.c
	libavformat/oggenc.c
	libavformat/utils.c
	tests/ref/lavf/mxf

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-17 20:12:02 +02:00
Stefano Sabatini
25dfda7f31 lavf: rename enc variable in utils.c:has_codec_parameters()
Rename it to "avctx", the old name was confusing as the function is
used also with decoder contexts.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-07-17 06:58:53 +02:00
Anton Khirnov
dfc2c4d900 lavf: use designated initialisers for all (de)muxers.
It's more readable and less prone to breakage.
2011-07-17 06:58:37 +02:00
Anton Khirnov
6270995667 wav: remove a use of deprecated AV_METADATA_ macro 2011-07-17 06:58:29 +02:00
Anton Khirnov
412b4367c5 rmdec: remove useless ap parameter from rm_read_header_old() 2011-07-17 06:58:29 +02:00
Michael Niedermayer
15285d8fc5 Merge remote-tracking branch 'qatar/master'
* qatar/master: (22 commits)
  arm: remove disabled function dct_unquantize_h263_inter_iwmmxt()
  Remove commented-out call to non-existing function print_pow1().
  Do not decode RV30 files if the extradata is too small
  flashsv: split flashsv_decode_block() off from flashsv_decode_frame().
  ppc: remove disabled code
  libspeexdec: Drop const qualifier to silence compiler warning.
  libopenjpeg: Drop const qualifier to silence compiler warning.
  alac: Remove unused dummy code.
  Remove unused structs and tables.
  vaapi: do not assert on value read from input bitstream
  flashsvenc: replace bitstream description by a link to the specification
  flashsvenc: drop unnecessary cast
  flashsvenc: improve some variable names and fix corresponding comments
  flashsvenc: merge two consecutive if-conditions
  flashsvenc: merge variable declarations and initializations
  flashsvenc: convert some debug av_log() to av_dlog()
  flashsvenc: whitespace cosmetics
  flashsvenc: drop some unnecessary parentheses
  flashsvenc: fix some comment typos
  aacps: skip some memcpy() if src and dst would be equal
  ...

Conflicts:
	libavcodec/vaapi_mpeg2.c
	libavformat/aviobuf.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-16 19:43:35 +02:00
Anton Khirnov
d3bb71914b lavf/utils: drop av_ prefixes from static functions. 2011-07-15 20:27:43 +02:00
Anton Khirnov
c3bec4cd13 avio: don't replicate avio_alloc_context functionality. 2011-07-15 20:04:46 +02:00
Michael Niedermayer
042f9d62ca Merge remote-tracking branch 'qatar/master'
* qatar/master:
  configure: Automatically add more flags required on symbian
  mem.h: switch doxygen parameter order to match function prototype
  doxygen: replace @sa tag by the more readable but equivalent @see
  doxygen: use Doxygen markup for authors and web links where appropriate
  doxygen: do not include license boilerplate in Doxygen documentation
  ac3enc: Mark AVClasses const
  ffserver: Replace two loops with one loop.
  ffmpeg: Fix the check for experimental codecs
  swscale: extend mmx padding.
  swscale: clip unscaled colorspace conversion path.
  doxygen: misc consistency cosmetics
  doc: remove file name from @file directive in Doxygen usage example
  doxygen: consistently place brief description
  doxygen: place empty line between brief description and detailed description
  avformat_open_input(): Add braces to shut up gcc warning.

Conflicts:
	libavcodec/8svx.c
	libavcodec/tiff.c
	libavcodec/tiff.h
	libavcodec/vaapi_h264.c
	libavcodec/vorbis.c
	libavcodec/vorbisdec.c
	libavcodec/vp6.c
	libswscale/swscale_unscaled.c
	libswscale/utils.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-15 17:51:09 +02:00
Peter Ross
e6cc30c22b wtvdec: also support big-sectors when fat depth is zero
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-15 16:57:35 +02:00
Diego Biurrun
bee6d2fd76 doxygen: replace @sa tag by the more readable but equivalent @see 2011-07-15 02:01:22 +02:00
Diego Biurrun
ad4cd0c2a4 doxygen: use Doxygen markup for authors and web links where appropriate 2011-07-15 02:01:21 +02:00