Marton Balint
5ecfcc7dff
ffplay: add smarter method for determining video picture duration
...
- 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>
2013-11-05 21:27:07 +01:00
Marton Balint
61dd319770
ffplay: add frame duration estimated from frame rate to VideoPicture
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-11-05 21:27:07 +01:00
Marton Balint
105d4748cf
ffplay: avoid code duplication in AVFILTER enabled and disabled case
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-11-05 21:27:06 +01:00
Marton Balint
44758b4d17
ffplay: add support for libswresample options
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-10-26 12:23:54 +02:00
Marton Balint
04de0e04c5
ffplay: use av_frame_get_pkt_pos instead directly accessing pkt pos
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-10-26 12:23:54 +02:00
Marton Balint
2d059d8de1
ffplay: factor out picture freeing code
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-10-26 12:23:54 +02:00
Marton Balint
060c42bc3d
ffplay: update and extend documentation for channel and stream switching
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-10-26 12:23:54 +02:00
Marton Balint
3130416aec
ffplay: add support for changing the channel by the C key
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-10-13 12:46:14 +02:00
Marton Balint
543d81a707
ffplay: cycle through the streams of the current program, and not every stream
...
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>
2013-10-13 12:31:52 +02:00
Marton Balint
0258e4dc8b
ffplay: add null packet after attached pics packet
...
Fixes ticket #2904 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-10-13 12:31:52 +02:00
Marton Balint
b118d3e24d
ffplay: factor out putting null packet into the queue
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-10-13 12:31:52 +02:00
Michael Niedermayer
c7fe2a3733
ffplay: avoid direct access to lowres use av_codec_g/set_lowres()
...
Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-03 22:38:54 +02:00
Michael Niedermayer
b72040daad
ffplay: avoid direct access to max_lowres use av_codec_get_max_lowres()
...
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>
2013-10-03 22:38:23 +02:00
Michael Niedermayer
5c6a58746b
ffplay: make next_nb_channels[] static const
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-08-24 19:53:11 +02:00
Marton Balint
18be3fac1d
ffplay: check for filter EOF return codes
...
Fixes ticket #2800 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-08-09 00:16:13 +02:00
Marton Balint
e84ca8d38a
ffplay: ensure the decoder is flushed before exiting or looping
...
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>
2013-08-09 00:16:13 +02:00
Marton Balint
608989f6bf
ffplay: fix memleak of non-bitmap subtitles
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-08-09 00:16:13 +02:00
Marton Balint
9f120e034f
ffplay: free subtitle pictures on exit
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-08-09 00:16:13 +02:00
Michael Niedermayer
46ad2d9e44
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
miscellaneous typo fixes
Conflicts:
configure
libavformat/avisynth.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-26 11:12:11 +02:00
Stefano Sabatini
f9f7f4c9bb
ffplay: improve error message in case of failure, mention filtergraph configuration
2013-07-21 19:20:46 +02:00
Marton Balint
b198e33ad8
ffplay: fix build with disabled avfilter
...
Got broken in b383498e
.
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-07-21 12:00:22 +02:00
Marton Balint
73b2043d72
ffplay: use start_time as next audio pts on flush when seeking is not supported
...
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>
2013-07-20 02:32:43 +02:00
Marton Balint
b383498ea8
ffplay: estimate audio frame pts from the previous frame pts values
...
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>
2013-07-20 02:32:43 +02:00
Marton Balint
782e06e292
ffplay: simplify audio decoding
...
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>
2013-07-20 02:32:43 +02:00
Michael Niedermayer
786b0968dd
ffplay: remove explicit idct option
...
this allows named idct options to be used
Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-07-13 15:01:05 +02:00
Marton Balint
f07cb53ab9
ffplay: assume 0 stream start time if start time is unset in duration check
...
Fixes ticket #2103 and #2743 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-07-09 20:19:54 +02:00
Marton Balint
3886572a83
ffplay: do not update audio clock with old audio pts if current frame is AV_NOPTS_VALUE
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-07-09 20:19:54 +02:00
Stefano Sabatini
838bd73139
lavfi: create Libav-API compatibility layer for avfilter_graph_parse() at 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 .
2013-07-03 13:21:42 +02:00
Marton Balint
02fc61a5a6
ffplay: always send zero packets to flush audio decoders
...
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>
2013-07-01 00:24:03 +02:00
Marton Balint
447d2e31d1
ffplay: use frame->pkt_pts instead of pkt->pts in audio pts calculation
...
Fixes ticket #2717 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-07-01 00:24:03 +02:00
Marton Balint
9fac752afa
ffplay: simplify and fix flushing out old subtitles on seeking
...
Fixes the additional issue reported in ticket #2666 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-26 22:30:16 +02:00
Marton Balint
96b33ddbd0
ffplay: remove remains of the old audio and video clock VideoState variables
...
The unified clock state holds this information now.
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-17 01:18:07 +02:00
Marton Balint
05f0d53170
ffplay: fix missed conversion of video_current_pts to vidclk.pts in subtitles
...
Fixes regression with subtitles introduced in f2175a6
.
Fixes ticket #2666 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-17 01:18:07 +02:00
Marton Balint
f73d6d2af7
ffplay: cast vp->height to int64 in buffer size check
...
Fixes Coverity CID 1026769 and 1026756.
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-17 01:18:07 +02:00
Carl Eugen Hoyos
3b491c5a50
Use av_log() instead of fprintf() in ffplay.
...
Fixes ticket #2630 .
Reviewed-by: Marton Balint
2013-06-04 19:47:56 +02:00
Marton Balint
30d724bdfd
ffplay: detect when the created overlay buffers are not valid for the wanted overlay height
...
Fixes cases when the picture height was bigger than the maximum supported
overlay height...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-01 12:50:46 +02:00
Marton Balint
87917a3283
ffplay: do not allow wider window than 16383
...
SDL surface pitch is 16bit, to avoid possible overflows, we limit the window
width to 16383. Fixes ticket #2428 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-01 12:50:46 +02:00
Marton Balint
3b6f1526c6
ffplay: use 0 frame delay if redisplaying an already displayed frame
...
With the previous patches this finally fixes ticket #1707 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-01 12:50:46 +02:00
Marton Balint
97e42551e4
ffplay: use more sane frame timer resetting logic
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-01 12:50:46 +02:00
Marton Balint
35b2f30fd1
ffplay: only update pts if not redisplaying a frame
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-01 12:50:46 +02:00
Marton Balint
e341cb1102
ffplay: fix compute_target_delay to better handle frames with long durations
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-01 12:50:45 +02:00
Marton Balint
5b492720ad
ffplay: if playing only audio or video only, show the master clock diff in status line
...
Showing A-V diff has no use if there is no audio and video stream, but showing
the audio or video clock difference to the master clock can be useful.
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-01 12:50:45 +02:00
Marton Balint
f2175a628b
ffplay: factorize clock functions
...
There should be no change in functionality.
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-01 12:50:45 +02:00
Marton Balint
b764b53aae
ffplay: decrease video picture queue size to 3
...
It was raised to 4 because of a theoretical issue, if we ensure that we do not
return from the display function without popping one picture from the queue,
then its OK to use the old size.
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-06-01 12:50:45 +02:00
Michael Niedermayer
840ee5e1a1
ffplay: dont forget passing lowres to private options
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-05-28 00:09:34 +02:00
Michael Niedermayer
5fd254c4f6
Merge commit '26a44143efb513a602542fb59aee87b1fc62af51'
...
* commit '26a44143efb513a602542fb59aee87b1fc62af51':
avplay: remove a warning
Conflicts:
ffplay.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-28 12:03:41 +02:00
Michael Niedermayer
047716bbd8
ffplay: check av_samples_get_buffer_size() return
...
Fixes CID1005310
Reviewed-by: Marton Balint <cus@passwd.hu>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-04-21 18:56:18 +02:00
Marton Balint
b8facbeecb
ffplay: only do early frame drop if video queue is not empty
...
Fixes ticket #2446 .
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-04-20 18:32:09 +02:00
Marton Balint
d148339d19
ffplay: use AV_NOPTS_VALUE video frame pts instead of using 0
...
Assuming 0 pts may lead to bad framedrop decisions...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-04-20 18:32:09 +02:00
Marton Balint
40693ba3ac
ffplay: simplify aspect ratio calculation
...
Signed-off-by: Marton Balint <cus@passwd.hu>
2013-04-20 18:32:09 +02:00