2107 Commits

Author SHA1 Message Date
Cameron Gutman
45120e79e4 Revert "Fix the double-free bug and disable double free debugging."
This reverts commit 9bb395501172f754baacc1efe6f09af55627fa15.
2013-11-21 16:24:52 -05:00
Cameron Gutman
ff50b5fdab Revert "Fix memory leaks of special NAL sequences"
This reverts commit d9987105d0d9c27e920b4113875e82b315d050a4.
2013-11-21 16:24:47 -05:00
Cameron Gutman
e6959e66e4 Fix memory leaks of special NAL sequences 2013-11-21 14:36:17 -05:00
Cameron Gutman
d5f59bb972 Remove large heap flag. 2013-11-21 13:08:07 -05:00
Cameron Gutman
9e4364f672 Fix the double-free bug and disable double free debugging. 2013-11-21 13:05:01 -05:00
Cameron Gutman
acb3dc8881 Add double-free detection code to the pools 2013-11-21 12:55:05 -05:00
Cameron Gutman
7951c0fa13 WIP optimization of object allocation and pools. There's currently a double free on the AvByteBufferDescriptor that I'm trying to track down. 2013-11-21 12:24:45 -05:00
Cameron Gutman
c42d40b8f6 Remove an extra frame copy that wasn't needed. Only update the stored frame if the previous frame had been displayed. Don't render the same frame again if there's no new frame to update. 2013-11-21 09:55:57 -05:00
Cameron Gutman
ab9b7b5164 Discard the alpha channel of the surface since it's not used. Always use MED_PERF for the AvcDecoder configuration because it now works well enough on Tegra 3 that the image quality improvements are worth it. 2013-11-21 08:45:25 -05:00
Cameron Gutman
45664dac2a Draw directly to the surface buffer. Improve amount of decoding and rendering that can be done in parallel. Add performance levels and choose them by cpuinfo. Improves Tegra 3 performance significantly. 2013-11-21 08:38:49 -05:00
Cameron Gutman
54839e672d Fix multithreaded decoding to significantly improve Tegra 3 decoding performance. It's not as smooth as Tegra 4 CPU decoding or Snapdragon hardware decoding, but it's much better than it was before. 2013-11-20 03:07:52 -05:00
Cameron Gutman
9b46155af2 Log a message based on what type of decoding is being used 2013-11-20 01:35:39 -05:00
Cameron Gutman
5a4a0d55e3 Enable both landscape orientations 2013-11-20 01:33:58 -05:00
Cameron Gutman
bd6338730d Don't decode video on the emulator for performance reasons. 2013-11-20 01:33:38 -05:00
Cameron Gutman
f672befaa7 Revert an earlier commit that introduced a bug that caused initialization to crash 2013-11-20 00:59:12 -05:00
Cameron Gutman
34905dd01e Fix crashes caused by rendering to a surface on teardown 2013-11-20 00:32:37 -05:00
Cameron Gutman
16d629f5cf Remove jlibrtp (finally). CPU decoding support (works great on Tegra 4, not so well on Tegra 3) 2013-11-20 00:00:00 -05:00
Cameron Gutman
0504bed5e9 Fix ffmpeg library loading. Create a DecoderRenderer interface and use it to move the MediaCodec code into for Qualcomm devices. 2013-11-19 02:49:33 -05:00
Cameron Gutman
2c2e713166 Rework our JNI interface and add ffmpeg bindings for AVC decoding (WIP) 2013-11-18 18:58:49 -05:00
Cameron Gutman
cca7df6c25 Reassemble AVC NALs when padding is reached, rather than waiting through several packets until the next AVC frame start NAL. Improves video latency and vulnerability to packet loss. 2013-11-17 16:50:45 -05:00
Cameron Gutman
10165f3166 Fix frame pacing issues on Snapdragon. Improve latency on Tegra (not perfect still). 2013-11-15 23:42:00 -05:00
Cameron Gutman
79db2ed584 Fix a bug with MAC address selection that caused it to always select the first adapter 2013-11-14 17:30:40 -05:00
Cameron Gutman
690df6e42c Add armeabi and x86 versions of libopus.a and build the libnv_opus_dec.so shared library for those platforms. Update armeabi-v7a library. Libopus.a binaries from https://github.com/brooss/krcam 2013-11-14 15:17:02 -05:00
Cameron Gutman
ae65bbe3ca Add Moga controller support. 2013-11-12 03:10:23 -05:00
Cameron Gutman
aa4e07ea2f Free audio packets back to the packet pool after decoding. 2013-11-12 02:19:58 -05:00
Cameron Gutman
4eaf68ae58 Lower the buffer size of the Opus decoder based on the data we're actual receiving. Handle invocations of the decoder with null data for packet loss indication. 2013-11-12 02:04:08 -05:00
Cameron Gutman
77786f9693 Display a warning if the active connection is metered. Find a proper MAC address for pairing (might require re-pair). Fix a possible infinite loop in the NvControl code. 2013-11-11 18:42:07 -05:00
Cameron Gutman
83ad55e436 Fix some ANRs and force-close errors when connection failures occur. 2013-11-11 17:21:50 -05:00
Cameron Gutman
4d80373f25 Shutdown streaming when the input connection breaks 2013-11-11 15:40:16 -05:00
Cameron Gutman
08f8942548 Fix Xbox 360 controller D-pad 2013-11-11 15:39:55 -05:00
Cameron Gutman
b34da27fbd Fix an unclosed closeable. 2013-11-10 17:12:52 -05:00
Cameron Gutman
8802e05f27 Change target SDK to KitKat. Use immersive mode for streaming on KitKat devices. 2013-11-10 17:12:34 -05:00
Cameron Gutman
b56f25232e Start pinging earlier so Shield Proxy knows where to send the reference frame 2013-11-10 16:23:55 -05:00
Cameron Gutman
745da05ad3 Fix back button press on the soft UI buttons. Make back+start emulate the steam overlay button. 2013-11-10 15:59:13 -05:00
Cameron Gutman
c9ad9ab407 Remove a straggling println 2013-11-10 15:57:05 -05:00
Cameron Gutman
7cebdea25c Add large heap attribute. Fix a warning 2013-11-10 15:28:04 -05:00
Cameron Gutman
524cab4115 Drop audio frames if the backlog becomes too large. Trim buffer pools when memory runs low. Optimize AVC decoding a bit more. 2013-11-10 15:25:00 -05:00
Cameron Gutman
fc66caf567 Revert unintended change 2013-11-10 15:21:58 -05:00
Cameron Gutman
e507f4abfb Remove some unneccessary checks and repurpose an old method. 2013-11-10 14:45:28 -05:00
Cameron Gutman
20514a7ce8 Remove the default host IP address. 2013-11-10 05:49:33 -05:00
Cameron Gutman
ac1380bd4c Fix force-close if the stream is aborted before RTP is connected. Fix address already in use exception on RTCP socket. 2013-11-10 05:49:00 -05:00
Cameron Gutman
54e365a304 Fix video buffer pool usage. 2013-11-10 03:29:44 -05:00
Cameron Gutman
d5665ac318 Fix decoding of misaligned start sequences. 2013-11-10 02:53:51 -05:00
Cameron Gutman
c631649867 Fix order of initialization of streams. 2013-11-10 02:53:19 -05:00
Cameron Gutman
0a445b9add Properly terminate threads when the game activity exits. 2013-11-10 01:30:55 -05:00
Cameron Gutman
61ae83337c Remove useless code. 2013-11-10 01:28:19 -05:00
Cameron Gutman
47ea18b882 Fix the back button on the Xbox controller 2013-11-10 05:12:31 -05:00
Cameron Gutman
ab61af0cb7 Release decoded data back to the buffer pool 2013-11-10 03:58:48 -05:00
Cameron Gutman
34e87ca899 Rename AvBufferX -> AvByteBufferX and create AvShortBufferX 2013-11-10 03:42:29 -05:00
Cameron Gutman
62a9040cb8 Add a Opus decoder JNI library. Write an audio depacketizer. Audio works! 2013-11-10 03:27:21 -05:00