Commit graph

3278 commits

Author SHA1 Message Date
Mateo de Mayo 6de1ab8f8e d/euroc: Add euroc device 2021-09-15 19:03:55 +00:00
Mateo de Mayo 3c618ec20c d/euroc: Improve euroc player
- Implement xrt_slam_source instead of xrt_fs
- Merge intermediate sink pointers into xrt_slam_sinks in_sinks
- Add out_sinks for downstream passage of data
- Make speed playback option a double (float was not precise enough)
- Add use_source_ts playback option to optionally use original dataset timestamps
- Fix colored datasets not working
2021-09-15 19:03:55 +00:00
Mateo de Mayo 549c59a493 t/slam: Add SLAM tracking module 2021-09-15 19:03:55 +00:00
Mateo de Mayo 8e8a9c14a9 external: Add slam_tracker.hpp and SLAM build flow 2021-09-15 19:03:55 +00:00
Mateo de Mayo 73799268e6 meson: Look up for default opencv first
This makes the OpenCV dependency lookup behave in a more
similar way to what CMake is already doing.
2021-09-15 19:03:55 +00:00
Mateo de Mayo caa9192a26 xrt: Add xrt_tracked_slam interface 2021-09-15 19:03:55 +00:00
Mateo de Mayo cbc74bc9c1 xrt: Add stream_start alternative to xrt_fs for SLAM streaming 2021-09-15 19:03:55 +00:00
Mateo de Mayo 552c03bb2b xrt: Add SLAM sinks 2021-09-15 19:03:55 +00:00
Simon Zeni 144e71c87e ci: bump arch image 2021-09-15 18:44:18 +00:00
Simon Zeni 47be806428 c/main: Implement WINDOW_DIRECT_WAYLAND 2021-09-15 18:44:18 +00:00
Simon Zeni 26c684d42f aux/vk: Add VK_EXT_acquire_drm_display functions 2021-09-15 18:44:18 +00:00
Moses Turner 56f34d23b9 d/vive: Use m_relation history for HMD 2021-09-15 12:13:14 -05:00
Moses Turner 7f88583d37 d/survive: Use m_relation_history for HMD and controllers 2021-09-15 12:13:14 -05:00
Moses Turner f9d540aee0 d/rs: Use m_relation_history for 6DOF 2021-09-15 12:13:14 -05:00
Moses Turner 947bac9e54 aux/math: Implement m_relation_history
to keep track of past poses of HMDs, controllers, etc.
2021-09-15 12:13:14 -05:00
Moses Turner 7f69dc795f d/ht; aux/util: Move ringbuffer implementation into aux/util 2021-09-15 12:13:00 -05:00
Moses Turner 9960f0ab22 aux/math: Add tracing for m_predict 2021-09-15 12:13:00 -05:00
Jakob Bornecrantz 93506edd81 doc: Document !873 2021-09-14 18:36:34 +01:00
Jakob Bornecrantz c5c07eced2 c/render: Remove the hacks 2021-09-14 16:15:27 +00:00
Jakob Bornecrantz 5bff6f3c9b c/render: Add ATW support for compute rendering 2021-09-14 16:15:27 +00:00
Jakob Bornecrantz 3795004208 c/main: Add compute distortion rendering backend 2021-09-14 16:15:27 +00:00
Christoph Haag 02e6b7898c doc: Add documentation for implementing extensions 2021-09-14 13:44:40 +00:00
Moses Turner ee429ac279 d/ht: make blackbar work with non-square inputs 2021-09-14 14:09:03 +01:00
Jakob Bornecrantz cb7563ecd6 m/predict: Add C++ extern guards 2021-09-14 13:42:20 +01:00
Jakob Bornecrantz 608bb987d9 u/[rt|ft]: Adjust margins
This commit adds more margins to both the app and the compositor, with the
compute work this yeilds basically no frame misses for the compositor.
2021-09-13 21:50:20 +01:00
Jakob Bornecrantz dda80836c6 u/ft: Rename min_margin_ns to margin_ns 2021-09-13 21:49:31 +01:00
Jakob Bornecrantz 5192e82948 d/ht: Tidy includes 2021-09-13 21:47:05 +01:00
Jakob Bornecrantz 4cdfadf3e0 d/ht: Tidy view creation 2021-09-13 21:47:04 +01:00
Christoph Haag 79fe29f674 c/main: Use ns_to_ms helper for nominal frame interval 2021-09-13 21:28:10 +01:00
Christoph Haag fb6cf9b4cc st/oxr: Only advertise hand tracking funcs if compiled with ext 2021-09-13 21:28:01 +01:00
Christoph Haag 2b7e8d8dce st/oxr: Add ifdef for XR_EXT_hand_tracking 2021-09-13 21:27:58 +01:00
Christoph Haag d114b8bb34 st/oxr: Move XR_EXT_thermal_query #endif to the correct place 2021-09-13 21:27:54 +01:00
Mateo de Mayo d9482d0b76 u/var: Add f64 kind 2021-09-13 18:59:03 +01:00
Christoph Haag 83e194e9d3 comp: Wait for release/acquire fence before destroying swapchain
Fixes validation warning when quitting Vulkan OpenXR applications
like hello_xr -G Vulkan2:

