Commit Graph
100 Commits
Author SHA1 Message Date
Cameron Gutman c8339d5eae Update common-c with fencepost error fix 2017-06-08 00:47:56 -07:00
Cameron Gutman 07e4991c56 Temporarily enable asserts in common-c to see if we get any hits in the wild 2017-06-07 23:06:51 -07:00
Cameron Gutman 4eb62e6c5f Update common-c with FEC and latency fixes 2017-06-07 23:01:04 -07:00
Cameron Gutman bf82556783 Fix FEC bug with large frames 2017-06-06 22:40:01 -07:00
Cameron Gutman f282e84174 Don't bind to IPv6 addresses for mDNS 2017-06-06 22:34:15 -07:00
Cameron Gutman ed1a56dc68 Override jmDNS's detection of multicast-capable adapters to fix mDNS not binding to the primary NIC on some devices 2017-06-03 13:34:19 -07:00
Cameron Gutman af04831fb0 Plumb the specified packet size through to moonlight-common-c 2017-05-26 22:44:15 -07:00
Cameron Gutman 8f3eecd980 Remove starting app stage from under the lock 2017-05-21 14:42:09 -07:00
Cameron Gutman 636c20d67b Add start and stop callbacks for audio and video renderers 2017-05-21 13:04:50 -07:00
Cameron Gutman 5d90950591 Use LiInterruptConnection to prevent long waits for RTSP timeout 2017-05-21 12:25:04 -07:00
Cameron Gutman 7651ce5e84 Prevent racing connection start and stop 2017-05-21 11:52:43 -07:00
Cameron Gutman b3a1938c1d Reuse buffers for video and audio renderer callbacks to prevent excessive object allocation during stream 2017-05-18 13:29:54 -07:00
Cameron Gutman 0ce1e1be27 Update readme 2017-05-18 11:29:55 -07:00
Cameron Gutman 470680d463 Change submodule remote to use HTTPS link 2017-05-18 11:24:35 -07:00
Cameron Gutman 63e2fd447d Fix cleanup on stream connection failure 2017-05-18 09:56:54 -07:00
Cameron Gutman 864bcadcb2 Add support for per-codec reference frame invalidation options 2017-05-15 23:12:54 -07:00
Cameron Gutman ae852eb911 Allow video decoder capabilities to be set at runtime 2017-05-15 22:28:24 -07:00
Cameron Gutman 203fcd82e7 Fix use of negotiated stream parameters 2017-05-15 21:37:26 -07:00
Cameron Gutman 67469103d4 Enable 4 slices per frame as Java used to 2017-05-15 01:02:20 -07:00
Cameron Gutman 9e413000a5 Add support for Limelog in moonlight-common-c 2017-05-15 01:01:54 -07:00
Cameron Gutman bedcbfbb7e Basic streaming working on new-core 2017-05-15 00:30:25 -07:00
Cameron Gutman 73e4970a43 JNI code complete 2017-05-14 23:06:41 -07:00
Cameron Gutman ac8b7ae960 Add OpenSSL and mk files for moonlight-core 2017-05-14 20:39:39 -07:00
Cameron Gutman c62986e7b1 Plumb common->JNI functions 2017-05-14 18:19:39 -07:00
Cameron Gutman a3d5e955aa Rework interfaces for JNI bridge 2017-05-14 17:12:30 -07:00
Cameron Gutman 04e77e557b Update .gitignore 2017-05-14 15:10:41 -07:00
Cameron Gutman a748b54041 Update build.gradle 2017-05-14 15:09:36 -07:00
Cameron Gutman f77673a5c8 Move JNI modules and add moonlight-common-c submodule 2017-05-12 18:56:18 -07:00
Cameron Gutman 23ebc4d927 Purge the majority of the streaming core 2017-05-12 18:46:01 -07:00
Cameron Gutman 92b86674b9 Ignore iml files 2017-05-12 18:21:36 -07:00
Cameron Gutman f94d224395 Clean up build files 2017-05-12 18:19:29 -07:00
Cameron Gutman 822f498646 Migrate all files to AAR project 2017-05-12 17:53:55 -07:00
Cameron Gutman 4566c1855b Allow clients to correctly send the number of controllers connected 2017-02-04 21:00:10 -08:00
Cameron Gutman 195bf8ed55 Apparently we're back to 8 byte first frame headers on GFE 3.2 2016-12-13 20:33:58 -08:00
Cameron Gutman 52678cfe35 Move the mouse cursor 1 pixel each direction when connecting to force the screen to wake up 2016-11-06 01:04:50 -07:00
Cameron Gutman 61f89a2d4c Remove isRunning property from apps (since it's gone in GFE 3.1) 2016-10-21 12:16:43 -07:00
Cameron Gutman ba398e4073 Handle pairing while a pairing attempt is pending 2016-10-20 00:06:41 -07:00
Cameron Gutman a14a4a8d60 Add support for GFE 3.0.7 2016-10-05 18:45:19 -07:00
Cameron Gutman 9caf3b37ac Fix IDR frame requests on Gen 3 servers 2016-09-24 13:21:29 -07:00
Cameron Gutman e6965605c9 Consolidate string trimming into getXmlString() 2016-09-20 14:37:51 -07:00
Cameron Gutman 5b355a3e73 Fail quitApp() if the session isn't ours 2016-09-20 14:35:06 -07:00
Cameron Gutman 92d534a9c3 Merge pull request #15 from nanotech/f/idr-obo
Fix off-by-one when looking for an I-frame NAL
2016-09-11 10:02:55 -07:00
Cameron Gutman a9f7b1aeab Merge branch 'android' 2016-08-13 13:39:36 -07:00
Cameron Gutman 4f53cfcb20 Only use 4K on GFE 3.x 2016-08-13 13:24:31 -07:00
Cameron Gutman ffd70986b3 Improve mDNS for multi-homed systems 2016-06-18 11:36:36 -07:00
Cameron Gutman b5e89e47b6 Improve mDNS for multi-homed systems 2016-05-29 16:04:55 -05:00
Cameron Gutman 439afd15fa Cancel the pending IDR frame request if we got a spurious IDR frame after a stream discontinuity 2016-05-27 12:38:27 -05:00
Cameron Gutman 8d2bfecb10 Cancel the pending IDR frame request if we got a spurious IDR frame after a stream discontinuity 2016-05-27 12:38:09 -05:00
Cameron Gutman 7d15c34ed2 Fix debug message 2016-05-22 14:09:04 -05:00
Cameron Gutman 4ef1b8dc4c Fix debug message 2016-05-07 20:55:41 -04:00
Cameron Gutman c0d64058fd Return the oldest packet instead of removing it upon RTP queue constraint violation 2016-05-07 20:26:57 -04:00
Cameron Gutman 3c11ff63a7 Return the oldest packet instead of removing it upon RTP queue constraint violation 2016-05-07 20:26:44 -04:00
Cameron Gutman 537a50bee5 Revert "Some Java crypto providers don't allow IvParameterSpec objects for GCM ciphers, so use GCMParameterSpec instead"
This reverts commit b37d46fae9b89f5435990c75ce540d64efe374f7.
2016-04-21 13:28:55 -04:00
Cameron Gutman 1a58b228a0 Revert "Fallback to IvParameterSpec if GCMParameterSpec is not available"
This reverts commit 8324c2c772a191a726e2027b1487d872897bf184.
2016-04-21 13:28:31 -04:00
Cameron Gutman 248a135f86 Fallback to IvParameterSpec if GCMParameterSpec is not available 2016-04-20 13:31:56 -04:00
Cameron Gutman 246fb69050 Fix dangerous connection teardown ordering leading to native crashes in jnienet 2016-04-04 01:18:14 -04:00
Cameron Gutman a907dd0084 Remove unused (and unsafe) function on the ConnectionStatusListener 2016-04-04 01:16:33 -04:00
Cameron Gutman fe58361724 Some Java crypto providers don't allow IvParameterSpec objects for GCM ciphers, so use GCMParameterSpec instead 2016-03-30 01:26:14 -04:00
Cameron Gutman a0f93a2dc3 Fix audio stream name on Gen 4 and below 2016-03-29 22:03:32 -04:00
Cameron Gutman 82390ec9b9 Fix input encryption IV after controller packets are sent 2016-03-29 19:55:31 -04:00
Cameron Gutman 34ef95926e Fix RTSP handshake on Gen 7 servers 2016-03-29 18:42:15 -04:00
Cameron Gutman faa0cba39d Fix input encryption on Gen 7 servers 2016-03-29 18:41:57 -04:00
Cameron Gutman 8b395bb29f Pairing support for Gen 7 servers 2016-03-28 18:38:11 -04:00
Cameron Gutman 31d7f237eb Fix RTSP payload timeout being too aggressive 2016-03-08 13:05:55 -08:00
Cameron Gutman ef8c49f135 ENet JNI API update 2016-03-07 14:35:52 -08:00
Cameron Gutman a8c460e715 Close the ENet connection only after threads that might be using it have been killed 2016-03-07 12:51:48 -08:00
Cameron Gutman d75e42e23d Fix crashing on connecting to Gen 4 after running a Gen 5 stream 2016-03-06 21:29:06 -08:00
Cameron Gutman b191425112 Finish packet reading for RTSP and control streams 2016-03-06 15:51:15 -08:00
Cameron Gutman c06a4ab76d Implement RTSP over ENet 2016-03-05 19:10:22 -06:00
Cameron Gutman b3042312f6 Supply the max packet size to EnetConnection.readPacket() 2016-03-05 18:32:50 -06:00
Cameron Gutman 5fd105c9a9 Implement ENet for control and input streams 2016-03-05 17:56:42 -06:00
Cameron Gutman 306c2d143b Disable resolution switching on Gen 5 servers 2016-02-28 14:12:34 -05:00
Cameron Gutman a71a3e22e6 Rewrite MdnsDiscoveryAgent to treat the singleton JmmDNS object safely 2016-02-23 16:18:59 -05:00
Cameron Gutman da4fab2f3e Stop using resolver outside of the timer callback 2016-02-23 13:49:35 -05:00
Cameron Gutman 1db84efb68 Revert "Synchronize the mDNS events and timer with the MdnsDiscoveryAgent class instead of the instance object as a workaround for JmDNS issue #49"
This reverts commit d92ad050aa4482cdaaf8f7345222da26c31d84f6.
2016-02-23 10:54:03 -05:00
Cameron Gutman c1c3af3c66 Synchronize the mDNS events and timer with the MdnsDiscoveryAgent class instead of the instance object as a workaround for JmDNS issue #49 2016-02-23 01:50:21 -05:00
Cameron Gutman 4622b9f202 Close the jmDNS object when we're done resolving so it stops listening on the network 2016-02-20 17:11:55 -05:00
Cameron Gutman 47ea158c4c Fix random broken video on H265 2016-02-19 11:27:37 -05:00
Cameron Gutman d9cb5eacf8 Add support for Generation 5 servers (GFE 2.10.2+) 2016-02-19 03:41:03 -05:00
Cameron Gutman 5718c47be7 Fix the bug causing the 4th controller to be unrecognized 2016-02-19 01:55:09 -05:00
Cameron Gutman d7d90e8e49 Encode the surround sound information in the launch request parameters 2016-01-08 01:01:58 -06:00
Cameron Gutman 4d420b29cb Also timeout RTSP if no response is received on an established connection for 10 seconds 2016-01-04 23:55:58 -06:00
Cameron Gutman 0b9e7aa05b Standardize connection timeouts to 10 seconds 2016-01-04 23:54:25 -06:00
Cameron Gutman 8c663cc84a Replace the HEVC detection hack with a proper solution based on examining the RTSP DESCRIBE response 2016-01-04 07:39:07 -06:00
Cameron Gutman 8d1417c636 Improve HEVC check to add Titan X support and more importantly stop requesting H.265 on mobile GPUs that may not support it 2016-01-03 16:01:28 -06:00
Cameron Gutman b91ab53219 Connection reuse is broken in GFE's server (requests always get reissued on a new connection) so just turn it off 2016-01-02 17:34:29 -06:00
Cameron Gutman 6eeb7ae5b2 Add UUID on serverinfo and add a TODO for HTTP serverinfo 2016-01-02 16:50:22 -06:00
Cameron Gutman 0436179020 Use UUID string in pairing and switch to HTTP for pairing (like Shield Hub) 2016-01-02 16:47:10 -06:00
Cameron Gutman c92cae51c8 Add UUID to URL queries (like recent Shield Hub version do) 2016-01-02 16:30:24 -06:00
Cameron Gutman 57da68c0e2 Remove uniqueId parameter from NvHTTP.getServerInfo 2016-01-02 16:28:58 -06:00
Cameron Gutman 67dc2ef9ab Properly handle 4K detection on GFE 2.8 2015-12-16 16:39:38 -08:00
Cameron Gutman 6459579f15 Change decoder failure warning 2015-12-13 13:04:07 -08:00
Cameron Gutman 5112179fca Check for GFE version attribute before enabling 4K 2015-12-13 12:18:42 -08:00
Cameron Gutman b640564689 Slicing seems to cause some artifacting issues, so I'm disabling it for now 2015-12-12 21:06:38 -08:00
Cameron Gutman 763f8938b3 Lower bitrate to 75% of original when streaming H.265 2015-12-12 21:06:19 -08:00
Cameron Gutman 4c67631ea5 Add negotiation logic for 4K and H.265 2015-12-12 17:18:15 -08:00
Cameron Gutman 920154b4b6 Add support for requesting an H265 stream (negotiation TBD) 2015-12-12 02:16:05 -08:00
Cameron Gutman d8c7d10ed6 Add H265 support to depacketizer 2015-12-12 01:32:07 -08:00
Cameron Gutman adcffa62d8 Refactor depacketizer to avoid H264 and AVC references -- no behavior changes 2015-12-12 00:06:37 -08:00
Cameron Gutman 260d716eb8 Fix broken app launching and resuming on GFE 2.8 2015-11-11 16:28:58 -08:00