Jeremy White dc5fd91f0c Revise sound packet time sequencing for a more recent Firefox.
Around version 45, Firefox started being very particular about the
time stamps put into the Opus stream.  The time stamps from the Spice server are
somewhat irregular.  They mostly arrive every 10 ms, but sometimes it is 11, or sometimes
with two time stamps the same in a row.  The previous logic resulted in fuzzy and/or
distorted audio streams in Firefox in a row.

Thus, we end up with an inelegant hack.  Essentially, we force every packet to have
a 10ms time delta, unless there is an obvious gap in time stream, in which case we
will resync.

This replaces logic that mitigated only the duplicated time packets.

The long term solution would appear to be 'sequence' mode, but I cannot get
Firefox to use that mode (and MDN suggests that for codecs such as VP8 with time
stamps in line, that Firefox will not accept it).
2016-10-03 09:37:56 -05:00
2013-02-11 09:17:53 -06:00
2012-06-04 17:22:01 +03:00
2012-06-04 17:22:01 +03:00
2012-06-04 17:22:01 +03:00
2012-06-04 17:22:01 +03:00
2016-05-04 10:19:26 -05:00
2012-06-04 17:22:01 +03:00
2016-07-13 10:41:07 -05:00

Spice Javascript client

Instructions and status as of August, 2016.

Requirements:

  1.  Modern Firefox or Chrome (IE will work, but badly)

  2.  A WebSocket proxy

      websockify:
        https://github.com/kanaka/websockify
      works great.

      Note that a patch to remove this requirement has been submitted
      to the Spice project but not yet been accepted.  Refer to this email:
      https://lists.freedesktop.org/archives/spice-devel/2016-June/030552.html

  3.  A spice server


Optional:
  1.  A web server

      With firefox, you can just open file:///your-path-to-spice.html-here

      With Chrome, you have to set a secret config flag to do that, or
      serve the files from a web server.


Steps:

  1.  Start the spice server

  2.  Start websockify; my command line looks like this:
        ./websockify 5959 localhost:5900

  3.  Fire up spice.html, set host + port + password, and click start


Status:

  The TODO file should be a fairly comprehensive list of tasks
  required to make this client more fully functional.
Description
RETIRED, further work has moved to Debian project infrastructure
Readme 440 KiB
Languages
JavaScript 93.3%
HTML 5%
CSS 0.9%
Makefile 0.8%