VUID-vkDestroyImage-image-01000(ERROR / SPEC): msgNum: -221078694 - Validation Error: [ VUID-vkDestroyImage-image-01000 ] Object 0: handle = 0x55d4d96e4960, type = VK_OBJECT_TYPE_DEVICE; | MessageID = 0xf2d29b5a | Cannot call vkDestroyImage on VkImage 0xcb1c7c000000001b[] that is currently in use by a command buffer. The Vulkan spec states: All submitted commands that refer to image, either directly or via a VkImageView, must have completed execution (https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#VUID-vkDestroyImage-image-01000)
    Objects: 1
        [0] 0x55d4d96e4960, type: 3, name: NULL

This is an addition to commit 778515739f that
introduced this fence.
2021-09-07 11:51:03 +02:00
Christoph Haag cc53994b4f d/survive: Count ahead of time how many configs to wait for
On recent libsurvive versions, loading the config of the HMD takes quite
long when only a HMD is active without controllers.

Instead of adjusting the timeout value all the time, rework how we wait for
the device configs.

Previously we just waited for device configs to arrive until no new configs
arrive for a predefined timeout.
Now we count how many objects of interest libsurvive actually knows, and then
only wait until the configs for this many devices are loaded.

This should make initialization of the survive driver faster and more robust.
2021-09-04 02:35:59 +02:00
Jakob Bornecrantz 129902750d u/sink: Add conversion from L8 to R8G8B8 2021-09-03 22:16:21 +01:00
Moses Turner d7fc516cfb d/vive: Use hand tracking if VIVE_USE_HANDTRACKING is set 2021-09-03 21:06:18 +00:00
Moses Turner db4a50410c d/survive: Use hand tracking if there aren't any controllers
rebase-survive
2021-09-03 21:06:18 +00:00
Moses Turner 624a676f56 d/ht: Change everything 2021-09-03 21:06:18 +00:00
Moses Turner 8068912953 targets: Don't probe handtracking driver 2021-09-03 21:06:18 +00:00
Moses Turner c54cc23287 scripts: Add script to get hand tracking models 2021-09-03 21:06:18 +00:00
Moses Turner dd5cbee0bc meson: Add ONNX Runtime as a dependency for the handtracking driver 2021-09-03 21:06:18 +00:00
Moses Turner 4b5f4b9721 cmake: Add ONNX Runtime as a dependency for the handtracking driver
Co-authored-by: Ryan Pavlik <ryan.pavlik@collabora.com>

cmake-rebase
2021-09-03 21:06:18 +00:00
Moses Turner cef922946a aux/vive: Parse camera calibration 2021-09-03 21:06:18 +00:00
Moses Turner efbc4cd9e5 d/survive: Allow users to set wait time through config_v0.json
Necessary for Moses - for some reason, with no controllers, his headset takes forever to probe
2021-09-03 21:06:18 +00:00
Moses Turner a1b683385f aux/util: Add u_frame_clone 2021-09-03 21:06:18 +00:00
Moses Turner 815aa47ac2 d/vf: Add new format for stereo hand tracking 2021-09-03 21:06:18 +00:00
Christoph Haag 2609502150 aux/vk: Add and document tegra specific dedicated allocation workaround 2021-09-03 15:32:35 +00:00
Christoph Haag 4982a14541 aux/vk: Add Tegra detection 2021-09-03 15:32:35 +00:00
Christoph Haag e7d047f956 aux/vk: debug print preferred/required dedicated allocation 2021-09-03 15:32:35 +00:00