Commit Graph

33715 Commits

Author SHA1 Message Date
Michael Niedermayer
266172aaf9 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  w32threads: support for frame multithreading
  avcodec: remove stray @deprecated comment

Conflicts:
	libavcodec/utils.c
	libavcodec/w32thread.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-17 02:29:40 +02:00
Michael Niedermayer
f524b1184e Merge remote-tracking branch 'cus/stable'
* cus/stable:
  ffplay: avoid window resize crash on osx with libsdl 1.2.14
  ffplay: add delay multiple times to frame_timer if it is less than current time
  ffplay: remove early frame drop functionality
  ffplay: calculate target clock dynamically, make code more readable

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 23:42:41 +02:00
Michael Niedermayer
fd6af5375b av_tempfile: dont try the current directory with mkstemp() unless we are on windows
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 22:32:41 +02:00
Michael Niedermayer
e8e13358ad av_tempfile: change mode for fallback to 0600 to match mkstemp()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 22:13:20 +02:00
Michael Niedermayer
74dbb5388e av_tempfile: Pass int log_offset, void *log_ctx
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 21:51:28 +02:00
Michael Niedermayer
482aabd59a av_tempfile: fix error codes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 21:51:28 +02:00
Michael Niedermayer
4105335c98 av_tempfile: use O_EXCL
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 21:51:28 +02:00
Michael Niedermayer
797c2ef970 av_tempfile: try tempnam(NULL) first
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 21:51:28 +02:00
Michael Niedermayer
9329d36a3a cache: add todo list
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 21:51:28 +02:00
Steven Walters
27237d524e w32threads: support for frame multithreading
Replace our incomplete w32threads implementation with x264's pthreads
w32threads wrapper.
Relicensed to LGPL with kind permission by Pegasys Inc.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-16 21:45:16 +02:00
Stefano Sabatini
477718f40b lavd/lavfi: compute and use the used samples buffer size for the output audio packet size
Do not assume the used size is the same of the allocated size, as it was
wrongly assumed. Fix audio playback when the two values differ.
2011-10-16 21:18:44 +02:00
Jean First
72776adfb9 ffplay: avoid window resize crash on osx with libsdl 1.2.14
Signed-off-by: Marton Balint <cus@passwd.hu>
2011-10-16 19:28:22 +02:00
Marton Balint
abb0e4f637 ffplay: add delay multiple times to frame_timer if it is less than current time
If the picture queue is empty, or when the calculated delay is 0, frame_timer
is not increased but we are still displaying the old frame. When we eventually
get a frame, where the computed delay is positive, so we don't need to drop any
more frames, then it is best to update frame_timer to be as near as the current
time as it can.

This way we dont't have to wait several frames to add the necesarry delays to
frame_timer to reach current time, therefore there are no extra frame drops
after reaching a positive delay.

Signed-off-by: Marton Balint <cus@passwd.hu>
2011-10-16 19:21:01 +02:00
Marton Balint
d2d8e1e599 ffplay: remove early frame drop functionality
The current impementation of early frame drops (dropping frames before adding
them to the picture queue) has multiple problems:

Even after gettin A-V sync, the frame droping continues until
VideoState->skip_frames reaches 1, which can take a lot of time causing useless
additional frame drops and bad AV-sync. This issue can be easily triggered with
for example changing the audio stream.

Also video_refresh currenly does not handle early skipped frames in every case,
for example if we skip a frame, then the last frame duration calculation will
compute the duration of the sum of the skipped frame and the duration of the
frame before that, and in compute_target_delay we may multiply this unusually
big delay.

Signed-off-by: Marton Balint <cus@passwd.hu>
2011-10-16 19:21:01 +02:00
Marton Balint
4e268aae55 ffplay: calculate target clock dynamically, make code more readable
Since target clock is based on the current A-V delay, it is better calculate it
when we actually need it rather than when we put a picture in the picture
queue.

The patch also makes a code a bit more readable by renaming some delay
variables to duration, and converting compute_target_time to a delay
calculating function which does not modify the state. Factoring out the
iteration of the pictq to standalone function is also done in this patch.

