Commit Graph

399 Commits

Author SHA1 Message Date
Cameron Gutman d3a7bba666 Fix an RTP queue bug that can cause extended packet delays when the last packet ages out of the queue 2015-08-11 22:49:10 -07:00
Cameron Gutman 8bd6582d07 Fix off by one in reference frame invalidation 2015-08-11 21:33:06 -07:00
Cameron Gutman 875089305b Start frame number must be 0 for proper invalidation if the first frame is dropped 2015-08-11 21:26:35 -07:00
Cameron Gutman c19ff71c9a Add experimental reference frame invalidation support 2015-08-11 21:12:34 -07:00
Cameron Gutman 36c320a584 Fix skipping first video packet 2015-08-11 08:42:21 -07:00
Cameron Gutman 316b8c56f1 Improve IDR frame requests for Gen 4 servers to use the proper IDR frame request packet 2015-08-04 22:22:53 -07:00
Cameron Gutman 2cf3855d35 Use the default vqos.bw.flags value sent by GFE 2015-07-18 17:05:15 -07:00
Cameron Gutman 13ec16c606 Update for GFE 2.4.5.54 support. The HTTPS /serverinfo query is now only available to paired clients. As a result, we catch the cert validation error and failover to HTTP. It's ugly but I don't see another way to do it. 2015-06-15 10:22:00 -07:00
Cameron Gutman 7d150e7e89 Fix a bug in RTP queue found when porting to moonlight-common-c 2015-06-15 09:51:59 -07:00
Cameron Gutman 7d61948d91 Take Moonlight out of messages displayed to the user for third party app support 2015-06-15 09:51:15 -07:00
Cameron Gutman 73de3cc91d Renaming projects to Moonlight 2015-04-21 21:43:27 -04:00
Cameron Gutman d71cbe344a Fix missing closes of Closeables caught by StrictMode 2015-03-29 23:00:41 -04:00
Cameron Gutman dbe01a17d2 Enable slicing again on GFE 2.4 to reduce latency on Qualcomm devices 2015-03-25 00:31:30 -04:00
Cameron Gutman b3503cdede Reduce GCs and CPU usage by avoiding HashSet and LinkedList usage in the depacketizer. Also avoid atomic ref count operations for direct submit decoders. 2015-03-25 00:14:48 -04:00
Cameron Gutman 1ac6439690 Use an unsynchronized buffer list to cut down on overhead when using direct submit video renderers 2015-03-09 01:38:22 -05:00
Cameron Gutman c481841ddf Change VideoDecoderRenderer to an abstract class so future interface changes can be made without breaking clients 2015-03-09 01:37:08 -05:00
Cameron Gutman 678269c561 Create a new UnsynchronizedPopulatedBufferList implementation that can be used for better direct submit performance 2015-03-09 01:35:53 -05:00
Cameron Gutman 83e874cdb6 Fix off-by-one to make printed buffers nicer 2015-03-08 22:21:11 -05:00
Cameron Gutman 90fc5797d5 Fix NvApp constructor 2015-02-27 14:11:15 -05:00
Cameron Gutman fcfcce88dd Use an NvApp in the StreamConfiguration so it can be directly used by NvConnection 2015-02-27 14:08:39 -05:00
Cameron Gutman fb8fc54bb1 Use App IDs for app lookups and deprecate the old name-based lookup function 2015-02-27 13:29:41 -05:00
Cameron Gutman a4ec619e5a Add back the capability to get box art with NvHTTP 2015-02-27 01:15:21 -05:00
Cameron Gutman 8fb2622b66 Throw an exception if the received app list XML was incomplete 2015-02-26 17:58:03 -05:00
Cameron Gutman e6527de786 Trim strings retrieved from the applist XML 2015-02-25 19:56:56 -05:00
Cameron Gutman 3f7e4d817f Allow verbose mode to be enabled at runtime 2015-02-25 19:56:20 -05:00
Cameron Gutman 6eaabc84aa Improve verbose debugging 2015-02-25 19:55:16 -05:00
Cameron Gutman 814557435d Print a better message if attempting to quit another device's stream 2015-02-25 19:54:35 -05:00
Cameron Gutman 2d5328fc24 Pass through the correct refresh rate now that people are doing sensible things with it 2015-02-13 17:07:14 -05:00
Cameron Gutman 95c82c5cc5 Fix a nasty bug in multiple controller support that could cause phantom inputs on controller 0 2015-02-12 21:06:37 -05:00
Cameron Gutman fe907b0271 Handle NumberFormatExceptions from parseInt() 2015-02-11 17:24:27 -05:00
Cameron Gutman 7ae74a6a18 Never return an NvApp object that has no app ID assigned 2015-02-09 00:10:56 -05:00
Cameron Gutman 9772049295 Initialize the app name to empty string because it may not be present 2015-02-09 00:09:40 -05:00
Cameron Gutman ec39f22ad8 Fix packet type for legacy controller packets and privatize some constants to prevent this bug from happening again 2015-02-02 18:06:05 -05:00
Cameron Gutman 51343a171d Add multiple controller support 2015-02-01 04:37:35 -05:00
Cameron Gutman 9988330613 Add some new common functions for app list caching 2015-01-30 18:27:15 -05:00
Cameron Gutman 8235717502 Fix streaming from GFE 2.1.x 2015-01-25 21:33:24 -05:00
Cameron Gutman 3d29d76cd4 Fix broken streaming on Gen 4 servers 2015-01-25 21:21:58 -05:00
Cameron Gutman cde5367f38 Tweak network packet loss message and threshold algorithm 2015-01-25 18:37:07 -05:00
Cameron Gutman 466463ebc3 Add SDP backwards compatibility 2015-01-25 18:12:25 -05:00
Cameron Gutman aee255a6ee Backwards compatibility for video and control stream to GFE 2.1.x 2015-01-25 17:59:23 -05:00
Cameron Gutman daf7598774 Use a single context object instead of passing around tons of objects. Start of GFE 2.1.x backwards compatibility. 2015-01-25 17:34:28 -05:00
Cameron Gutman 6de5cf8925 Disable deadzone scaling because it's pretty broken 2015-01-25 17:02:00 -05:00
Cameron Gutman 52e5817327 Fix flags so bitrate scales up properly on GFE 2.2.2 2015-01-22 14:51:28 -05:00
Cameron Gutman 79ddfc65d5 Remove unused import 2015-01-22 14:17:33 -05:00
Cameron Gutman 6acb1fd92a Initial support for GFE 2.2.2+ 2015-01-22 14:13:02 -05:00
Cameron Gutman bd2a1b8886 Improve streaming QoS 2014-12-02 00:54:52 -08:00
Cameron Gutman 021cfd1737 Lower the maximum RTP queuing delay to 10 ms instead of 40 ms to reduce the number of frames dropped when a packet is lost 2014-11-27 21:52:03 -06:00
Cameron Gutman 5fc438a0be Update XPP3 and OkHttp libraries 2014-11-23 23:26:12 -08:00
Cameron Gutman 3a3ac83ab5 Change timing of video initialization to prevent an ICMP port unreachable message on start that could tear down a NAT hole 2014-11-20 19:04:58 -08:00
Cameron Gutman ff4570abac Reorder video stream initialization to vastly reduce the chance we'd miss the initial IDR frame 2014-11-19 10:42:29 -08:00