Commit Graph

43678 Commits

Author SHA1 Message Date
Michael Niedermayer
da74e883f1 lavc: add codec_descriptor field to AVCodecContext.
This can be used to avoid a time consuming lookup of the
descriptor

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 14:51:19 +02:00
Michael Niedermayer
d0bf3bf1ff Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavf: Detect discontinuities in timestamps for framerate/analyzeduration calculation
  lavf: Initialize the stream info timestamps in avformat_new_stream
  id3v2: Match PIC mimetype/format case-insensitively
  configure: Rename check_asm() to more fitting check_inline_asm()
  fate: Only test enabled filters
  avresample: De-doxygenize some comments where Doxygen is not appropriate
  rtmp: split chunk_size var into in_chunk_size and out_chunk_size
  rtmp: Factorize the code by adding find_tracked_method

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 13:43:03 +02:00
Diego Biurrun
f30ff54200 doc: Clarify licensing issues arising from external libraries 2012-08-12 13:28:58 +02:00
Martin Storsjö
bdefe22b8e lavf: Detect discontinuities in timestamps for framerate/analyzeduration calculation
If the dts difference is more than 1000 times the average dts
difference, restart the analysis.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-12 12:39:49 +03:00
Martin Storsjö
30c26c2442 lavf: Initialize the stream info timestamps in avformat_new_stream
These are normally initialized to AV_NOPTS_VALUE at the start
of avformat_find_stream_info, but if a new stream is found while
this function is running (e.g. like in mpegts), the newly added
AVStreams didn't have these values properly initalized, leading
to avformat_find_stream_info terminating too soon (when the
first timestamps are far from 0).

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-12 12:39:47 +03:00
Mohammad Alsaleh
6e9bbc6525 id3v2: Match PIC mimetype/format case-insensitively
Some files' embedded art seems to have the mimetype 'image/JPG' instead
of 'image/jpg'. Libav fails to parse those because it matches
case-sensitively.

Use av_strncasecmp() to fix this behaviour.

Signed-off-by: Mohammad Alsaleh <msal@tormail.org>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2012-08-12 11:00:19 +02:00
Michael Niedermayer
6fd7bf7b03 sgidec: fix error free end detection.
Fixes Ticket1506
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 05:32:07 +02:00
Michael Niedermayer
39c56ef921 sgidec: correct end pointer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 05:31:14 +02:00
Michael Niedermayer
c5ea3a009b ffmpeg: Do not discard slightly invalid timestamps.
Fixes Ticket1627

The fate change is due to ffmpeg no longer pushing audio timestamps
aggressively up (which is what caused the AV sync issues in the ticket)
but leaving them as they are.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 01:22:48 +02:00
Michael Niedermayer
15e4bd65b1 vc1dec: support debug & FF_DEBUG_PICT_INFO.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 01:21:42 +02:00
Michael Niedermayer
a036ac5782 lavf: do not discard correct dts in favor of wrong pts for vc1-wmapro.ism
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-12 00:52:20 +02:00
Michael Niedermayer
2e4b662787 mov: add av_dlog() to CTTS reading code like is already done in STTS.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 23:27:27 +02:00
Diego Biurrun
575db88377 configure: Rename check_asm() to more fitting check_inline_asm() 2012-08-11 20:26:31 +02:00
Diego Biurrun
e017c87552 fate: Only test enabled filters
This fixes running FATE without --enable-gpl.
2012-08-11 20:26:31 +02:00
Diego Biurrun
3aa696e883 avresample: De-doxygenize some comments where Doxygen is not appropriate 2012-08-11 20:22:01 +02:00
Michael Niedermayer
7d23a65f0d asfdec: fix FRAME_HEADER_SIZE
Fixes Ticket1477

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 19:45:45 +02:00
Michael Niedermayer
5a49482cc0 dsputil_template: switch to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 16:58:18 +02:00
Michael Niedermayer
f5f3684fb8 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  lavf: simplify is_intra_only() by using codec descriptors.
  lavc: add an intra-only codec property.
  lavc: add codec descriptors.
  lavc: fix mixing CODEC_ID/AV_CODEC_ID in C++ code.
  dict: move struct AVDictionary definition to dict.c
  dict: add av_dict_count()

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

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 15:01:45 +02:00
Jordi Ortiz
f5ce90f2de rtmp: split chunk_size var into in_chunk_size and out_chunk_size
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-11 15:49:37 +03:00
Samuel Pitoiset
a8103503b3 rtmp: Factorize the code by adding find_tracked_method
Also fix the bytestream reader size parameter to take the
offset into account.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-08-11 15:15:51 +03:00
Anton Khirnov
885da7b082 lavf: simplify is_intra_only() by using codec descriptors. 2012-08-11 11:34:24 +02:00
Anton Khirnov
51efed152d lavc: add an intra-only codec property. 2012-08-11 11:34:09 +02:00
Anton Khirnov
c223d79945 lavc: add codec descriptors.
They describe properties that are inherent to a codec (as described by
an AVCodecID) without referring to a specific implementation.
2012-08-11 11:32:11 +02:00
Michael Niedermayer
48d20b918c snowdec: increase stack size
Fixes Ticket1632

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

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

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 02:00:33 +02:00
Michael Niedermayer
bd6ece4609 mp3enc: fix CODEC_ID/CodecID that leaked in from older patch
Found-by: jamal <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-11 01:52:15 +02:00
Stefano Sabatini
e874b29296 doc/Makefile: invoke perl to interpret texi2pod.pl
Do not rely on shebang directive in the script, whose exact behavior is
system dependent.
2012-08-10 23:14:57 +02:00
Stefano Sabatini
ad5043e285 cmdutils: show options in show_help_children only if the context has options
Avoid to print a pointless name of the context followed by an empty list.
2012-08-10 23:14:44 +02:00
Stefano Sabatini
a6d6b8a200 lavu/opt: fix crash in av_opt_next() in case the class has no options 2012-08-10 23:14:37 +02:00
Anton Khirnov
2ff67c909c lavc: fix mixing CODEC_ID/AV_CODEC_ID in C++ code.
C++ does not allow to mix different enums, so e.g. code comparing
ACodecID with CodecID would fail to compile with gcc.

