summaryrefslogtreecommitdiff
path: root/ffplay.c
Commit message (Collapse)AuthorAge
* ffplay: use hypot()Ganesh Ajjanagadde2015-12-06
| | | | | Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* Replace remaining occurances of av_free_packet with av_packet_unrefHendrik Leppkes2015-10-27
|
* Merge commit 'a5d42043093a39636a1f4021a37dd9c612479f6f'Hendrik Leppkes2015-10-27
|\ | | | | | | | | | | | | * commit 'a5d42043093a39636a1f4021a37dd9c612479f6f': avformat: Always return ref-counted AVPacket Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
* | ffplay: use a separate struct for the rescaled YUVA AVSubtitle rectanglesMarton Balint2015-10-24
| | | | | | | | | | | | | | | | | | | | | | Current code segfaults since the deprecation of AVSubtitleRect.pict because it freed/realloced AVSubtitleRect.pict.data by itself. The new code stores the generated YUVA AVSubtitle rectangles in their own struct and keeps the original AVSubtitle structure untouched, because overwriting it is considered invalid API usage. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: eliminate stream_component_close forward declarationMarton Balint2015-10-12
| | | | | | | | | | | | No change in fuctionality. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: close streams and AVFormatContext in the main threadMarton Balint2015-10-12
| | | | | | | | | | | | To avoid race conditions. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: use correct context for av_logGanesh Ajjanagadde2015-10-05
| | | | | | | | | | | | | | | | | | Recent commits c3e8de1c248f8c742dd9e61a0c71ee56bba22c28 and 8dc6e92c3dc67a85026f3010045c7a28b1c0adc8 used av_log incorrectly. This fixes such usage. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: more robust condition variable creationGanesh Ajjanagadde2015-10-05
| | | | | | | | | | | | | | | | | | SDL_CreateCond can fail: https://wiki.libsdl.org/SDL_CreateCond. This patch makes creation more robust in one instance. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: log SDL error messagesGanesh Ajjanagadde2015-10-05
| | | | | | | | | | | | | | | | This logs the SDL error messages on failure of creation of SDL_CreateMutex, SDL_CreateCond, and SDL_CreateThread. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: more robust mutex creationGanesh Ajjanagadde2015-10-05
| | | | | | | | | | | | | | | | | | SDL_CreateMutex can fail: https://wiki.libsdl.org/SDL_CreateMutex. This patch makes creation more robust in one instance. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: more robust thread creationGanesh Ajjanagadde2015-10-04
| | | | | | | | | | | | | | | | | | SDL_CreateThread can fail: https://wiki.libsdl.org/SDL_CreateThread. This patch makes thread creation more robust in one instance. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: more robust mutex, condition variable handlingGanesh Ajjanagadde2015-10-03
| | | | | | | | | | | | | | | | | | SDL_CreateMutex and SDL_CreateCond can fail: https://wiki.libsdl.org/SDL_CreateMutex. This patch makes handling more robust in one instance. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | doc/ffplay, ffplay: add information regarding volume controlGanesh Ajjanagadde2015-09-27
| | | | | | | | | | | | | | | | | | ffplay now supports dynamic volume control. This documents the supported behavior. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Reviewed-by: Stefano Sabatini <stefasab@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: add support for interactive volume controlGanesh Ajjanagadde2015-09-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a feature heavily inspired by the mpv player. At the moment, methods for adjusting volume in ffplay are rather clumsy: either one needs to set it system-wide, or one needs to set it via the volume filter. This patch adds key bindings identical to the mpv defaults for muting/unmuting and increasing/decreasing the volume interactively without any introduction of external dependencies. TODO: doc update, possible mouse button bindings (mpv has this). Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: dynamically allocate filename bufferGanesh Ajjanagadde2015-09-27
| | | | | | | | | | | | | | | | | | | | | | filename was set to an arbitrary 1024 characters. ffplay would thus be unable to play files whose name exceeds that arbitrary threshold. This patch dynamically allocates and frees the filename buffer to remove such limitations. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: introduce key repeatsGanesh Ajjanagadde2015-09-27
| | | | | | | | | | | | | | | | | | | | Key repeats have been introduced simply because they improve usability in my experience for volume, brightness, and other such controls by speeding up the time taken to go from 0 to max intensity. As a side benefit, this enables rapid seeking through a file via left/right keys. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | Remove left-over FF_API_AVFILTERBUFFER cruftHendrik Leppkes2015-09-05
| |
* | Put remaining pieces of CODEC_FLAG_EMU_EDGE under FF_API_EMU_EDGE.Ronald S. Bultje2015-08-28
| | | | | | | | | | | | The amv one probably looks suspicious, but since it's an intra-only codec, I couldn't possibly imagine what it would use the edge for, and the vsynth fate result doesn't change, so it's probably OK.
* | ffplay: remove unused include libavutil/colorspace.hZhang Rui2015-08-28
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | ffplay: increase MIN_FRAMES to 25Marton Balint2015-08-09
| | | | | | | | | | | | | | | | | | | | | | FFplay was using a 5 frame packet buffer, this is not much (e.g. 200 ms for 25fps video), when HLS is requesting a new segment via HTTP, it may take longer for the request to complete. Should fix ticket #4720. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: add specific constants for buffer fullness settings when using ↵Marton Balint2015-08-09
| | | | | | | | | | | | external clock Signed-off-by: Marton Balint <cus@passwd.hu>
* | cmdutils: remove sws_opts usage, simplify codeMichael Niedermayer2015-08-08
| | | | | | | | | | | | It has become unused as all code was switched to AVDictionary Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | ffplay: pass all sws options to the filter graphMichael Niedermayer2015-08-08
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | ffplay: do not block audio thread on WIN32Marton Balint2015-08-05
| | | | | | | | | | | | | | | | | | | | | | The windows SDL audio driver plays the old data in the buffer in a loop if it is not updated in time. So instead of waiting for data and blocking the the audio thread, return silence if no data is available. Should fix ticket #2289. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: Use sws_scale to scale subtitlesMichael Niedermayer2015-07-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes some files from Ticket679 This also changes subtitles to 4:2:0 matching the output format and thus simplifying the blend code. This restricts placement to the chroma sample resolution though, speak up if you consider this a problem, say so, the code could be changed to use YUV444 for subtitles and scaling them down while blending, this would be slower though. The current code only uses a single swscale context and reinitializes it as needed, this could be changed as well if needed Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit 'def97856de6021965db86c25a732d78689bd6bb0'Michael Niedermayer2015-07-27
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'def97856de6021965db86c25a732d78689bd6bb0': lavc: AV-prefix all codec capabilities Conflicts: cmdutils.c ffmpeg.c ffplay.c libavcodec/8svx.c libavcodec/aacenc.c libavcodec/ac3dec.c libavcodec/adpcm.c libavcodec/alac.c libavcodec/atrac3plusdec.c libavcodec/bink.c libavcodec/dnxhddec.c libavcodec/dvdec.c libavcodec/dvenc.c libavcodec/ffv1dec.c libavcodec/ffv1enc.c libavcodec/fic.c libavcodec/flacdec.c libavcodec/flacenc.c libavcodec/flvdec.c libavcodec/fraps.c libavcodec/frwu.c libavcodec/gifdec.c libavcodec/h261dec.c libavcodec/hevc.c libavcodec/iff.c libavcodec/imc.c libavcodec/libopenjpegdec.c libavcodec/libvo-aacenc.c libavcodec/libvorbisenc.c libavcodec/libvpxdec.c libavcodec/libvpxenc.c libavcodec/libx264.c libavcodec/mjpegbdec.c libavcodec/mjpegdec.c libavcodec/mpegaudiodec_float.c libavcodec/msmpeg4dec.c libavcodec/mxpegdec.c libavcodec/nvenc_h264.c libavcodec/nvenc_hevc.c libavcodec/pngdec.c libavcodec/qpeg.c libavcodec/ra288.c libavcodec/rv10.c libavcodec/s302m.c libavcodec/sp5xdec.c libavcodec/takdec.c libavcodec/tiff.c libavcodec/tta.c libavcodec/utils.c libavcodec/v210dec.c libavcodec/vp6.c libavcodec/vp9.c libavcodec/wavpack.c libavcodec/yop.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615'Michael Niedermayer2015-07-27
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '7c6eb0a1b7bf1aac7f033a7ec6d8cacc3b5c2615': lavc: AV-prefix all codec flags Conflicts: doc/examples/muxing.c ffmpeg.c ffmpeg_opt.c ffplay.c libavcodec/aacdec.c libavcodec/aacenc.c libavcodec/ac3dec.c libavcodec/ac3enc_float.c libavcodec/atrac1.c libavcodec/atrac3.c libavcodec/atrac3plusdec.c libavcodec/dcadec.c libavcodec/ffv1enc.c libavcodec/h264.c libavcodec/h264_loopfilter.c libavcodec/h264_mb.c libavcodec/imc.c libavcodec/libmp3lame.c libavcodec/libtheoraenc.c libavcodec/libtwolame.c libavcodec/libvpxenc.c libavcodec/libxavs.c libavcodec/libxvid.c libavcodec/mpeg12dec.c libavcodec/mpeg12enc.c libavcodec/mpegaudiodec_template.c libavcodec/mpegvideo.c libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_motion.c libavcodec/nellymoserdec.c libavcodec/nellymoserenc.c libavcodec/nvenc.c libavcodec/on2avc.c libavcodec/options_table.h libavcodec/opus_celt.c libavcodec/pngenc.c libavcodec/ra288.c libavcodec/ratecontrol.c libavcodec/twinvq.c libavcodec/vc1_block.c libavcodec/vc1_loopfilter.c libavcodec/vc1_mc.c libavcodec/vc1dec.c libavcodec/vorbisdec.c libavcodec/vp3.c libavcodec/wma.c libavcodec/wmaprodec.c libavcodec/x86/hpeldsp_init.c libavcodec/x86/me_cmp_init.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
* | ffplay: use av_clip() instead of nested min & maxClément Bœsch2015-06-06
| | | | | | | | Note: {wanted,min,max}_samples are int variables.
* | ffplay&cmdutils:Factor get_rotation() code outMichael Niedermayer2015-05-03
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: unify displaymatrix based rotation codeMichael Niedermayer2015-05-03
| | | | | | | | | | Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'e2d50fc2f5f3600e13055acf1a10fec35e941f37'Michael Niedermayer2015-05-02
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit 'e2d50fc2f5f3600e13055acf1a10fec35e941f37': avplay: Add support for rotated video Conflicts: configure doc/ffplay.texi ffplay.c See: 08c51e12b1c3f3e3e68e33eb46be7131df5b3682 Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '21180b73239c6360aa28496d4879713b7ba4a8e5'Michael Niedermayer2015-05-02
|\| | | | | | | | | | | | | | | | | | | | | * commit '21180b73239c6360aa28496d4879713b7ba4a8e5': avplay: Factorize code for adding filters to the filter pipeline Conflicts: ffplay.c See: 08c51e12b1c3f3e3e68e33eb46be7131df5b3682 Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '06f4b1e37a08f3fd269ecbfeb0181129e5bfc86e'Michael Niedermayer2015-04-30
|\| | | | | | | | | | | | | | | | | | | * commit '06f4b1e37a08f3fd269ecbfeb0181129e5bfc86e': avplay: Do not print a possibly uninitialized value Conflicts: ffplay.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '336d2f0979b43a39bd11a047d798b7990d8b07c6'Michael Niedermayer2015-04-20
|\| | | | | | | | | | | | | | | | | | | * commit '336d2f0979b43a39bd11a047d798b7990d8b07c6': avplay: Free frame and graph when memory allocation fails Conflicts: ffplay.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '1a3eb042c704dea190c644def5b32c9cee8832b8'Michael Niedermayer2015-04-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '1a3eb042c704dea190c644def5b32c9cee8832b8': Replace av_dlog with normal av_log at trace level Conflicts: ffplay.c libavdevice/fbdev_dec.c libavfilter/avfilter.c libavfilter/internal.h libavfilter/setpts.c libavfilter/src_movie.c libavfilter/vf_crop.c libavfilter/vf_drawtext.c libavfilter/vf_fieldorder.c libavformat/assdec.c libavformat/avidec.c libavformat/flvdec.c libavformat/http.c libavformat/ipmovie.c libavformat/isom.c libavformat/mov.c libavformat/mpegenc.c libavformat/mpegts.c libavformat/mpegtsenc.c libavformat/mux.c libavformat/mxfdec.c libavformat/nsvdec.c libavformat/oggdec.c libavformat/r3d.c libavformat/rtspdec.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'd450cb07d91ef39ad1d39bd7ca0cfce4bd7b13e7'Michael Niedermayer2015-03-22
|\| | | | | | | | | | | | | | | | | | | * commit 'd450cb07d91ef39ad1d39bd7ca0cfce4bd7b13e7': avplay: Check memory allocation Conflicts: ffplay.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: Switch to show waves mode if allocation/init of RDFT failsMichael Niedermayer2015-03-04
| | | | | | | | | | | | | | | | Fixes null pointer dereference Found-by: Paweł <pantrombka@gmail.com> Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '733f4b05f0e120ddd0393b23f2b6d9106cf922e4'Michael Niedermayer2015-02-17
|\| | | | | | | | | | | | | * commit '733f4b05f0e120ddd0393b23f2b6d9106cf922e4': avplay: Check format allocation inside decode_thread() Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '266f241193b2fa8c99bb8b1f007c66bedd3b7d97'Michael Niedermayer2015-02-17
|\| | | | | | | | | | | | | * commit '266f241193b2fa8c99bb8b1f007c66bedd3b7d97': avplay: Check frame allocation inside video_thread() Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: factorize thread starting and stopping code into decoderMarton Balint2015-02-10
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: make eof part of videostate and signal it when opening a streamMarton Balint2015-02-10
| | | | | | | | | | | | | | Otherwise we may not flush a decoder when a new stream is opened during an already eof condition. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: update frame timer based on last updated clock time when toggling pauseMarton Balint2015-02-10
| | | | | | | | | | | | It is better than using simply video clock, because video clock may be NAN. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: Fallback to dts if pts is unavailable in pkt_in_play_range calculationMichael Niedermayer2015-02-02
| | | | | | | | | | Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: dump format before selecting streamsMarton Balint2015-01-01
| | | | | | | | | | | | | | This helps the user to see the available streams just before the error message if the stream specifiers do not match. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: add support for stream specifiers in -ast, -vst, -sst optionsMarton Balint2015-01-01
| | | | | | | | | | | | Also fix the outdated documentation of these options. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: remove unused no_background from videostateMarton Balint2015-01-01
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: remove flushed state from decoder contextMarton Balint2015-01-01
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: fix mem leak when opening input or parsing options fail.Benoit Fouet2014-11-22
| | | | | | | | | | Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: signal the frame queue before closing audioMarton Balint2014-11-11
| | | | | | | | | | | | | | Fixed regression caused by 631ac655c00e978e19d05dab572bc1ffd6078c63 when ffplay does not quit if the audio thread is blocked. Signed-off-by: Marton Balint <cus@passwd.hu>
* | Set -scan_all_pmts 1 in ffmpeg, ffplay and ffprobe if not set by user.Carl Eugen Hoyos2014-11-09
| | | | | | | | Fixes ticket #3762.