Marton Balint
4ea7fbb2ec
ffplay: step to next frame if paused when seeking
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-02-02 12:38:15 +01:00
Marton Balint
c5eab4bb70
ffplay: move up pause functions
...
No change in functionality.
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-02-02 12:38:14 +01:00
Marton Balint
5de3f724f1
ffplay: remember last window dimensions
...
After this change the dimensions of single image videos will be remembered when
coming back from full screen. The issue was mentioned in ticket #2174 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-02-02 12:38:14 +01:00
Marton Balint
4fd6e5af1e
ffplay: fix order of setting show_mode
...
Without the fix the refresh event may have got called with unset show mode.
Fixes ticket #2174 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-02-02 12:38:14 +01:00
Marton Balint
571ef42dd4
ffplay: dynamically allocate audio buffer
...
We simply remove the fixed length VideoState->audio_buf2 and use
the previously unused VideoState->audio_buf1.
Fixes ticket #2191 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-02-02 12:38:14 +01:00
Marton Balint
f65e57124f
ffplay: flush video filters on seek
...
Actually we just re-create the filters, since there is no way to flush them.
Fixes hangup with yadif filter on seeking forward caused by a filtered frame
with a pts before the seek.
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-01-19 00:48:06 +01:00
Marton Balint
1427c6842d
ffplay: use videoq.serial to detect obsolete frames
...
Previously VideoPicture->skip was used for that, using videoq.serial enables us
to detect obsolete frames right after pushing flush_pkt to the packet queue, so
we don't have to wait for the decoder thread to pop the flush packet anymore.
This is good because until now a full video picture queue may have blocked the
decoder thread.
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-01-19 00:48:06 +01:00
Michael Niedermayer
2d8d63a9a0
ffplay: fix sws_flags
...
Fixes Ticket45
Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-01-13 22:48:28 +01:00
Stefano Sabatini
e8bab4c6fc
ffplay: extend documentation for the -vf option
...
In particular, make it consistent with the ffmpeg docs.
2013-01-13 16:03:13 +01:00
Clément Bœsch
491ca0e89f
Replace references to "que" with the appropriate word.
...
"que" sounds like a slang word to me. This commit renames a few
variables, fix the comments and the logging messages (sometimes along
with small other typo fixes).
2013-01-03 00:21:47 +01:00
Marton Balint
92b50b71a1
ffplay: fix type of time_diff in waveform display
...
Fixes time diff overflow visible as showing the same few waveforms in a loop at
the end of file.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-12-28 20:01:01 +01:00
Marton Balint
ec89ea3022
ffplay: always display audio visualization if mode is set
...
Fixes ticket #1903 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-12-28 20:01:01 +01:00
Marton Balint
ef7f3b0870
ffplay: hide cursor on no mouse movement
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-12-28 20:01:00 +01:00
Marton Balint
0ca4e9f014
ffplay: reset external clock to unknown on start
...
Fixes a delay and initial frame drops on starting realtime streams with
external clock.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-12-28 20:01:00 +01:00
Marton Balint
4e33d8ebb3
ffplay: only drop frames if not in frame step mode
...
Fixes ticket #2053 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-12-28 20:00:07 +01:00
Marton Balint
97660b8b13
ffplay: move frame step pause from the video thread to video_refresh
...
This way we pause the video right after we displayed a new frame. Partially
fixes ticket #2053 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-12-28 19:59:46 +01:00
Marton Balint
cf0c63d99a
ffplay: fix greenish line on the right edge with some xv sizes
...
If the XV image linesize was different from the width, SDL would create an
overlay wider than the actually requested one. This causes a greenish line on
the right, because the rightmost texel is blended with unset data. This patch
introduces a function which duplicates the rightmost texel to the unset space,
that way the blending will be done with duplicated border texels.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-12-25 13:54:07 +01:00
Michael Niedermayer
3f72dbe462
ffplay: fix another use of context instead of frame parameters
...
Fixes Ticket2050
Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-22 03:41:55 +01:00
Michael Niedermayer
230bef0a89
ffplay: fix handling of resolution changes with h264-mt
...
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-12-21 00:50:47 +01:00
Stefano Sabatini
013b700771
ffplay: provide some feedback in case the codec cannot be set
2012-12-16 10:58:02 +01:00
Stefano Sabatini
1cbb11cda7
ffplay: set codec_id in codec context
...
Set codec id in case another codec is forced on the context (e.g. when
the user specify the codec with -codec).
For example fix:
ffplay -vcodec pgmyuv -i "tests/vsynth1/%02d.pgm"
2012-12-16 10:58:02 +01:00
Stefano Sabatini
cb0f97b59d
ffplay: improve robustness of opt_codec(), and add options acodec,vcodec,scodec
...
Fail with a meaningfull error message in case of bogus input.
Also the new options are more consistent with the rest of the tool
options, since it does not support generic stream specifiers.
2012-12-16 10:57:50 +01:00
Michael Niedermayer
0ecfcf8621
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
avplay: Do not use removed av_get_int()
avconv: fix variable shadowing in configure_input_audio_filter()
Conflicts:
ffmpeg_filter.c
ffplay.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-11-29 14:22:58 +01:00
Marton Balint
f7eb50f3c0
ffplay: increase maximum frame duration to 1 hour for streams without TS discontinuity
...
Partially fixes ticket #1707 . A-V sync still needs some work after seeking...
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-28 21:39:50 +01:00
Marton Balint
2efd01a32f
ffplay: fix updating external clock after seeking
...
Now it should work for the timestamp based and the byte based case as well.
Also only update the external clock if the seeking was successful.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-28 21:39:50 +01:00
Marton Balint
fc38bbcd6a
ffplay: disallow seeking before the start of the file
...
In timestamp based seeking we update the external clock to the seek target,
therefore we should use sane timestamps even if libavformat could handle
seeking before the start of the file.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-28 21:39:50 +01:00
Marton Balint
747c749d42
ffplay: adjust external clock speed based on buffer fullness for realtime sources
...
This provides a means to synchronize the player clock to the clock of the
encoder.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-04 18:29:49 +01:00
Marton Balint
fec39d99d6
ffplay: remove redundant !codec check
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-01 15:46:18 +01:00
Marton Balint
fdb933444a
ffplay: only initialize codec opts before using it
...
Fixes Coverity CID 733793.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-01 15:46:18 +01:00
Marton Balint
8cb740245d
ffplay: always free buffersink_params in configure_video_filters
...
Fixes Coverity CID 733792.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-01 15:46:18 +01:00
Marton Balint
09214f494b
ffplay: remove uneeded format filter, buffersink format is set
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-01 15:46:18 +01:00
Marton Balint
afd9e705de
ffplay: check for buffersink_params allocation success
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-01 15:46:18 +01:00
Marton Balint
abd49a7524
ffplay: always free inputs and outputs in configure_filtergraph
...
Fixes Coverity CID 733791.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-01 15:46:18 +01:00
Marton Balint
65f6c42a9f
ffplay: fill the unused part of the window with black
...
Should fix ticket #1667 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-01 15:46:18 +01:00
Marton Balint
00b70f8d29
ffplay: add update parameter to fill_rectangle
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-11-01 15:46:18 +01:00
Marton Balint
3166a6fc37
ffplay: if there is no audio stream, use external clock by default
...
Otherwise playing the video could be much slower than realtime if the system
can't decode or display the frames fast enough.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-10-21 17:18:12 +02:00
Marton Balint
d30c69251f
ffplay: use get_master_sync_type where necessary
...
We should make decisions based on the real sync type. This also simplifies
the code.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-10-21 17:18:12 +02:00
Marton Balint
fca16a1571
ffplay: add get_master_sync_type function
...
The real av_sync_type may be different to VideoState->av_sync_type, because the
required audio or video stream for audio or video clock may not be available.
We will use a function to query the real av_sync_type which is used for
determining the master clock.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-10-21 17:18:12 +02:00
Marton Balint
b2a8850969
ffplay: only check external clock if current frame serial matches the displayed frame serial
...
This way we avoid updating the external clocks with timestamps beloging to
frames before seek.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-10-21 17:18:12 +02:00
Marton Balint
2a4c7e6540
ffplay: add serial field to PacketQueue entry and populate it
...
The purpose of the serial field is to accompany the decoded data during the
decoding process to know if the decoded data belongs to the data stream after
the latest packet queue flush.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-10-21 17:18:12 +02:00
Marton Balint
77bd595ad2
ffplay: fix external time sync mode
...
We now initalize the external clock to 0 and, we use the system clock to
regulate the timings of audio and video in external clock sync mode. We
recover from external clock sync loss, when the delay to external clock is
bigger than AV_NOSYNC_THRESHOLD.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-10-21 17:18:12 +02:00
Marton Balint
66bb5b1bc9
ffplay: initialize audio and video pts drift
...
This makes sensible audio and video clock values even before displaying the
first frame.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-10-21 17:18:12 +02:00
Marton Balint
eaa91ed863
ffplay: fix nosync threshold check in synchronize_audio
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-10-21 17:18:12 +02:00
Marton Balint
da56955621
ffplay: use framedrop by default when sync is not done to video
...
When using external sync, framedrop is perfectly fine.
Signed-off-by: Marton Balint <cus@passwd.hu>
2012-10-21 17:18:12 +02:00
Michael Niedermayer
a63d7213b3
ffplay: Prevent 0/0 aspect from being passed on to lavfi
...
0/0 fails to be parsed
Fixes Ticket1814
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-14 23:40:14 +02:00
Michael Niedermayer
d0707677fa
ffplay: use audio parameters from the decoded frame instead of AVCodecContext
...
Based on commit by Justin Ruggles (the changed code is too different to apply as is)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-13 16:47:50 +02:00
Michael Niedermayer
b4ca1b159f
Merge commit 'bc4620e5d61a4dd9a1f654fadd281a172aab04be'
...
* commit 'bc4620e5d61a4dd9a1f654fadd281a172aab04be':
Remove libmpeg2 #define remnants
De-doxygenize some top-level files
Conflicts:
ffmpeg.c
ffmpeg.h
ffmpeg_filter.c
ffplay.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-13 15:01:39 +02:00
Michael Niedermayer
ac627b3d38
Merge commit '716d413c13981da15323c7a3821860536eefdbbb'
...
* commit '716d413c13981da15323c7a3821860536eefdbbb':
Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormat
Conflicts:
doc/examples/muxing.c
ffmpeg.h
ffmpeg_filter.c
ffmpeg_opt.c
ffplay.c
ffprobe.c
libavcodec/8bps.c
libavcodec/aasc.c
libavcodec/aura.c
libavcodec/avcodec.h
libavcodec/avs.c
libavcodec/bfi.c
libavcodec/bmp.c
libavcodec/bmpenc.c
libavcodec/c93.c
libavcodec/cscd.c
libavcodec/cyuv.c
libavcodec/dpx.c
libavcodec/dpxenc.c
libavcodec/eatgv.c
libavcodec/escape124.c
libavcodec/ffv1.c
libavcodec/flashsv.c
libavcodec/fraps.c
libavcodec/h264.c
libavcodec/huffyuv.c
libavcodec/iff.c
libavcodec/imgconvert.c
libavcodec/indeo3.c
libavcodec/kmvc.c
libavcodec/libopenjpegdec.c
libavcodec/libopenjpegenc.c
libavcodec/libx264.c
libavcodec/ljpegenc.c
libavcodec/mjpegdec.c
libavcodec/mjpegenc.c
libavcodec/motionpixels.c
libavcodec/mpeg12.c
libavcodec/mpeg12enc.c
libavcodec/mpeg4videodec.c
libavcodec/mpegvideo_enc.c
libavcodec/pamenc.c
libavcodec/pcxenc.c
libavcodec/pgssubdec.c
libavcodec/pngdec.c
libavcodec/pngenc.c
libavcodec/pnm.c
libavcodec/pnmdec.c
libavcodec/pnmenc.c
libavcodec/ptx.c
libavcodec/qdrw.c
libavcodec/qpeg.c
libavcodec/qtrleenc.c
libavcodec/raw.c
libavcodec/rawdec.c
libavcodec/rl2.c
libavcodec/sgidec.c
libavcodec/sgienc.c
libavcodec/snowdec.c
libavcodec/snowenc.c
libavcodec/sunrast.c
libavcodec/targa.c
libavcodec/targaenc.c
libavcodec/tiff.c
libavcodec/tiffenc.c
libavcodec/tmv.c
libavcodec/truemotion2.c
libavcodec/utils.c
libavcodec/vb.c
libavcodec/vp3.c
libavcodec/wnv1.c
libavcodec/xl.c
libavcodec/xwddec.c
libavcodec/xwdenc.c
libavcodec/yop.c
libavdevice/v4l2.c
libavdevice/x11grab.c
libavfilter/avfilter.c
libavfilter/avfilter.h
libavfilter/buffersrc.c
libavfilter/drawutils.c
libavfilter/formats.c
libavfilter/src_movie.c
libavfilter/vf_ass.c
libavfilter/vf_drawtext.c
libavfilter/vf_fade.c
libavfilter/vf_format.c
libavfilter/vf_hflip.c
libavfilter/vf_lut.c
libavfilter/vf_overlay.c
libavfilter/vf_pad.c
libavfilter/vf_scale.c
libavfilter/vf_transpose.c
libavfilter/vf_yadif.c
libavfilter/video.c
libavfilter/vsrc_testsrc.c
libavformat/movenc.c
libavformat/mxf.h
libavformat/utils.c
libavformat/yuv4mpeg.c
libavutil/imgutils.c
libavutil/pixdesc.c
libswscale/input.c
libswscale/output.c
libswscale/swscale_internal.h
libswscale/swscale_unscaled.c
libswscale/utils.c
libswscale/x86/swscale_template.c
libswscale/x86/yuv2rgb.c
libswscale/x86/yuv2rgb_template.c
libswscale/yuv2rgb.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-08 21:06:57 +02:00
Michael Niedermayer
2e8dcde1fe
ffplay: autodetect realtime streams and enable infbuf
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-04 17:35:20 +02:00
Michael Niedermayer
cb3fd029b7
ffplay: add a 3rd state to infbuf for autodetection
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2012-10-04 17:34:47 +02:00