Hello,
I have a simple pipeline to play video files by using vaapidecode element.
I want to change the playback rates of the pipeline. This task is
accomplished by sending the event which is returned by
function gst_event_new_seek () to filesink. There are no problems for
positive rate values but there is problem for negative problems. One can
find the debug output of gstreamer elements in case of negative rate is
given.
The same pipeline with only vaapidecode changed to avdec_h264 is not
problematic and negative rate values do not cause any problems.
I have changed the example given in following link according to my
different requirements.
http://docs.gstreamer.com/display/GstSDK/Basic+tutorial+13%3A+Playback+speed
Regards.
--
*Engin FIRAT*
Adoniss Yazılım Bilişim
Elektronik Araştırma Geliştirme
Limited Şirketi
+90 506 884 82 07 (Mobile)
ODTÜ Teknokent, ODTÜ-Halıcı Yazılımevi
İnönü Bulvarı / ANKARA (Address)
0:00:08.499267079 2554 0xf6a800 INFO GST_EVENT
gstevent.c:1070:gst_event_new_seek: creating seek rate -1.000000, format TIME,
flags 3, start_type 1, start 0:00:00.000000000, stop_type 1, stop
0:00:08.356039251
0:00:08.499397675 2554 0xf6a800 INFO default
gstsegment.c:370:gst_segment_do_seek: segment updated: time segment
start=0:00:00.000000000, stop=0:00:08.356039251, rate=-1.000000,
applied_rate=1.000000, flags=0x01, time=0:00:00.000000000,
base=0:00:00.000000000, position 0:00:08.356039251, duration 0:09:56.459000000
0:00:08.499628855 2554 0xf6a800 INFO GST_STATES
gstelement.c:2233:_priv_gst_element_state_changed:<VideoSink> notifying about
state-changed PAUSED to PAUSED (PAUSED pending)
0:00:08.499638335 2554 0x7fe61c003230 INFO task
gsttask.c:300:gst_task_func:<H264Decoder:src> Task going to paused
0:00:08.499735643 2554 0xf6a800 INFO GST_STATES
gstelement.c:2233:_priv_gst_element_state_changed:<pipeline> notifying about
state-changed PAUSED to PAUSED (PAUSED pending)
0:00:08.499983155 2554 0x114ed40 INFO task
gsttask.c:300:gst_task_func:<Demuxer:sink> Task going to paused
0:00:08.501135696 2554 0x114ede0 INFO task
gsttask.c:300:gst_task_func:<VideoQueue:src> Task going to paused
0:00:08.501220980 2554 0xf6a800 INFO GST_EVENT
gstevent.c:496:gst_event_new_flush_stop: creating flush stop 1
0:00:08.501415596 2554 0xf6a800 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.501633948 2554 0x7fe61c003230 INFO task
gsttask.c:302:gst_task_func:<H264Decoder:src> Task resume from paused
0:00:08.502200924 2554 0xf6a800 INFO task
gsttask.c:431:gst_task_set_lock: setting stream lock 0x1116c20 on task 0x1160290
0:00:08.502303968 2554 0xf6a800 INFO GST_PADS
gstpad.c:5415:gst_pad_start_task:<H264Decoder:src> created task 0x1160290
0:00:08.502473732 2554 0xf6a800 INFO GST_EVENT
gstevent.c:709:gst_event_new_segment: creating segment event time segment
start=0:00:00.000000000, stop=0:00:08.356039251, rate=-1.000000,
applied_rate=1.000000, flags=0x01, time=0:00:00.000000000,
base=0:00:00.000000000, position 0:00:09.000000000, duration 0:09:56.459000000
0:00:08.502526052 2554 0x114ede0 INFO task
gsttask.c:302:gst_task_func:<VideoQueue:src> Task resume from paused
Current rate: -1
0:00:08.502620001 2554 0x114ed40 INFO task
gsttask.c:302:gst_task_func:<Demuxer:sink> Task resume from paused
0:00:08.503381941 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.504193933 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.504766141 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.504896822 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.507390603 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.528942840 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.531257281 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.540673938 2554 0x114ede0 INFO GST_STATES
gstbin.c:3112:bin_handle_async_done:<pipeline> committing state from PAUSED to
PAUSED, old pending PLAYING
0:00:08.540774798 2554 0x114ede0 INFO GST_STATES
gstbin.c:3141:bin_handle_async_done:<pipeline> continue state change, pending
PLAYING
0:00:08.540824886 2554 0x114ede0 INFO GST_STATES
gstelement.c:2233:_priv_gst_element_state_changed:<pipeline> notifying about
state-changed PAUSED to PAUSED (PLAYING pending)
0:00:08.540969234 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2935:gst_bin_continue_func:<pipeline> continue state change PAUSED to
PLAYING, final PLAYING
0:00:08.541128774 2554 0x7fe61c003720 INFO vaapidecode
gstvaapidecode.c:973:gst_vaapidecode_query:<H264Decoder> query type latency
0:00:08.541225170 2554 0x7fe61c003720 INFO GST_EVENT
gstevent.c:1184:gst_event_new_latency: creating latency event 0:00:00.000000000
0:00:08.541320042 2554 0x7fe61c003720 INFO bin
gstbin.c:2499:gst_bin_do_latency_func:<pipeline> configured latency of
0:00:00.000000000
0:00:08.541400610 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2227:gst_bin_element_set_state:<VideoSink> current PAUSED pending
VOID_PENDING, desired next PLAYING
0:00:08.541480590 2554 0x7fe61c003720 INFO GST_STATES
gstelement.c:2328:gst_element_continue_state:<VideoSink> completed state change
to PLAYING
0:00:08.541526766 2554 0x7fe61c003720 INFO GST_STATES
gstelement.c:2233:_priv_gst_element_state_changed:<VideoSink> notifying about
state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:08.541587174 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2656:gst_bin_change_state_func:<pipeline> child 'VideoSink' changed
state to 4(PLAYING) successfully
0:00:08.541655298 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2227:gst_bin_element_set_state:<H264Decoder> current PLAYING pending
VOID_PENDING, desired next PLAYING
0:00:08.541701918 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2344:gst_bin_element_set_state:<H264Decoder> skipping transition from
PLAYING to PLAYING
0:00:08.541747086 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2656:gst_bin_change_state_func:<pipeline> child 'H264Decoder' changed
state to 4(PLAYING) successfully
0:00:08.541886286 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2227:gst_bin_element_set_state:<VideoQueue> current PLAYING pending
VOID_PENDING, desired next PLAYING
0:00:08.541944978 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2344:gst_bin_element_set_state:<VideoQueue> skipping transition from
PLAYING to PLAYING
0:00:08.541999554 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2656:gst_bin_change_state_func:<pipeline> child 'VideoQueue' changed
state to 4(PLAYING) successfully
0:00:08.542064546 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2227:gst_bin_element_set_state:<Demuxer> current PLAYING pending
VOID_PENDING, desired next PLAYING
0:00:08.542120706 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2344:gst_bin_element_set_state:<Demuxer> skipping transition from
PLAYING to PLAYING
0:00:08.542175186 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2656:gst_bin_change_state_func:<pipeline> child 'Demuxer' changed
state to 4(PLAYING) successfully
0:00:08.542236026 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2227:gst_bin_element_set_state:<FileVideoSource> current PLAYING
pending VOID_PENDING, desired next PLAYING
0:00:08.542290566 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2344:gst_bin_element_set_state:<FileVideoSource> skipping transition
from PLAYING to PLAYING
0:00:08.542343942 2554 0x7fe61c003720 INFO GST_STATES
gstbin.c:2656:gst_bin_change_state_func:<pipeline> child 'FileVideoSource'
changed state to 4(PLAYING) successfully
0:00:08.542407206 2554 0x7fe61c003720 INFO GST_STATES
gstelement.c:2328:gst_element_continue_state:<pipeline> completed state change
to PLAYING
0:00:08.542460450 2554 0x7fe61c003720 INFO GST_STATES
gstelement.c:2233:_priv_gst_element_state_changed:<pipeline> notifying about
state-changed PAUSED to PLAYING (VOID_PENDING pending)
0:00:08.904449396 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.906582673 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.910889967 2554 0x114ede0 WARN basesink
gstbasesink.c:2791:gst_base_sink_is_too_late:<VideoSink> warning: A lot of
buffers are being dropped.
0:00:08.911028915 2554 0x114ede0 WARN basesink
gstbasesink.c:2791:gst_base_sink_is_too_late:<VideoSink> warning: There may be
a timestamping problem, or this computer is too slow.
0:00:08.911154399 2554 0x114ede0 INFO GST_ERROR_SYSTEM
gstelement.c:1835:gst_element_message_full:<VideoSink> posting message: A lot
of buffers are being dropped.
0:00:08.911301939 2554 0x114ede0 INFO GST_ERROR_SYSTEM
gstelement.c:1858:gst_element_message_full:<VideoSink> posted warning message:
A lot of buffers are being dropped.
0:00:08.922110872 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.923754933 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.926322730 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.928628111 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.930569508 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.932284057 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.935882042 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.938769939 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.941756417 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:08.943626270 2554 0x114ed40 INFO matroskademux
matroska-demux.c:4587:gst_matroska_demux_loop:<Demuxer> All streams are EOS
0:00:08.943766310 2554 0x114ed40 INFO task
gsttask.c:300:gst_task_func:<Demuxer:sink> Task going to paused
0:00:08.946796011 2554 0x114ede0 FIXME videodecoder
gstvideodecoder.c:864:gst_video_decoder_flush:<H264Decoder>
GstVideoDecoder::reset() is deprecated
0:00:09.104836358 2554 0x114ede0 INFO task
gsttask.c:431:gst_task_set_lock: setting stream lock 0x1116c20 on task 0x1160710
0:00:09.104965970 2554 0x114ede0 INFO GST_PADS
gstpad.c:5415:gst_pad_start_task:<H264Decoder:src> created task 0x1160710
0:00:09.105210518 2554 0x114ede0 INFO task
gsttask.c:300:gst_task_func:<VideoQueue:src> Task going to paused
_______________________________________________
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva