30 Commits

Author SHA1 Message Date
Cameron Gutman
12e34a9f4e Add the code back to request an IDR frame when switching back to Moonlight 2016-07-10 22:23:01 -07:00
Cameron Gutman
f243685990 Allow packet receiving to happen in parallel with video decoding by not using direct-submit 2016-06-09 13:33:31 -05:00
Cameron Gutman
69ba5a709b Flushing the decoder seems to hang when the software fallback is in use, so let the destructor abort callbacks instead 2016-06-09 13:25:18 -05:00
Cameron Gutman
6c13c9b67d Only show the NaCl plugin when a frame has been rendered 2016-06-09 13:22:27 -05:00
Cameron Gutman
1f3f4bd0aa Implement fallback to software when hardware decoding is unavailable 2016-06-09 12:23:23 -05:00
Cameron Gutman
d08d1f3132 Fix the GL error assert macro 2016-05-10 01:33:04 -04:00
Cameron Gutman
64d9f18c39 Unbind the graphics context when exiting the stream 2016-05-09 22:54:07 -04:00
Cameron Gutman
0d8f82a5f9 Revert "Clear the display when tearing down the decoder. This closes #50"
This reverts commit 68aecaeed5139c8d6ad4f4a0cda4b60bd3c1b94f.
2016-05-09 22:35:12 -04:00
Cameron Gutman
68aecaeed5 Clear the display when tearing down the decoder. This closes #50 2016-05-09 17:02:16 -04:00
Cameron Gutman
f0d974bb73 Add profiling code to the video renderer 2016-05-09 14:26:23 -04:00
Cameron Gutman
8817df3f58 Use direct submit mode for better performance at higher CPU load 2016-05-05 17:09:49 -04:00
Cameron Gutman
33a19a52f4 Use the same context attributes as the video_decode sample 2016-05-05 17:03:05 -04:00
Cameron Gutman
21dd55566e Decouple renderer from decoder and remove associated workarounds 2016-05-05 16:57:26 -04:00
Cameron Gutman
392c6f140a Clear the shaders after destroying them. This closes #22 2016-03-13 19:08:12 -05:00
Cameron Gutman
47ede93af0 Update common submodule 2016-03-03 21:15:48 -05:00
Cameron Gutman
abe66c7e21 Set some nicer Graphics3D context attributes to allow the GLES backend more flexibility when choosing a context 2016-02-26 17:20:10 -05:00
Cameron Gutman
e7b45e5b6c Set the graphics context size using the width and height of the stream instead of the initial size of the NaCl element. This closes issue #16 2016-02-25 22:48:22 -05:00
Cameron Gutman
24cf97b0ae Only draw frames that are newer than the last frame we drew 2016-02-24 13:55:35 -05:00
Cameron Gutman
36e76ed86d Use h264bitstream library to mixup the SPS so OS X will use hardware decoding 2016-02-21 15:57:45 -05:00
Cameron Gutman
83ba8a10bb Force hardware acceleration for video decoding so we can see clearly when it's not working 2016-02-20 22:54:16 -05:00
Cameron Gutman
88dc8623cd Send the SPS, PPS, and I-frame together to fix VideoToolbox hardware decoding on OS X. This closes #7 2016-02-20 22:28:58 -05:00
Cameron Gutman
5d25874131 Clear the decode queue on mouse lock or focus gain. This closes #5 2016-02-18 13:25:49 -05:00
Cameron Gutman
cf5b2ccbb4 Flush the decoder before deleting it 2016-02-18 12:04:17 -05:00
Cameron Gutman
441047db9b Use 4 slices per frame for increased software decoding performance 2016-02-18 02:18:59 -05:00
Cameron Gutman
f8fb94f5e2 Optimize the renderer by keeping state changes to a minimum, more explicitly initializing the GL context, and calling glClear once per frame 2016-02-17 00:32:18 -05:00
Cameron Gutman
fe0120ca16 Allow software decoding fallback for OS X 2016-02-16 12:33:33 -05:00
Cameron Gutman
f77979d904 Increase rendering performance significantly 2016-02-13 15:48:33 -05:00
Cameron Gutman
b7032a8957 Rendering is now working 2016-02-13 14:49:27 -05:00
Cameron Gutman
e67a841a3e Rendering WIP 2016-02-13 12:14:13 -05:00
Cameron Gutman
9a38318210 Video decoding is partially working 2016-02-13 09:12:41 -05:00