summaryrefslogtreecommitdiff
path: root/ffplay.c
Commit message (Collapse)AuthorAge
* Merge commit 'b36bc81ccaa2fc85dc4bae7dc546c71e8833573d'Michael Niedermayer2014-02-10
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'b36bc81ccaa2fc85dc4bae7dc546c71e8833573d': avplay: add support for seeking to chapter marks Conflicts: doc/ffplay.texi ffplay.c ffplay uses pageup/down for seeking by +-10min thus this use of the keys conflicts. The merge thus uses them to seek to chapters when there are some or +-10min when there are not Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: flush subtitle codecs as well with null packetsMarton Balint2014-02-05
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: reorder the filters to ensure that inputs of the custom filters are ↵Marton Balint2014-02-05
| | | | | | | | | | | | | | | | merged first For more info see http://ffmpeg.org/pipermail/ffmpeg-user/2013-December/018761.html Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: remove redundant prototypeLukasz Marek2014-01-27
| | | | | | | | | | Signed-off-by: Lukasz Marek <lukasz.m.luki@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: do not wait for the picture allocation to finish on exitMarton Balint2013-12-29
| | | | | | | | | | | | | | | | When SDL could not allocate a YUV overlay or open a window, the video thread got locked up because it waited for the allocation to finish forever. Reported-by: Carl Eugen Hoyos <cehoyos@ag.or.at> Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: remove two unneeded av_free_packet callsMarton Balint2013-12-29
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: remove some unneded av_frame_unref callsMarton Balint2013-12-29
| | | | | | | | | | | | av_buffersrc_add_frame implicitly unreferences the added frame. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: remove unneeded avcodec_get_frame_defaultsMarton Balint2013-12-29
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: use precalculated frame size and bytes per sec valuesMarton Balint2013-12-29
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: precalculate audio output frame size and byte per secMarton Balint2013-12-29
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | Merge commit '84f131921ffb43d8070d5680e91f6a24d66ccac4'Michael Niedermayer2013-12-11
|\| | | | | | | | | | | | | | | | | | | * commit '84f131921ffb43d8070d5680e91f6a24d66ccac4': avplay: do not call avcodec_get_frame_defaults(). Conflicts: ffplay.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: set default window size before starting audioMarton Balint2013-12-06
| | | | | | | | | | | | Fixes ticket #2381. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: factor out function setting default window sizeMarton Balint2013-12-06
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: remove no longer necessary codec flushMarton Balint2013-12-06
| | | | | | | | | | | | | | | | It was introduced in c2e8691c07ca52de7b6b00ba8f2b30c56fd786d7, but since we no longer no longer provide a custom get_buffer callback, the original cause of the issue is gone. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: do not wait for flushing the picture queue on flush packetMarton Balint2013-12-06
| | | | | | | | | | | | | | | | It is no longer necessary. Also do frame timer and video current pos reset in the main thread because with the wait removed, the timing would not be optimal in the read thread. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: do not call avcodec_register_all() explicitlyStefano Sabatini2013-11-25
| | | | | | | | avcodec_register_all() is implicitly called by av_register_all().
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-11-24
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: Add missing #includes for *INT64_MAX and *INT64_C Conflicts: ffmpeg.c ffmpeg_filter.c ffplay.c libavformat/assdec.c libavformat/avidec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '5b9c3b4505206143d85398c1410949319fa1180f'Michael Niedermayer2013-11-16
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '5b9c3b4505206143d85398c1410949319fa1180f': Replace all instances of avcodec_alloc_frame() with av_frame_alloc(). Conflicts: doc/examples/decoding_encoding.c doc/examples/muxing.c ffmpeg.c libavcodec/alacenc.c libavcodec/libopenjpegenc.c libavcodec/libvpxenc.c libavcodec/pcm.c libavcodec/xbmenc.c libavcodec/xwdenc.c libavformat/utils.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: calculate last frame duration from vp->pts instead of frame_last_ptsMarton Balint2013-11-16
| | | | | | | | | | | | | | | | Also do not update current pts on dropped frames, it is no longer necessary. Fixes regression part of ticket #2507. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: simplify early frame drop codeMarton Balint2013-11-16
| | | | | | | | | | | | Also never early frame drop the first frame after a flush. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: add smarter method for determining video picture durationMarton Balint2013-11-05
| | | | | | | | | | | | | | | | | | - consider it an invalid PTS when the next PTS value is the same as the current one - in case of invalid or unknown PTS, return vp->duration This fixes ffplay part of ticket #3005. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: add frame duration estimated from frame rate to VideoPictureMarton Balint2013-11-05
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: avoid code duplication in AVFILTER enabled and disabled caseMarton Balint2013-11-05
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: add support for libswresample optionsMarton Balint2013-10-26
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: use av_frame_get_pkt_pos instead directly accessing pkt posMarton Balint2013-10-26
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: factor out picture freeing codeMarton Balint2013-10-26
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: update and extend documentation for channel and stream switchingMarton Balint2013-10-26
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: add support for changing the channel by the C keyMarton Balint2013-10-13
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: cycle through the streams of the current program, and not every streamMarton Balint2013-10-13
| | | | | | | | | | | | | | When changing the audio, video or subtitle stream, from now on, ffplay will cycle through the streams of the current program. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: add null packet after attached pics packetMarton Balint2013-10-13
| | | | | | | | | | | | Fixes ticket #2904. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: factor out putting null packet into the queueMarton Balint2013-10-13
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: avoid direct access to lowres use av_codec_g/set_lowres()Michael Niedermayer2013-10-03
| | | | | | | | | | Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: avoid direct access to max_lowres use av_codec_get_max_lowres()Michael Niedermayer2013-10-03
| | | | | | | | | | | | | | | | This avoids future ABI issues when the field is moved to the end of the struct. Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: make next_nb_channels[] static constMichael Niedermayer2013-08-24
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: check for filter EOF return codesMarton Balint2013-08-09
| | | | | | | | | | | | Fixes ticket #2800. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: ensure the decoder is flushed before exiting or loopingMarton Balint2013-08-09
| | | | | | | | | | | | | | | | | | | | Also make sure that we only exit or restart the video if it is not paused and if the picture queue is empty. There is still room for improvement (filters may also buffer some frames), but the patch fixes the most common use cases and ticket #2783 as well. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: fix memleak of non-bitmap subtitlesMarton Balint2013-08-09
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: free subtitle pictures on exitMarton Balint2013-08-09
| | | | | | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-07-26
|\| | | | | | | | | | | | | | | | | | | | | * qatar/master: miscellaneous typo fixes Conflicts: configure libavformat/avisynth.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: improve error message in case of failure, mention filtergraph ↵Stefano Sabatini2013-07-21
| | | | | | | | configuration
* | ffplay: fix build with disabled avfilterMarton Balint2013-07-21
| | | | | | | | | | | | Got broken in b383498e. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: use start_time as next audio pts on flush when seeking is not supportedMarton Balint2013-07-20
| | | | | | | | | | | | | | | | | | | | | | Theoretically using start_time should also work if seeking is available and we could determine that the next packet after a flush packet is the first packet of a stream, but I could not think of an easy and clean way to do that, that is why I sticked to the no seeking available condition for now. Fixes ticket #2647. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: estimate audio frame pts from the previous frame pts valuesMarton Balint2013-07-20
| | | | | | | | | | | | | | | | | | | | | | Previously we estimated the audio packet pts instead of the frame pts, therefore it only worked within a single packet (containing multiple frames). The new method works accross seperate audio packets as well and also handles better the case if a decoder buffers several packets before outputting a decoded frame. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: simplify audio decodingMarton Balint2013-07-20
| | | | | | | | | | | | | | Also use negative stream_index for signaling obsolete audio packets. Using the size alone is not enough, because size is 0 for null packets as well. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: remove explicit idct optionMichael Niedermayer2013-07-13
| | | | | | | | | | | | | | this allows named idct options to be used Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffplay: assume 0 stream start time if start time is unset in duration checkMarton Balint2013-07-09
| | | | | | | | | | | | Fixes ticket #2103 and #2743. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: do not update audio clock with old audio pts if current frame is ↵Marton Balint2013-07-09
| | | | | | | | | | | | AV_NOPTS_VALUE Signed-off-by: Marton Balint <cus@passwd.hu>
* | lavfi: create Libav-API compatibility layer for avfilter_graph_parse() at ↵Stefano Sabatini2013-07-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the next bump Add function avfilter_graph_parse_ptr() and favor it in place of avfilter_graph_parse(), which will be restored with the old/Libav signature at the next bump. If HAVE_INCOMPATIBLE_LIBAV_API is enabled it will use the Libav-compatible signature for avfilter_graph_parse(). At the next major bump the current implementation of avfilter_graph_parse() should be dropped in favor of the Libav/old implementation. Should address trac ticket #2672.
* | ffplay: always send zero packets to flush audio decodersMarton Balint2013-07-01
| | | | | | | | | | | | | | Zero packets are needed not for codecs with CODEC_CAP_DELAY but for multithreaded decoders as well. Signed-off-by: Marton Balint <cus@passwd.hu>
* | ffplay: use frame->pkt_pts instead of pkt->pts in audio pts calculationMarton Balint2013-07-01
| | | | | | | | | | | | Fixes ticket #2717. Signed-off-by: Marton Balint <cus@passwd.hu>