[Bug 754575] trick modes in gst-rtsp-server

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Tue Dec 6 10:32:26 UTC 2016


https://bugzilla.gnome.org/show_bug.cgi?id=754575

--- Comment #17 from Nikita Bobkov <NikitaDBobkov at gmail.com> ---
Review of attachment 339331:
 --> (https://bugzilla.gnome.org/review?bug=754575&attachment=339331)

::: gst/rtsp-server/rtsp-client.c
@@ +1181,3 @@
 static GstRTSPStatusCode
+default_adjust_play_mode (GstRTSPClient * client, GstRTSPContext * ctx,
+    GstRTSPTimeRange * range, gdouble * scale, gdouble * speed, gdouble *
rate,

How about passing range by pointer to pointer? This would allow us to "fix"
range if it is missing. VLC likes to send PLAY request with Scale header but
without Range header.

@@ +1184,3 @@
+    GstSeekFlags * flags)
+{
+  /* FIXME: How to handle the Scale header?

According to standard we have to transcode but this usually is not an option at
least for me due to performance issues. For now I send all frames as they are
and switch to key frames only mode when the scale is high enough. VLC seems to
be satisfied with this approach.

@@ +1202,3 @@
+
+  /* as for the speed header, just map it to rate */
+   *        For formats with delta units, like h264, we could perhaps drop

But RTP timestamps are calculated directly from running time (if this hasn't
changed since 1.4.5). This means RTP stream will look like it has scale applied
to it instead of speed except its bitrate will be multiplied by rate.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list