Bug 978403 - [RFE] adaptive video streaming
[RFE] adaptive video streaming
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: spice-server (Show other bugs)
6.5
Unspecified Unspecified
unspecified Severity unspecified
: rc
: ---
Assigned To: Uri Lublin
Desktop QE
: FutureFeature
Depends On: 952671
Blocks: 978405 978410
  Show dependency treegraph
 
Reported: 2013-06-26 10:23 EDT by Yonit Halperin
Modified: 2013-11-21 02:42 EST (History)
5 users (show)

See Also:
Fixed In Version: spice-server-0.12.3-1.el6
Doc Type: Enhancement
Doc Text:
See comment #0 and the patch linked in comment #1
Story Points: ---
Clone Of:
: 978405 978410 (view as bug list)
Environment:
Last Closed: 2013-11-21 02:42:13 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Yonit Halperin 2013-06-26 10:23:45 EDT
Current state:
All the bitmaps streams that are detected as video, are transferred by spice as an MJPEG stream with static quality of 70.
The frame rate is modified correspondingly to the send-queue congestion.
On the client side, lip sync is implemented by rendering frames when their timestamp correspond to the audio packets being played. Frames with timestamp > current-audio-time, are dropped. The playback latency is determined by the audio latency. The audio latency is not adjusted during playback.

Over limited bandwidth, videos that are played in high resolution, can be unwatchable, with the client dropping more than 70% of the frames that were sent from the server.

Plan:

Dynamically adjust the video bit-rate (by changing quality & frame rate) and the playback latency, using periodic reports from the client about the playback, and evaluating the available bandwidth and latency according to them.
Moreover, the bandwidth and latency estimations of past video playbacks will be used for improving the initial parameters setting of future video playbacks (and can also be used for other spice transfers that can be adjusted for better performance under different network conditions).

Expected Results:

Over limited bandwidth, we should observe a better user experience when watching video playback. While the quality of the frames might be worse, the continuity of the playback should improve (i.e., less occurrences of scenes dropping and pauses).

Over high bandwidth, the user experience shouldn't degrade. However, since it can take a little time to learn the network parameters, the start of the first video playback quality (during a specific connection), might be a bit worse.
Comment 1 Uri Lublin 2013-06-27 08:27:02 EDT
A patch-set is available upstream
http://lists.freedesktop.org/archives/spice-devel/2013-February/012422.html
Comment 5 errata-xmlrpc 2013-11-21 02:42:13 EST
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHBA-2013-1571.html

Note You need to log in before you can comment on or make changes to this bug.