Commit graph

4248 commits

Author SHA1 Message Date
Jakob Bornecrantz b4f2bc88c8 cmake: Introduce XRT_HAVE_HIDAPI to make HIDAPI controllable 2022-03-28 22:35:01 +00:00
Christoph Haag 5d50be0164 aux/vk: Always use dedicated allocation on desktop
Fixes CTS on nvidia.

Example code given by the driver devs in the nvidia forums was
VkBool32 dedicatedAllocation = (memDedicatedReq.requiresDedicatedAllocation != VK_FALSE) ||
                               (memDedicatedReq.prefersDedicatedAllocation != VK_FALSE);

However on GTX 1080, nvidia 470.103 with

    ./conformance_cli "Timed Pipelined Frame Submission" -G Vulkan2

we are to create a VkImage with

  DEBUG [create_image] create_image: Use dedicated allocation: 0 (preferred: 0, required: 0)

doing so causes the VkFence wait in vk_submit_cmd_buffer to fail randomly with
either VK_TIMEOUT or VK_ERROR_DEVICE_LOST.

On AMD radv we are told to use dedicated allocation:

  DEBUG [create_image] create_image: Use dedicated allocation: 1 (preferred: 1, required: 1)
2022-03-28 23:16:05 +02:00
Christoph Haag 18376007f9 st/oxr: oxr_space type is now an enum
v2: Get rid of ref_space_type
2022-03-25 18:47:46 +00:00
Christoph Haag 543fbc38e2 st/oxr: Allow locating views in all spaces 2022-03-25 18:47:46 +00:00
Christoph Haag 6c9f1f4083 t/hand: Add meson build for mercury 2022-03-25 18:33:04 +00:00
Christoph Haag 02e5e7be4a st/oxr: Fix getting velocity next struct in xrLocateSpace
fixes 85a2abae
2022-03-25 15:36:14 +01:00
Moses Turner 870a2ce704 d/ht: support DepthAI cameras and Mercury hand tracking 2022-03-23 18:30:02 -05:00
Moses Turner 00be5d0551 Add Mercury grayscale hand tracking! 2022-03-23 18:30:02 -05:00
Antonio Ospite 28b53689f4 c/render: add comp_buffer_init_exportable helper to create exportable buffers
Some downstream user might want to use the very handy comp_buffer_init()
helper to create buffers, but the latter does not cover the case when
the buffer needs to be exportable for API interoperability.

Add a new comp_buffer_init_exportable() helper to cover that case, this
is done in a way that is not particularly invasive for existing users of
comp_buffer_init(), as all the logic about the exportability is handled
by the new function.
2022-03-23 21:38:22 +00:00
Moses Turner 8aba8cc601 Document !1120, !1135 and !1144 2022-03-23 16:12:44 -05:00
Moses Turner 9ea9d0babf t/hand: Correct old_rgb namespace 2022-03-23 20:56:15 +00:00
Moses Turner 912cc22c20 d/dai: Get ready to support fisheye cameras
Remove the #if 0 after the next depthai-core release.
2022-03-23 20:56:15 +00:00
Moses Turner 0a843eb20f d/dai: Translation is in cm but in m in Monado 2022-03-23 20:56:15 +00:00
Moses Turner 9417fe8d7f a/tracking: Support different numbers of calib parameters 2022-03-23 20:56:15 +00:00
Jakob Bornecrantz 83c8b1da86 u/sink: Make u_sink_create_format_converter support L8
Co-authored-by: Moses Turner <moses@collabora.com>
2022-03-23 20:56:15 +00:00
Moses Turner 8e0d9198c4 scripts: Add script to update hand-tracking models 2022-03-23 20:56:15 +00:00
Moses Turner e817a18cfd u/worker: Add #pragma once 2022-03-23 20:56:15 +00:00
Ryan Pavlik b807742107 cmake: More fixes for the Percetto module. 2022-03-23 14:04:19 -05:00
Ryan Pavlik 8bfb4b3d09 cmake: Update to handle newer Percetto cmake build details 2022-03-23 11:22:10 -05:00
Jakob Bornecrantz 074a0afc32 c/vk: Make it possible to request higher Vulkan version 2022-03-22 15:19:48 +00:00
Jakob Bornecrantz 8d660b6994 cmake: Make it possible to select SPIR-V version to target 2022-03-22 15:19:48 +00:00
Christoph Haag 6fdd8ab93a aux/config_json: Only check version for camera tracking config
Only the camera tracking config writes and uses the version field.

Unfortunately the tracking override config is written into the same json
object while not making use of the version field.
2022-03-22 12:35:01 +00:00
korejan d43c7ffa71 android: Support for using device's set display refresh rate
* Adds support for querying the device's currently set display refresh rate to
  be used for android driver on creation. Allowing for devices which support
  selecting other refresh rate modes beyond 60hz.
* Changes hardcoded sensor polling rate to now match refresh queried from the
  device.
