[vlc-devel] RTSP trickplay - libvlc_media_player_set_rate support for fast forward/rewind

Kaarlo Räihä kaarlo.raiha at gmail.com
Sun May 29 10:53:54 CEST 2011

2011/5/29 Nuno Mota <ee05154 at fe.up.pt>

> So i've been using VLC java bindings for a few days to create a RTSP client
> to work with my Live555 RTSP Server implementation.
> Both commands play and pause work fine for me. Seek is working fine and the
> playback works great after all these commands. However there's a few remarks
> relating to fast forward and fast rewind. Fast forward works fine, it moves
> along great but sometimes the current media position is set to values way
> back the timeline. When I issue the command setRate(1), the video is played
> again at the same rate but it skips some frames I think, because the
> playback looks a little bit jumpy. I always get the same output when i do
> this:
> libdvbpsi error (PSI decoder): TS discontinuity (received 10, expected 15)
> for PID 0
> libdvbpsi error (PSI decoder): TS discontinuity (received 10, expected 0)
> for PID 4095
> libdvbpsi error (PSI decoder): TS duplicate (received 12, expected 13) for
> PID 17
> I see no other issues concerning Fast forward. Relative to fast rewind the
> source code in the control section in media_player.c in line 1149
> int libvlc_media_player_set_rate( libvlc_media_player_t *p_mi, float rate )
> {
>     if (rate < 0.)
>     {
>         libvlc_printerr ("Playing backward not supported");
>         return -1;
>     }
> Playing backwards is not supported playing from a disc file, i've tested it
> myself, however, when streaming from an Internet source the case is quite
> different. I commented the above lines to produce something similar to fast
> forward and the result was successful.
> PLAY rtsp:// RTSP/1.0
> CSeq: 11
> User-Agent: LibVLC/1.1.9 (LIVE555 Streaming Media v2010.11.17)
> Session: 68C9705
> Scale: -2.000000
> RTSP/1.0 200 OK
> CSeq: 11
> Date: Fri, May 27 2011 14:41:49 GMT
> Scale: -2.000000
> Session: 68C97056
> RTP-Info: url=rtsp://
> The playback was as good as the fast forward results. So here's my question
> why is it still not supported for streaming? I see no other problems as the
> ones that exist to still make this not supported. I'm kindly accepting
> responses and comments and other stuff to make this a more interesting
> topic.

AFAIK it would be somewhat ugly hack in libvlc to add support like this for
single access method (discs aren't the only problematic thing) with simple
code change. But if there would be internal variable (e.g.
b_can_play_backwards) and code for this in rtsp access, I don't think that
patch would be opposed that much.

> Regards,
> Nuno Mota
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> http://mailman.videolan.org/listinfo/vlc-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20110529/716ec3cb/attachment.html>

More information about the vlc-devel mailing list