summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-12-15Show the timeupdate events at stream debug level 2, not level 1.Jeremy White1-1/+2
They are fairly noisy, and more appropriate to the more detailed level.
2016-10-10Protect against an mjpeg stream image draw occuring after stream destruction.Jeremy White1-2/+2
2016-10-10Use empty image instead of null to avoid warningsJeremy White2-1/+6
2016-10-10If MediaSource is not available, do not report the vp8 or opus caps.Jeremy White1-10/+17
2016-10-10Improve stream debug messages slightly.Jeremy White1-3/+6
2016-10-10Do not wait for the source buffer open callback to start stream creation.Jeremy White1-13/+10
Otherwise, we end up discarding stream data messages, and our decode can become corrupted, notably on Chrome. This way, we should not lose any messages while we are waiting for source buffer creation.
2016-10-10Basic SPICE port implementationOliver Gutierrez7-0/+148
2016-10-03Implement support for the playback stop message.Jeremy White1-1/+16
This allows audio processing to be more robust in Firefox.
2016-10-03Rely on the auto play attribute.Jeremy White1-3/+0
Browsers now reliably autoplay, and issuing play prematurely can generate an error in both Firefox and Chrome. Hence we can simply remove this call and audio seems to work fine.
2016-10-03Revise sound packet time sequencing for a more recent Firefox.Jeremy White2-10/+29
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-03Use modern browser information to detect underrun.Jeremy White1-22/+8
We previously had a fairly crude 'gap detection', but browsers are largely supporting the modern buffer semantics, and we can now rely on them to detect under runs for us. This improves audio in Chrome while playing large videos.
2016-09-28Fixed trailing whitespaces in several filesOliver Gutierrez19-72/+71
2016-09-08Fixed syntax error in debugger command.Oliver Gutierrez1-2/+5
Debugger is not an object or command. It is a reserved word and "DEBUG > 0 &&" syntax does not work with it
2016-09-06Added debug filtering to avoid debugger to start when using in productionOliver Gutierrez1-3/+3
2016-09-06spiceconn: Set channel idPavel Grunt1-1/+2
Allow to work with more channels of one type Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=97575 Acked-by: Victor Toso <victortoso@redhat.com>
2016-08-17Prepare for the 0.17 releasespice-html5-0.1.7Jeremy White3-8/+20
2016-08-03playback: Don't try to access undefined source bufferOliver Gutierrez1-3/+3
The playback code first tries to access this.source_buffer and then would check whether it's defined. This was causing unwanted exception to be thrown in the cockpit spice-html5 plugin.
2016-07-13Send stream process reports after we have processed them.Jeremy White2-30/+57
Previously, we sent them strictly upon receipt. However, receiving is fast; by adding in some of the processing time (i.e. queueing and so on), we encourage the adaptive rate control to slow down.
2016-07-13Add support for the vp8 codec type.Jeremy White5-3/+337
2016-07-13Revise the webm files to more correctly identify audio tracks.Jeremy White2-9/+7
2016-07-13Track and make note of requests that take an unusual amount of time.Jeremy White1-0/+4
2016-07-13Add tools for debugging media source playback events.Jeremy White2-1/+115
2016-07-13Give the playback channel a separate debug control.Jeremy White2-3/+4
2016-05-12spice-html5: spice_auto.html - actually use ?path when givenMartin Hradil1-0/+4
Right now, `spice_auto.html` reads the path from query string .. and never actually does anything with it. This should make `spice_auth.html` respect a path parametr when given.
2016-05-04quic: Add missing breakPavel Grunt1-0/+1
Spotted by coverity
2016-05-04filexfer: Remove wrongly placed semicolonPavel Grunt1-1/+1
Spotted by coverity
2016-03-08Fix 2 typos in commentsChristophe Fergeau1-2/+2
2015-10-27Enable file transfer for spice_auto.html.Jeremy White1-0/+1
The work Pavel did on spice.html did not get fully transferred into spice_auto.html; in particular, we need to append the xfer div to the main area in order for file transfer to work. This fixes that, and now drag + drop works in spice_auto.html.
2015-09-09Set nonhandled messages as not implementedPavel Grunt4-0/+187
Avoid spamming log
2015-09-09Use name of channel instead of numberPavel Grunt2-3/+3
For unknown channel types the type number is still used, e.g.: "Channel type unknown-12 not implemented"
2015-09-09spiceconn.js: Add missing channel namesPavel Grunt1-0/+14
2015-09-09enums.js: Update for new channelsPavel Grunt1-0/+2
2015-09-09display.js: Remove unreachable returnPavel Grunt1-2/+0
2015-06-04Add support for stream reports.Jeremy White5-12/+116
This helps video playback do a slightly better job of keeping up in the browser. It's not a dramatic effect, but enough to start making video playback almost tolerable.
2015-06-04Implement support for sized data streams.Jeremy White4-22/+76
2015-06-04Minor change to error message formating.Jeremy White1-2/+2
2015-03-13Prepare for release 0.1.6spice-html5-0.1.6Jeremy White3-3/+9
2015-01-16Add button for cancelling file transferPavel Grunt2-0/+21
2015-01-16Add progress bar for file transferPavel Grunt4-0/+42
2015-01-15Use WheelEvent instead of MouseWheelEventPavel Grunt2-3/+3
MouseWheelEvent is deprecated and not working in Firefox.
2015-01-15Inform agent about client's capabilitiesPavel Grunt3-1/+65
The client should inform the agent about capabilities when the connection is established. This avoid receiving unhandled agent messages.
2015-01-15Read file only when have agent tokensPavel Grunt1-1/+17
Stop reading a file when there are no tokens, continue reading it when tokens arrive.
2015-01-15Use drag and drop for transfering files from client to guestPavel Grunt3-0/+52
2015-01-15Implement methods for transfering files from client to guestPavel Grunt6-0/+234
It is possible to transfer files from the client to the guest using File API [0] when a spice vd agent is connected. Methods for the transfer are based on spice-gtk implementation. [0] http://www.w3.org/TR/file-upload/
2015-01-15Split agent data message into smaller chunksPavel Grunt2-3/+14
Allowed size for SPICE_MSGC_MAIN_AGENT_DATA message is 2048 Bytes, larger messages have to be splitted.
2015-01-15Send agent messages only when have agent tokensPavel Grunt1-6/+26
Messages that were not sent are stored in the queue. They will be sent later when the client receives more agent tokens.
2015-01-15Report SPICE_MAIN_CAP_AGENT_CONNECTED_TOKENS capabilityPavel Grunt2-0/+9
We should report that we handle the connected tokens message by setting the SPICE_MAIN_CAP_AGENT_CONNECTED_TOKENS capability.
2015-01-15Handle agent tokensPavel Grunt2-2/+32
2014-10-31SPICE-HTML5: Improve error messageFrantisek Kobzik1-1/+3
Current error message in SPICE-HTML5 error is poor (error-logging function prints error.toString() which doesn't contain anything detailed). This patch enhances this message in the following way: - error event contains target attribute ([1]), - the code in this patch checks for presence of 'url' attribute (which is contained in WebSocket object[2]). If the target contains url then meaningful message is logged. [1]: https://developer.mozilla.org/en-US/docs/Web/API/Event [2]: https://developer.mozilla.org/en-US/docs/Web/API/WebSocket
2014-10-29Use a modern number of agent tokens.Jeremy White1-1/+1
This keeps an XSpice server from spin looping, which it will do if data is presented, but num_send_tokens == 0.