Commit Graph

1480 Commits

Author SHA1 Message Date
Geoffrey McRae
1f1c9dfa59 [egl] don't re-create the buffer each frame 2018-09-23 16:56:09 +10:00
Geoffrey McRae
0903b4a610 [egl] make new OpenGL ES renderer available
Note that this renderer is incomplete at this time as it doesn't
render the cursor.
2018-09-23 16:04:20 +10:00
Geoffrey McRae
884ad6557b [egl] cleanup texture API 2018-09-23 15:56:47 +10:00
Geoffrey McRae
00658f3d64 [egl] split out texture code into it's own object 2018-09-23 15:48:44 +10:00
Geoffrey McRae
fff3ec30b8 [egl] added basic shaders and use dma to xfer buffer to the gpu 2018-09-22 18:00:52 +10:00
Geoffrey McRae
26434f7baf [egl] initial commit of new modern OpenGL ES renderer 2018-09-22 16:26:55 +10:00
Andy Chun
f75e2fe8db Default XDG_SESSION_TYPE to unspecified
Minimal systems in cases may not have XDG_SESSION_TYPE set at all, causing the program to segfault at the `strcmp`. This commit sets XDG_SESSION_TYPE to `unspecified` (according to https://www.freedesktop.org/software/systemd/man/pam_systemd.html) if it is not defined in the environment.
2018-08-03 10:02:54 +10:00
Yvan da Silva
0674e04597 Corrects an error in a debug message
* This happened during the last edit.
2018-07-30 08:07:53 +10:00
Yvan da Silva
29f1d6cd42 [client] Adds back support for wayland
* Since LG is now using SDL2, the SDL_VIDEODRIVER must be set.
* This fixes SDL error 'Couldn't find matching GLX visual' when creating the window.
2018-07-30 08:07:53 +10:00
Geoffrey McRae
83592f7e4a [client] cleanup of renderer API for better usage
* Added new on_render_start for render initialization
* Changed on_resize to execute inside the render thread
2018-07-28 14:49:37 +10:00
Geoffrey McRae
13cd50f92c [client] disable multisample after logo is gone
We only use multisample to smooth out the edges of the LG logo, it is
pointless to leave it on after the logo is gone.
2018-07-28 10:36:41 +10:00
Geoffrey McRae
a989914fef [host] remove the invalid usage of SafeRelease
SafeRelease was really useless, derefencing the smart pointers through
the use of & releases the value before SafeRelease get's to it. Instead
either allow the destructor to handle it's release, or explicityly
release it by assigning NULL
2018-07-28 10:27:50 +10:00
Geoffrey McRae
f692284f27 [host] don't uselessly try to scale 1:1 textures 2018-07-28 10:27:50 +10:00
Geoffrey McRae
05bd587c74 [client] implemented initial slow yuv420 support 2018-07-28 08:41:39 +10:00
Geoffrey McRae
d292d46fcb [host] correct YUV output, do not copy padding bytes 2018-07-28 07:48:10 +10:00
Geoffrey McRae
b899a65726 [host] correct RGBtoYUV shader output 2018-07-28 07:47:49 +10:00
Geoffrey McRae
63b4dd633c [host] correct invalid copy size for U & V planes 2018-07-28 07:25:00 +10:00
Geoffrey McRae
eba99f6968 [host] fix compiler warnings 2018-07-28 06:29:34 +10:00
Geoffrey McRae
354bef94ee [host] fixed project Release shader build 2018-07-28 06:25:41 +10:00
Geoffrey McRae
e515cdc8dd [host] added YUV420 output support 2018-07-28 06:19:59 +10:00
Geoffrey McRae
2a03d1c4a9 [host] removed unused shader view 2018-07-28 06:19:59 +10:00
Geoffrey McRae
3e3c409fc4 [host] ignore compiled shader headers 2018-07-28 06:19:59 +10:00
Geoffrey McRae
62e3dd250b [host] remove compiled shader headers from repo 2018-07-28 06:19:59 +10:00
Geoffrey McRae
3799929f59 [host] remove the depth buffer, it's unused 2018-07-28 06:19:59 +10:00
Geoffrey McRae
2019766989 [host] added format converter class 2018-07-28 06:19:58 +10:00
Geoffrey McRae
58c3b37e49 [h264] cosmetics 2018-07-28 06:19:58 +10:00
Geoffrey McRae
c650c2e474 [dxgi/h264] fix failure to re-init h264 correctly 2018-07-28 06:19:58 +10:00
Geoffrey McRae
ef336d552c [parser/nal] no need to check for null before free (fixes #87) 2018-07-26 06:09:12 +10:00
Geoffrey McRae
e4cdc58399 [host] move H264 out of DXGI into seperate class 2018-07-26 05:50:06 +10:00
Geoffrey McRae
48d3403c40 [memcpy] fix error caused by switch to shorter OPs 2018-07-26 05:49:24 +10:00
Geoffrey McRae
af143bdd82 [dxgi] update DXGI to use timeout return value 2018-07-26 03:09:59 +10:00
Geoffrey McRae
343983d9af [host] add timeout return value for repeated frame
This is to allow a repeat frame without incuring an additional
memory copy when the frame is already in shared memory.
2018-07-26 03:08:52 +10:00
Geoffrey McRae
5cabf155ab [host] flag paused when waiting for sec desktop 2018-07-24 01:12:24 +10:00
Geoffrey McRae
60070e6076 [client] implement stream paused alert 2018-07-24 01:09:53 +10:00
Geoffrey McRae
697dbc7a96 Updated README.md 2018-07-23 15:28:36 +10:00
Geoffrey McRae
43593d8aea [host] replaced MultiMemcpy with plain memcpySSE 2018-07-23 15:21:43 +10:00
Geoffrey McRae
1f90010cbd [client] add switch to disable alert messages, fixes #83 2018-07-20 01:09:51 +10:00
Geoffrey McRae
d839026ade [opengl] added fade out to wait screen 2018-07-20 01:01:16 +10:00
Geoffrey McRae
34de213926 [opengl] render alerts and fps on wait screen 2018-07-20 00:10:29 +10:00
Geoffrey McRae
b5ec4dd305 [client] scale up the logo and put a gradient behind it 2018-07-19 23:48:35 +10:00
Geoffrey McRae
023d3f811b [client] render the looking glass logo (almost) 2018-07-19 23:33:51 +10:00
Geoffrey McRae
53c32cc5a4 [client] enable multisampling 2018-07-19 23:33:26 +10:00
Geoffrey McRae
eb6ee8ea46 [client] allow window resize event's before startup 2018-07-19 23:32:42 +10:00
Geoffrey McRae
9f8c20c3e7 [common] no need to use AVX operands here either 2018-07-10 16:38:07 +10:00
Geoffrey McRae
a72ad4e46c [host] replaced use of AVX in memcpySSE
There is no need to use AVX instructions as we are not using the
wider registers. Removing their use removes the requirement to run
a AVX capable guest CPU.
2018-07-10 16:32:50 +10:00
williamvds
b19518a1f8 [client] Allow keyboard capture (#26) 2018-06-05 12:09:19 +10:00
Geoffrey McRae
8a9d0b0bfb [host] fix crash on screen blanking 2018-06-01 00:39:18 +10:00
Geoffrey McRae
14954cc426 [client] fix too early release of OpenGL context
Fixes a problem where resolution changes would require a restart of
the client
2018-05-31 18:54:29 +10:00
Geoffrey McRae
32dca9ea3f [client] only provide linker flags at link time 2018-05-31 18:54:10 +10:00
Geoffrey McRae
d4c41d2d94 [host] improve capture performance
Contrary to the MS documentation, benchmarking shows a substantial
increase in performance when releasing the captured frame as soon
as possible. This change makes it possible to achieve 60FPS at 4K
resolutions.
2018-05-31 18:53:11 +10:00