summaryrefslogtreecommitdiff
path: root/ffplay.c
Commit message (Collapse)AuthorAge
* ffplay: adjust external clock speed based on buffer fullness for realtime ↵Marton Balint2012-11-04
| | | | | | | | | sources This provides a means to synchronize the player clock to the clock of the encoder. Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: remove redundant !codec checkMarton Balint2012-11-01
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: only initialize codec opts before using itMarton Balint2012-11-01
| | | | | | Fixes Coverity CID 733793. Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: always free buffersink_params in configure_video_filtersMarton Balint2012-11-01
| | | | | | Fixes Coverity CID 733792. Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: remove uneeded format filter, buffersink format is setMarton Balint2012-11-01
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: check for buffersink_params allocation successMarton Balint2012-11-01
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: always free inputs and outputs in configure_filtergraphMarton Balint2012-11-01
| | | | | | Fixes Coverity CID 733791. Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: fill the unused part of the window with blackMarton Balint2012-11-01
| | | | | | Should fix ticket #1667. Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: add update parameter to fill_rectangleMarton Balint2012-11-01
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: if there is no audio stream, use external clock by defaultMarton Balint2012-10-21
| | | | | | | 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>
* ffplay: use get_master_sync_type where necessaryMarton Balint2012-10-21
| | | | | | | We should make decisions based on the real sync type. This also simplifies the code. Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: add get_master_sync_type functionMarton Balint2012-10-21
| | | | | | | | | 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>
* ffplay: only check external clock if current frame serial matches the ↵Marton Balint2012-10-21
| | | | | | | | | 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>
* ffplay: add serial field to PacketQueue entry and populate itMarton Balint2012-10-21
| | | | | | | | 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>
* ffplay: fix external time sync modeMarton Balint2012-10-21
| | | | | | | | | 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>
* ffplay: initialize audio and video pts driftMarton Balint2012-10-21
| | | | | | | This makes sensible audio and video clock values even before displaying the first frame. Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: fix nosync threshold check in synchronize_audioMarton Balint2012-10-21
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: use framedrop by default when sync is not done to videoMarton Balint2012-10-21
| | | | | | When using external sync, framedrop is perfectly fine. Signed-off-by: Marton Balint <cus@passwd.hu>
* ffplay: Prevent 0/0 aspect from being passed on to lavfiMichael Niedermayer2012-10-14
| | | | | | | 0/0 fails to be parsed Fixes Ticket1814 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* ffplay: use audio parameters from the decoded frame instead of AVCodecContextMichael Niedermayer2012-10-13
| | | | | Based on commit by Justin Ruggles (the changed code is too different to apply as is) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit 'bc4620e5d61a4dd9a1f654fadd281a172aab04be'Michael Niedermayer2012-10-13
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* | Merge commit '716d413c13981da15323c7a3821860536eefdbbb'Michael Niedermayer2012-10-08
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
* | ffplay: autodetect realtime streams and enable infbufMichael Niedermayer2012-10-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: add a 3rd state to infbuf for autodetectionMichael Niedermayer2012-10-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-10-02
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: ARM: fix Thumb PIC on Apple nut: add do {} while (0) to GET_V tiffenc: Check av_malloc() results. tiffenc: Simplify pixel format setup using AVPixFmtDescriptor. Use atexit() instead of defining a custom exit_program() interface. msvc: Fix detection of VFW & Avisynth required libs Conflicts: ffmpeg.c ffmpeg_opt.c ffplay.c ffprobe.c ffserver.c libavcodec/tiffenc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '7751e4693dd10ec98c20fbd9887233b575034272'Michael Niedermayer2012-09-25
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '7751e4693dd10ec98c20fbd9887233b575034272': ogg: check that the expected number of headers had been parsed libx264: change default to closed gop to match x264cli Use avcodec_free_frame() to free AVFrames. lavf: use a malloced AVFrame in try_decode_frame(). lavc: add avcodec_free_frame(). lavc: ensure extended_data is set properly on decoding lavc: initialize AVFrame.extended_data in avcodec_get_frame_defaults() lavc: use av_mallocz to allocate AVFrames. lavc: rename the argument of avcodec_alloc_frame/get_frame_defaults Conflicts: doc/APIchanges doc/examples/decoding_encoding.c libavcodec/utils.c libavcodec/version.h libavfilter/src_movie.c libavformat/oggdec.c libavformat/oggdec.h libavformat/oggparsetheora.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: dont wait 100ms if data is not yet readyMarton Balint2012-09-16
| | | | | | | | | | | | | | Also signal the wait if audio buffer is empty. This fixes jerky audio with realtime sources. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: use PTS from the AVSubtitle structure.Nicolas George2012-09-15
| |
* | ffplay: increase sample array bufferMarton Balint2012-09-11
| | | | | | | | | | | | | | | | | | A decoded and resampled audio frame may not fit in the current size which is not handled by the current code causing out of order waveform displays or even channel mixups. A todo is added because this part can certainly be improved to consume less memory but work reliably for any frame size. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: ensure that pictq_prev_picture never fills the picture queueMarton Balint2012-09-11
| | | | | | | | | | | | | | It was theoretically possible for pictq_prev_picture to fill the picture queue which may have caused problems when a write to the queue was still in progress. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: simplify picture allocationMarton Balint2012-09-11
| | | | | | | | | | | | | | | | This also makes sure the aspect ratio of the picture is set before allocating the picture, this way video_open can calculate with the correct aspect ratio even for the first frame. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: make initial window size calculation based on aspect ratioMarton Balint2012-09-11
| | | | | | | | | | | | Fixes ticket #291. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: factor display rectangle calculation to its own functionMarton Balint2012-09-11
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | Merge remote-tracking branch 'cus/stable'Michael Niedermayer2012-09-01
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | * cus/stable: ffplay: only free vfilters on exit ffplay: replace SDL_delay in read thread with SDL_CondWait ffplay: requeue last picture on forced video refresh Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * | ffplay: only free vfilters on exitMarton Balint2012-08-31
| | | | | | | | | | | | | | | | | | | | | | | | Freeing it in the end of the video thread is not a good idea, because we still may need the filter names for the next video thread, in order to apply the filters after chaning the video stream. Signed-off-by: Marton Balint <cus@passwd.hu>
| * | ffplay: replace SDL_delay in read thread with SDL_CondWaitMarton Balint2012-08-31
| | | | | | | | | | | | | | | | | | | | | | | | | | | When the audio queue was empty, it was not filled until the 10ms delay expired in the read thread. This patch changes the delay method with a condition wait, which reacts to an empty queue a lot faster, therefore the audio buffer underruns become less common especially after seeking. Signed-off-by: Marton Balint <cus@passwd.hu>
| * | ffplay: requeue last picture on forced video refreshMarton Balint2012-08-31
| | | | | | | | | | | | | | | | | | Fixes ticket #1609. Signed-off-by: Marton Balint <cus@passwd.hu>
* | | avoid ambigous buffersink namesMichael Niedermayer2012-09-01
|/ / | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: get rid of void casts in the option tableMichael Niedermayer2012-08-31
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: fix function parametersMichael Niedermayer2012-08-31
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'ec36aa69448f20a78d8c4588265022e0b2272ab5'Michael Niedermayer2012-08-31
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'ec36aa69448f20a78d8c4588265022e0b2272ab5': x86: Fix linking with some or all of yasm, mmx, optimizations disabled configure: Add more fine-grained SSE CPU capabilities flags avfilter: x86: Use more precise compile template names x86: cosmetics: Comment some #endifs for better readability g723_1: add comfort noise generation utvideoenc: Switch to dsputils' median prediction utvideoenc: Avoid writing into the input picture avtools: remove the distinction between func_arg and func2_arg. avconv: make the -passlogfile option per-stream. avconv: make the -pass option per-stream. cmdutils: make -codecs print lossy/lossless flags. lavc: add lossy/lossless codec properties. Conflicts: Changelog cmdutils.c configure doc/APIchanges ffmpeg.h ffmpeg_opt.c ffprobe.c libavcodec/codec_desc.c libavcodec/g723_1.c libavcodec/utvideoenc.c libavcodec/version.h libavcodec/x86/mpegaudiodec.c libavcodec/x86/rv40dsp_init.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: fix odd YUV width by cropping the videoMarton Balint2012-08-27
| | | | | | | | | | | | | | Should fix issue #1322. Signed-off-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2012-08-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: fate: Add FATE tests for the Ut Video encoder lavc: add Ut Video encoder mpegvideo_enc: remove stray duplicate line from 7f9aaa4 swscale: x86: fix #endif comments in rgb2rgb template file avconv: mark more options as expert. avconv: split printing "main options" into global and per-file. avconv: refactor help printing. Conflicts: Changelog ffmpeg_opt.c ffserver.c libavcodec/version.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'f8b1e665539010d3ca148f09cb1203c20c1ca174'Michael Niedermayer2012-08-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'f8b1e665539010d3ca148f09cb1203c20c1ca174': avconv: print info/capabilities options in a separate help group. avtools: add -h demuxer/muxer cmdutils: extend -h to allow printing codec details. Conflicts: cmdutils.h ffmpeg_filter.c ffmpeg_opt.c ffplay.c ffserver.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '7c5012127fb7e18f0616011257bb4248f6a8b608'Michael Niedermayer2012-08-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit '7c5012127fb7e18f0616011257bb4248f6a8b608': cmdutils: change semantics of show_help_options() and document it. avtools: move some newlines to show_help_options(). avconv: deprecate -isync. Conflicts: ffmpeg_opt.c ffserver.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'd3810c47fe8c9509c28c65c0244e743c1d353daf'Michael Niedermayer2012-08-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'd3810c47fe8c9509c28c65c0244e743c1d353daf': avconv: get rid of ugly casts in the options table. avconv: try to match codecs by codec descriptor name as a last resort. avtools: fix show_foo() signatures. Conflicts: cmdutils.c cmdutils.h cmdutils_common_opts.h ffmpeg_opt.c ffplay.c ffprobe.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | ffmpeg,ffplay: show filter optionsStefano Sabatini2012-08-18
| | | | | | | | Address trac ticket #1599.
* | ffplay: reque attached pictures on channel changes.Michael Niedermayer2012-08-16
| | | | | | | | | | | | | | Fixes Ticket1473 Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: avoid SDL_atoi()Michael Niedermayer2012-08-12
| | | | | | | | | | | | | | | | It appears this function is not available everywhere Should fix Ticket1525 Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: fix warning that i just mistakenly introducedMichael Niedermayer2012-07-20
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>