This very evil hack should fix this problem.
2012-08-10 18:48:40 +02:00
Michael Niedermayer
7fd467f708 mp3/mp2: identify the video codecs as APIC through query_codec.
Fixes Ticket1408

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 17:24:39 +02:00
Michael Niedermayer
22d804b7f0 ffmpeg: dont auto match videostreams with attachment pics.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 17:23:18 +02:00
Michael Niedermayer
f9f11c1000 lavf: return APIC fourcc from query_format() if the codec is supported as an attachment pic
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 17:22:56 +02:00
Michael Niedermayer
b2bc48ae22 iff: replace av_abort by av_assert0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 16:26:39 +02:00
Michael Niedermayer
18b0c39f99 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  g723.1: fix addition overflow
  g723.1: simplify and fix multiplication overflow
  g723.1: deobfuscate an expression
  g723.1: remove unused #includes
  ARM: add missing "cc" clobber in av_clipl_int32_arm()
  rtmp: Factorize the code by adding handle_invoke_error
  rtmp: Factorize the code by adding handle_invoke_status
  rtmp: Factorize the code by adding handle_invoke_result
  libavutil: remove unused av_abort() macro
  ffmenc: replace if/abort with assert()
  libavutil: drop offsetof() fallback definition
  libavutil: drop fallback definitions of INTxx_MIN/MAX
  configure: Check for a sctp struct instead of just the header
  configure: suncc: Add -xc99 to dependency flags, required on Solaris
  doxygen: Fix function parameter names to match the code
  doc: Drop obsolete shared libs cflags hint to workaround Cygwin gcc bugs
  swf: Move shared table out of the header file
  swf: Move swf_audio_codec_tags table to the only place it is used
  fate: add G.723.1 decoder tests

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

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 16:25:23 +02:00
Mans Rullgard
33de86db2b dict: move struct AVDictionary definition to dict.c
This makes struct AVDictionary fully opaque now that nothing
needs to access it directly any more.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-08-10 15:15:00 +01:00
Mans Rullgard
987170cb9d dict: add av_dict_count()
This adds a function to retrieve the number of entries in a
dictionary and updates the places directly accessing what should
be an opaque struct to use this new function instead.

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

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

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

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

Conflicts:
	Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 04:46:13 +02:00
Michael Niedermayer
969267482d ffmpeg: Allocate new buffer for bitstream filter when buffer shifted
fix crash with aac_adtstoasc bitstream filter
Fixes Ticket1441

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 04:36:43 +02:00
Michael Niedermayer
a0d15027e3 yadif: check input video size.
yadif needs at least 3x3 or it will likely crash with out of array reads

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 00:09:34 +02:00
Michael Niedermayer
8f29901b54 yadif: remove get_video_buffer, its redundant now
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 00:09:11 +02:00
Michael Niedermayer
2f7e8dcf45 yadif: redesign first and last 2 lines handling.
The previous code dependent on the input buffer matching the
buffer that has been provided by yadifs get_buffer.
The API does in now way gurantee this though its often true.
This fixes some out of array reads.
The regression test checksums change due to "out of picture" values
being initialized differently.
There should be no visual difference in the filters output

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-08-10 00:08:34 +02:00