1360 Commits

Author SHA1 Message Date
Cameron Gutman
cd6420deab Update common to fix artifacting v11 2014-01-11 14:41:54 -05:00
Cameron Gutman
b22f68bf1e Update Android Opus decoder for limelight-common changes 2014-01-10 07:56:30 -06:00
Cameron Gutman
46fbee1a3b Only use SPS hack on Tegra devices 2014-01-10 01:05:15 -06:00
Cameron Gutman
81ae7bd638 Update audio code for limelight-common changes 2014-01-10 01:04:42 -06:00
Cameron Gutman
023c5e31ac Update limelight-common 2014-01-10 01:03:58 -06:00
Cameron Gutman
2993d62191 Unblacklist Tegra and Rockchip after the SPS fix 2014-01-06 22:54:35 -06:00
Cameron Gutman
fd08f2b1f5 Update limelight-common for SPS fixup 2014-01-06 22:53:55 -06:00
Cameron Gutman
24732df4b7 Fix memory leak in limelight-common 2014-01-04 20:14:03 -06:00
Cameron Gutman
24cb024c7b Performance improvements from limelight-common update 2013-12-29 02:48:18 -05:00
Cameron Gutman
e489382b0e Update for changes in limelight-common 2013-12-28 16:59:39 -05:00
Cameron Gutman
a5b6e57346 Update limelight-common jar 2013-12-27 00:42:11 -05:00
Cameron Gutman
10415885d5 Merge branch 'RebaseOnCommon' 2013-12-27 05:30:49 -05:00
Cameron Gutman
806310900d Update to libopus-1.1. Reduces CPU audio decoding overhead by up to 40%. 2013-12-27 05:30:15 -05:00
Cameron Gutman
9d3ee3a0a2 Add UI elements and backend code for manually overriding the default decoder choice. Redraw at the specified refresh rate. 2013-12-26 17:35:53 -05:00
Cameron Gutman
163ee74e98 Add options to select between 720p and 1080p resolutions along with 30 fps and 60 fps 2013-12-19 05:14:39 -05:00
Cameron Gutman
934e234b74 Update limelight-android for limelight-common changes 2013-12-19 04:43:42 -05:00
Aaron Neyer
25be9e5cf8 updated readme 2013-12-09 16:55:12 -05:00
Aaron Neyer
5337e938e0 add license and readme 2013-12-09 12:12:03 -05:00
Cameron Gutman
12179a999b Missed uncommenting this. 2013-12-05 13:01:43 -05:00
Cameron Gutman
14d093cf06 Remove code shared with limelight-common and implement Android bindings. 2013-12-05 12:59:36 -05:00
Cameron Gutman
b0bb8b685c Further optimize the JNI code for faster H264 decoding. Add an experimental RenderScript renderer. 2013-11-29 21:06:35 -06:00
Cameron Gutman
f4cf83012e Disable Nagle on the control socket. Use a single resync thread rather than spawning a new thread each time. 2013-11-28 21:36:51 -05:00
Cameron Gutman
fb437f11a0 Always request an IDR frame if packet loss occurs because we don't know if we missed a full frame (partial revert of last commit). Remove the last bit of active NAL parsing. 2013-11-28 21:02:31 -05:00
Cameron Gutman
b0d138b7f2 Rewrite the NAL depacketizer to run in O(1) time by parsing the proprietary header rather than the H264 bytestream 2013-11-28 14:22:12 -05:00
Cameron Gutman
a2a4159b0c Also disable non-compliant speed optimizations when prioritizing quality 2013-11-26 20:44:10 -05:00
Cameron Gutman
b603bf4887 Add a checkbox to favor image quality over performance 2013-11-26 20:03:55 -05:00
Cameron Gutman
8e22a125e2 Remove AvcDecoder.SLICE_THREADING flag which was making performance worse. Scale the thread count higher on low performing devices. Use a constant 30 fps target since rendering tends to have very little effect on decoding speed. Only wait when the wait time will exceed 8 ms in order to reduce the likelyhood that the wait causes us to render late. 2013-11-26 14:36:06 -05:00
Cameron Gutman
55d534c8cf Fix off-by-one error in prefix matching 2013-11-25 21:48:35 -05:00
Cameron Gutman
734d80b281 Blacklist the Rockchip H264 decoders. Blacklist another software decoder that doesn't support H264 L5.0 high profile 2013-11-24 19:55:12 -05:00
Cameron Gutman
5360d6c9b2 Hint the GC to run at the completion of each frame. This forces concurrent garbage collection which means that the likelyhood of a long GC pause while other threads are running is lower. 2013-11-24 19:32:50 -05:00
Cameron Gutman
dd82573d08 Switch from ArrayBlockingQueues to LinkedBlockingQueues for increased throughput. Set thread priorities for the decoder and ping threads. 2013-11-24 19:31:50 -05:00
Cameron Gutman
d9527a3810 Optimize performance flags. 2013-11-24 19:29:26 -05:00
Cameron Gutman
9be14c3d92 Add thread names for easier debugging 2013-11-24 17:57:00 -05:00
Cameron Gutman
732ea8a3ac Optimize the reinitialization of the buffer descriptor in the receive threads 2013-11-24 17:29:12 -05:00
Cameron Gutman
9a3c5dac0a Suppress connection failure warnings when closing gracefully 2013-11-24 21:52:33 -05:00
Cameron Gutman
7d39ac2a45 Reuse a single AvByteBufferDescriptor when depacketizing H264 instead of allocating many of them per packet 2013-11-24 21:51:09 -05:00
Cameron Gutman
fb8b6fd7f5 Add configurable ffmpeg performance options 2013-11-24 21:46:47 -05:00
Cameron Gutman
c8b94217cf Set the datagram destination manually for ping packets rather than connecting the datagram socket explicitly. This prevents the ICMP port unreachable message from being propagated to the receive thread which causes an IOException. 2013-11-23 17:07:33 -05:00
Cameron Gutman
0fe7549942 Loosen the connection timeouts. Remove the HTTP request timeout because it depends on how long it takes for the requested app to start. 2013-11-23 16:48:46 -05:00
Cameron Gutman
022866288d Add more logging for exceptions. 2013-11-23 14:06:51 -05:00
Cameron Gutman
125bcb370f Limit the size of queues. Switch to a blacklist instead of a whitelist for hardware decoding. Currently, Nvidia, TI, and Google H264 codecs are on the blacklist. Reenable large heap since we're allocating more objects now. 2013-11-23 02:44:10 -05:00
Cameron Gutman
4d5849f448 Add UI indications of the connection status and failure 2013-11-23 01:03:37 -05:00
Cameron Gutman
c88d23001e Commit forgotten ConnectionStatusListener interface. Thanks to danielb7390 for pointing this out. 2013-11-22 22:13:39 -05:00
Cameron Gutman
2946966456 Whitelist the Exynos hardware H264 decoder 2013-11-22 02:13:02 -05:00
Cameron Gutman
d00474c1cd Fix warning. 2013-11-22 00:31:39 -05:00
Cameron Gutman
49b2332f14 Make the IP textview single line with no suggestions. Set focus to the start streaming button by default. 2013-11-22 00:31:25 -05:00
Cameron Gutman
db78af916d Handle decode units larger than the size of the decode unit buffer 2013-11-22 00:29:48 -05:00
Cameron Gutman
e1a8f86d4f Make the virtual and hardware back buttons on the devices themselves work as the in-game back button. This is required for Shield's back button to work. 2013-11-21 19:56:44 -05:00
Cameron Gutman
80fdae3673 Request an IDR frame if a previous frame was lost or 2013-11-21 19:55:40 -05:00
Cameron Gutman
e52b85a883 Restore the performance level fed into the AvcDecoder 2013-11-21 16:59:04 -05:00