2022-03-22 12:33:30 +00:00
Jakob Bornecrantz e2e65aa241 u/logging: Fix va_copy usage 2022-03-21 22:19:30 +00:00
Jakob Bornecrantz 15a5c64a15 doc: Add remote driver howto 2022-03-21 22:08:22 +00:00
Jakob Bornecrantz 4e4246866b st/gui: Use unique IDs instead of child windows 2022-03-21 13:14:19 +00:00
Moses Turner b3872e925f Switch real-time users of u_sink_queue to u_sink_simple_queue 2022-03-19 14:28:09 +00:00
Moses Turner 09da6e09dc u/sink: Add u_sink_simple_queue 2022-03-19 14:28:09 +00:00
Moses Turner 662b72e2f6 u/sink: Tiny refactor for queue 2022-03-19 14:28:09 +00:00
Connor Smith 703baa94fe Make app pacing more robust to variable composition->display times.
If the last returned display time shifts backwards slightly with respect to the
last sampled display time from the compositor, the next predicted display time
will not move forward by one frame. Adding half the display period to the
comparison makes the pacing robust to this case.
2022-03-19 00:57:41 +00:00
Jakob Bornecrantz 170fe0e5d9 aux/vk: Refactor out semaphore and native creation into a helper 2022-03-19 00:41:29 +00:00
Moses Turner b6e5c296f5 comp: Factor frame-timing helper out of comp_compositor
So that we can use it for readback and anything else
2022-03-18 19:00:28 -05:00
Moses Turner 8fe2a86886 st/gui: Add SW Ultrafast and SW Veryfast pipelines
Yes, I really need those. SW Fast is still the default.
2022-03-18 18:59:37 -05:00
Jakob Bornecrantz 29acdba23f aux/vk: Tidy get/import functions for native handles (NFC) 2022-03-18 23:20:20 +00:00
Jakob Bornecrantz 77ba132452 u/logging: Add u_log_set_sink implementation 2022-03-17 15:37:09 +00:00
Jakob Bornecrantz 6f10a20ce0 d/multi: Use xrt_device_get_tracked_pose function 2022-03-17 02:08:33 +00:00
Ryan Pavlik 36a540a764 ci: Bump tag on android container. 2022-03-16 20:29:50 +00:00
utzcoz 7df31ea159 ci: Keep Android build tools consistent with build.gradle
Signed-off-by: utzcoz <utzcoz@outlook.com>
2022-03-16 20:29:50 +00:00
Ryan Pavlik 0557eb205d ci: Try switching to "needs" instead to strict stages. 2022-03-16 20:29:50 +00:00
Ryan Pavlik e06e0c764d ci: Add java and Android SDK to our NDK builder 2022-03-16 20:29:50 +00:00
Ryan Pavlik 3c85fd3bed ci: Do gradle on the CI now too. 2022-03-16 20:29:50 +00:00
Ryan Pavlik 81eaf5c28c gradle: update NDK and build tools versions to be consistent. 2022-03-16 20:29:50 +00:00
Ryan Pavlik 4fb4d4d41c t/oxr_android: add licenses for gradlew
Only cherry-pick license part fart from origin commit.
2022-03-16 20:29:50 +00:00
utzcoz a12a9f6138 t/oxr_android: Add gradle wrapper with gradle 6.8.3
See https://developer.android.com/studio/releases/gradle-plugin to check
relationship between AGP and gradle version. Current project uses gradle
6.8.3, so this CL uses command `gradle wrapper --gradle-version 6.8.3`
to generate gradle wrapper.

This CL also remove ignore from .gitignore for gradle wrapper files. It
is very useful to build monado Android version with command:
`./gradlew :src:xrt:targets:openxr_android:build`

Signed-off-by: utzcoz <utzcoz@outlook.com>
2022-03-16 20:29:50 +00:00
Jakob Bornecrantz 71d9887b5b xrt: Tidy xrt_instance.h (NFC) 2022-03-16 15:46:14 +00:00
Moses Turner d2366b31dc d/multi: Correctly override the head pose in get_view_poses 2022-03-15 20:13:10 -05:00
Moses Turner e4805c07e2 d/rs: Tracking origin probably should have an identity pose 2022-03-15 20:13:10 -05:00
utzcoz b2ccc8419c t/oxr_android: Move import under license for openxr_android build.gradle
Signed-off-by: utzcoz <utzcoz@outlook.com>
2022-03-15 14:28:40 +00:00
utzcoz 45f1de0c53 t/oxr_android: Replace DisplayOverOtherAppsStatusFragment instead of adding
If we click button to enable DisplayOverOtherApps for monado, use
back button to com back to Launcher and hot-start monado app, the
disabled status fragment is not removed, and enabled status fraqgment is
added top on disabled status fragment, that causes text overlap.

This CL will use FragmentTransaction#replace instead of
FragmentTransaction#add to ensure there is only one
DisplayOverOtherAppsStatusFragment, and new status will replace old
status without any overlap.

Signed-off-by: utzcoz <utzcoz@outlook.com>
2022-03-15 14:28:40 +00:00
utzcoz b6e8801ea4 t/oxr_android: Replace full-name qualified with importing for build.gradle
Signed-off-by: utzcoz <utzcoz@outlook.com>
2022-03-15 14:28:40 +00:00