Signed-off-by: Marton Balint <cus@passwd.hu>
2011-10-16 19:21:01 +02:00
Carl Eugen Hoyos
6bca574a98 Allow to overwrite input stream tags. 2011-10-16 19:05:11 +02:00
Mans Rullgard
b44522981c avcodec: remove stray @deprecated comment
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-16 16:22:05 +01:00
Michael Niedermayer
02b651a7e3 cache: Fallback to using the cache size for AVSEEK_SIZE if the underlaying protocol has nothing better.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 17:12:37 +02:00
Michael Niedermayer
e9f62a8b2b add cache protocol
This allows backward seeking on top of some non seekable streams.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 17:12:37 +02:00
Michael Niedermayer
5746f91036 av_tempfile: handle missing O_BINARY
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 17:12:37 +02:00
Michael Niedermayer
c9833fc33a av_tempfile: fix alloc type for !HAVE_MKSTEMP
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 17:12:37 +02:00
Michael Niedermayer
885158c887 Move av_tempfile() into libavutil, it is a generically usefull thing and its small.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 17:12:37 +02:00
Carl Eugen Hoyos
7f16ec61e1 Do not warn about wrong channel layout if no channel layout is defined. 2011-10-16 17:12:53 +02:00
Carl Eugen Hoyos
55d44578c6 Support decoding ASP variant from QNAP Systems.
Fixes part of ticket #560.
2011-10-16 10:30:24 +02:00
Michael Niedermayer
2eaa55375b asf: export all the DRM stuff, some of it are human readable strings.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 05:04:48 +02:00
Michael Niedermayer
6322a31df3 asf: dont warn the user about digital sigantures, they should on their own not cause failure.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 04:44:42 +02:00
Michael Niedermayer
410c06d2f3 asf: export encryption information from asf.
This way user apps can choose to skip such content.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 04:41:11 +02:00
Michael Niedermayer
2822361ed1 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  prores: get correct size for coded V plane if alpha is present
  prores: do not set pixel format on codec init
  pthread: prevent updating AVCodecContext from itself in frame_thread_free
  pthread: copy coded frame dimensions in update_context_from_thread
  vp8: prevent read from uninitialized memory in decode_mvs
  vp8: force reallocation in update_thread_context after frame size change
  vp8: fix return value if update_dimensions fails
  matroskadec: fix out of bounds write
  adpcmdec: calculate actual number of output samples for each decoder.
  adpcmdec: check remaining buffer size before decoding next block in the ADPCM IMA WAV decoder.
  adpcmdec: do not terminate early in ADPCM IMA Duck DK3 decoder.
  adpcmdec: remove unneeded buf_size==0 check.
  adpcmdec: remove unneeded zeroing of *data_size
  dnxhdenc: fixed signed multiplication overflow

Conflicts:
	tests/ref/fate/prores-alpha
	tests/ref/fate/truemotion1-24

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 04:02:09 +02:00
Michael Niedermayer
647ec6fc03 bit: require at least 1 frame for probing
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 02:43:36 +02:00
Michael Niedermayer
658c5209fb idf: Improve idf_probe() so it doesnt succeed on 0 byte input 2011-10-16 02:38:02 +02:00
JULIAN GARDNER
3e01c9b547 dvbsubdec: cosmetic change on how xpos is passed around
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-16 02:06:31 +02:00
Stefano Sabatini
bca8bd99d0 af_ashowinfo: fix plane size computation for planar layout formats
+10l.
2011-10-16 01:58:31 +02:00
Stefano Sabatini
22137bb5c2 af_aresample: fix properties setting in the output buffer
In particular: set output timebase to 1/output_sample_rate, fix output
PTS computation, and do not forget to copy properties values from the
input buffer.
2011-10-16 00:52:23 +02:00
Stefano Sabatini
cc6b8c4b61 af_ashowinfo: adopt used plane size when computing the plane checksum
Fix checksum computation when the used plane size is different from the
allocated plane size, as it was wrongly assumed.
2011-10-16 00:51:36 +02:00
Michael Niedermayer
7d2e4673b1 dvbsubdec: Fix 0xf0 end detection
Based on a change by JULIAN GARDNER

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 21:28:43 +02:00
JULIAN GARDNER
294ea2cfc6 dvbsub: add comments
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 20:30:54 +02:00
JULIAN GARDNER
8a6799d205 dvbsub: add dvb_encode_rle8()
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 20:30:18 +02:00
JULIAN GARDNER
7fa1f02ce2 dvbsub: Move setting of *dvb_encode_rle() up
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 20:28:51 +02:00
JULIAN GARDNER
d5f4857a73 dvbsubdec:dvbsub_display_end_segment() move main loop under if() as its useless if false.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 20:16:31 +02:00
Carl Eugen Hoyos
5a563c6319 Support H264 from QNAP Systems. 2011-10-15 18:28:32 +02:00
Mans Rullgard
91038cdbd1 prores: get correct size for coded V plane if alpha is present
The size check must be updated to take into account both manners
in which v_data_size might be set.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-15 14:59:44 +01:00
Mans Rullgard
cd14e297e6 prores: do not set pixel format on codec init
The pixel format is not known until the frame header is parsed.
Guessing it here only causes trouble for the caller if the guess
turns out to be wrong (and actually causes very wrong output by
avconv/avplay).

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-10-15 14:59:44 +01:00
Michael Niedermayer
2ed7e353bd h264: Workaround invalid flag combinations of 8x8 inference.
Fixes Ticket555

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-15 15:38:10 +02:00
Stefano Sabatini
1d0afec8fc ffprobe: add AVClass to writers
It is useful for logging messages from a writer context.
2011-10-15 00:54:22 +02:00
Ronald S. Bultje
7b6883898f pthread: prevent updating AVCodecContext from itself in frame_thread_free
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Ronald S. Bultje
feadcd1bdc pthread: copy coded frame dimensions in update_context_from_thread
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Ronald S. Bultje
0f0b5d6434 vp8: prevent read from uninitialized memory in decode_mvs
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Ronald S. Bultje
5653579381 vp8: force reallocation in update_thread_context after frame size change
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Ronald S. Bultje
f05c2fb6eb vp8: fix return value if update_dimensions fails
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00
Ronald S. Bultje
723229c11f matroskadec: fix out of bounds write
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-10-15 00:13:21 +02:00