Commit Graph

42107 Commits

Author SHA1 Message Date
Michael Niedermayer
5eb353e0cd Merge remote-tracking branch 'qatar/master'
* qatar/master:
  opt/eval: Include mathematics.h for NAN/INFINITY
  mathematics: Don't use division by zero in NAN/INFINITY macros
  wma: Lower the maximum number of channels to 2
  x86: cpu: clean up check for cpuid instruction support
  ARM: generate position independent code to access data symbols

Conflicts:
	libavutil/opt.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-01 22:43:09 +02:00
Michael Niedermayer
23eeffcd48 mov: add workaround for incorrect 0 time point.
Fixes Ticket1471

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-01 21:41:06 +02:00
Michael Niedermayer
c23dcd9751 RELEASE: update, seem this has been forgotten
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-01 21:21:07 +02:00
Matthieu Bouron
8ac3868ff3 lavf/aiffdec: handle ID3 chunk
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-01 20:59:37 +02:00
Michael Niedermayer
87b9868972 h264: clear the ref lists when the reference are cleared.
Fixes reading of freed arrays (Ticket1498)

Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-01 20:49:31 +02:00
Michael Niedermayer
0c9283a03f h264: check log2_max_poc_lsb for validity
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-01 20:49:31 +02:00
Stefano Sabatini
aa1cceb5eb lavf/segment: rename variable "size" to "list_size"
The new name is more meaningful/less confusing.
2012-07-01 18:35:15 +02:00
Stefano Sabatini
3bee286ad2 lavf/segment: pass the top level chained muxer format context to segment_end()
Consistent with segment_start() and less confusing.
2012-07-01 18:35:06 +02:00
Martin Storsjö
3893feeccd opt/eval: Include mathematics.h for NAN/INFINITY
These files use NAN/INFINITY but didn't include mathematics.h to get
the fallback definitions if the system lacks the macros.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-01 19:20:11 +03:00
Ronald S. Bultje
a1245d5ca1 mathematics: Don't use division by zero in NAN/INFINITY macros
Some compilers, MSVC among them, don't recognize the divisions by
zero as meaning infinity/nan.

These macros should, according to the standard, expand to constant
expressions, but this shouldn't matter for our usage.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-01 19:06:13 +03:00
Michael Niedermayer
91ce7c21f0 ituh263dec: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-01 18:04:08 +02:00
Michael Niedermayer
9eb6e5cc48 wmaenc: switch all remaining asserts to av_asserts
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-01 18:02:17 +02:00
Martin Storsjö
710bd8a33e wma: Lower the maximum number of channels to 2
ff_wma_init is used only by wmadec and wmaenc, and neither of them
can handle more than 2 channels.

This fixes crashes with invalid files.

Based on patch by Piotr Bandurski and Michael Niedermayer.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-07-01 15:51:26 +03:00
Mans Rullgard
889c1ec4cc x86: cpu: clean up check for cpuid instruction support
This adds macros for accessing the EFLAGS register and uses
these instead of coding the entire check in inline asm.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-01 12:25:33 +01:00
Mans Rullgard
62634158b7 ARM: generate position independent code to access data symbols
This creates proper position independent code when accessing
data symbols if CONFIG_PIC is set.

References to external symbols should now use the movrelx macro.
Some additional code changes are required since this macro may
need a register to hold the GOT pointer.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-01 11:25:06 +01:00
Michael Niedermayer
f7cba736ba Merge remote-tracking branch 'cus/stable'
* cus/stable:
  ffplay: only configure video filters after we got the first frame

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-01 02:44:28 +02:00
Michael Niedermayer
64b25938e9 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  dsputilenc_mmx: split assignment of ff_sse16_sse2 to SSE2 section.
  dnxhdenc: add space between function argument type and comment.
  x86: fmtconvert: add special asm for float_to_int16_interleave_misc_*
  attributes: Add a definition of av_always_inline for MSVC
  cmdutils: Pass the actual chosen encoder to filter_codec_opts
  os_support: Add fallback definitions for stat flags
  os_support: Rename the poll fallback function to ff_poll
  network: Check for struct pollfd
  os_support: Don't compare a negative number against socket descriptors
  os_support: Include all the necessary headers for the win32 open function
  x86: vc1: fix and enable optimised loop filter

Conflicts:
	cmdutils.c
	cmdutils.h
	ffmpeg.c
	ffplay.c
	libavformat/os_support.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 22:44:18 +02:00
Nicolas George
be24f85176 ffmpeg: re-set frame_size after filter graph reset.
The filter contexts are completely cleared,
so the frame size can not be kept.
2012-06-30 21:44:25 +02:00
Michael Niedermayer
51d2578348 swr: fix MMX resample code, add emms
Fixes Ticket1495

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 21:27:39 +02:00
Michael Niedermayer
7001eee1f4 avcodec_encode_audio2: print error messages for errors
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 20:44:01 +02:00
Michael Niedermayer
5968a07622 wmaenc: rewrite 2nd stage quantization code
this is faster and more correct

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 20:16:39 +02:00
Michael Niedermayer
0755033f8a wmaenc: remove alternative quantization loop
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 19:42:01 +02:00
Michael Niedermayer
799df083f3 wmaenc: fix off by 1 error in quantization loop
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 19:38:11 +02:00
Michael Niedermayer
e704ab3d5f wmaenc: change another assert to av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 19:36:38 +02:00
Michael Niedermayer
ac2d3b0f6e nutdec: set duration_estimation_method
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 18:58:52 +02:00
Ronald S. Bultje
ceabc13f12 dsputilenc_mmx: split assignment of ff_sse16_sse2 to SSE2 section. 2012-06-30 09:24:52 -07:00
Ronald S. Bultje
e9156741a7 dnxhdenc: add space between function argument type and comment.
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-30 19:22:07 +03:00
Ronald S. Bultje
66a02159ea x86: fmtconvert: add special asm for float_to_int16_interleave_misc_*
This gets rid of a variable-length array and a for loop in C code.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-30 19:10:36 +03:00
Michael Niedermayer
3233ad4b44 nutdec: estimate duration from last syncpoint
Previously nut used the fallback of estimation by bitrate.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 17:22:37 +02:00
Michael Niedermayer
e2c95e6bd8 nutdec: remove assert that is wrong for some new duration code.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 17:22:37 +02:00
Michael Niedermayer
9d230ba924 nutdec: check that filesize is valid before using it.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-30 17:22:37 +02:00
Marton Balint
58f22f7012 ffplay: only configure video filters after we got the first frame
Otherwise the codec width, height and pixel format values may not be set.

Signed-off-by: Marton Balint <cus@passwd.hu>
2012-06-30 16:19:47 +02:00
Ronald S. Bultje
4f2c846d96 attributes: Add a definition of av_always_inline for MSVC
Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-30 16:03:45 +03:00
Stefano Sabatini
b12e61ac7f ffplay: factorize expression in audio_decode_frame()
Possibly improve readability.
2012-06-30 15:01:51 +02:00
Martin Storsjö
d3ed1c9571 cmdutils: Pass the actual chosen encoder to filter_codec_opts
This allows passing the right options to encoders when there's more
than one encoder for a certain codec id.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-30 15:44:10 +03:00
Ronald S. Bultje
5a608a239b os_support: Add fallback definitions for stat flags
Mingw headers provide similar defines already (unconditional #defines,
without any #undef or #ifdef around it), while MSVC doesn't have
them.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-30 15:18:50 +03:00
Martin Storsjö
cab2eb87f9 os_support: Rename the poll fallback function to ff_poll
The fallback function is a non-static function, we shouldn't be
defining non-static functions outside of the proper ff/av prefix
namespaces.

This is especially important for a function like poll, which
other parties (other libraries, or executables linking these
libraries) also might provide similar but incompatible fallbacks for.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-30 15:18:17 +03:00
Martin Storsjö
cdee08e365 network: Check for struct pollfd
We need to include winsock2.h here, to make sure we have the
real pollfd struct definition, if one exists, before defining the
fallback poll function.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-30 15:18:06 +03:00
Martin Storsjö
71078ad333 os_support: Don't compare a negative number against socket descriptors
The fds are unsigned integers in the windows definition of struct
sockfds. Due to this, the comparison if (fds[i].fd > n) was always
false.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-30 15:17:52 +03:00
Ronald S. Bultje
5aff37d28d os_support: Include all the necessary headers for the win32 open function
io.h is required for open and _wopen, and fcntl.h is required for
the O_CREAT flag. On mingw, fcntl.h is included by os_support.h (and
the mingw fcntl.h includes io.h), but include it explicitly here
since this implementation requires it.

Also move the #undef open up. open must not be defined to ff_win32_open
while including the headers that declare the open function. On mingw,
this happened in os_support.h before open was redirected.

Signed-off-by: Martin Storsjö <martin@martin.st>
2012-06-30 15:16:43 +03:00
Nicolas George
6f5e7e8690 ffmpeg: use the more powerful version of abuffersink. 2012-06-30 14:03:54 +02:00
Nicolas George
1f5c1333a7 sink_buffer: implement fixed frame size. 2012-06-30 14:03:54 +02:00
Nicolas George
0689d5e17a lavfi: implement samples framing on links.
Links can be set up to group samples into buffers of
specified minimum and maximum size.
2012-06-30 14:03:54 +02:00
Nicolas George
c9c4835f51 fate: add a test for the -force_key_frames option.
It broke twice in the last three months due to other changes.
2012-06-30 13:49:43 +02:00
Nicolas George
20a8dca57f ffmpeg: fix parsing of -force_key_frames option.
Identical to commit 4f6a1c9 by Reimar Döffinger,
that was lost after the merge of 19ad567.
2012-06-30 13:49:43 +02:00
Clément Bœsch
ca612a27ae swr: fix make checkheaders. 2012-06-30 11:21:53 +02:00
Clément Bœsch
022cbb6791 swr: small align cosmetic. 2012-06-30 11:18:45 +02:00
Clément Bœsch
3491c2a909 swr: use __asm__ instead of __asm.
For consistency only.
2012-06-30 11:18:05 +02:00
Mans Rullgard
f2fd167835 x86: vc1: fix and enable optimised loop filter
The problem is that the ssse3 psign instruction does the wrong
thing here.  Commit ea60dfe incorrectly removed a macro emulating
this instruction for pre-ssse3 code.  However, the emulation is
incorrect, and the code relies on the behaviour of the macro.
Specifically, the psign sets destination elements to zero where
the corresponding source element is zero, whereas the emulation
only negates destination elements where the source is negative.

Furthermore, the PSIGNW_MMX macro in x86util.asm is totally bogus,
which is why the original VC-1 code had an additional right shift
when using it.  Since the psign instruction cannot be used here,
skip all the macro hell and use the working instruction sequence
directly.

None of this was noticed due a stray return statement in
ff_vc1dsp_init_mmx() which meant that only the mmx version of the
loop filter was ever used (before being removed in ea60dfe).

Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-06-30 00:12:05 +01:00
Michael Niedermayer
8a85660d3b Merge remote-tracking branch 'qatar/master'
* qatar/master:
  file: Only include unistd.h if it exists
  random_seed: Only read /dev/*random if we have unistd.h
  doc: Indicate that RTMPT is natively implemented in libavformat
  rtpdec: Don't explicitly include unistd.h any longer

Conflicts:
	configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-06-29 23:24:58 +02:00