Christoph Haag
693aceb755
aux/vk: Add VK_EXT_display_control functions
2022-01-13 23:07:16 +01:00
Christoph Haag
ec64a856b4
aux/vk: Use VK_DEBUG instead of U_LOG for vk device ext selection
2022-01-13 23:07:01 +01:00
Christoph Haag
8e020fac2d
c/main: Add and enable VK_EXT_display_control optional device ext
2022-01-13 23:06:40 +01:00
Christoph Haag
b7d179b1b3
c/main: Add display surface counter optional vk instance ext
2022-01-13 23:06:15 +01:00
Christoph Haag
ce6339e237
c/main: Make more use of string list for device ext
2022-01-13 23:05:06 +01:00
Christoph Haag
171a3830b9
u/string_list: Add constructor from existing list
2022-01-13 23:04:17 +01:00
Christoph Haag
13e3db6128
aux/vk: Add vkEnumerateInstanceExtensionProperties
2022-01-13 23:03:38 +01:00
Christoph Haag
7174545ee8
aux/vk: remove duplication of vk_get_loader_functions functionality
2022-01-13 23:03:38 +01:00
Christoph Haag
20f265d9ae
u/string_list: Add contains function
2022-01-13 22:37:25 +01:00
Christoph Haag
07ddac523c
build: Build u_string_list with meson too
2022-01-13 22:37:25 +01:00
Christoph Haag
77f19161fb
aux/binding: extract monado_binding earlier from list
2022-01-13 14:16:20 +01:00
Jakob Bornecrantz
d8cce715da
u/bindings: Remove duplicate paths in by_length
2022-01-13 14:01:44 +01:00
Christoph Haag
435503f2c4
aux/bindings: Further cleanup, use object members for Component
...
instead of passing json data around
2022-01-13 14:01:44 +01:00
Christoph Haag
450eb182d0
aux/bindings: Minor refactor of generator scripts
2022-01-13 14:01:44 +01:00
Christoph Haag
7917110e1c
aux/bindings: Remove unnecessary pathgroup parameter
2022-01-12 23:03:30 +01:00
Christoph Haag
595ca11c68
aux/bindings: Don't generate invalid code for missing monado_binding
...
The closing } for a binding template was not written.
2022-01-12 23:03:30 +01:00
Christoph Haag
47801859e7
aux/bindings: Replace "feature" with "component"
2022-01-12 23:02:53 +01:00
Christoph Haag
a3cd52ae8f
aux/bindings: Actually generate code to convert xrt_input_name enum
2022-01-12 23:02:53 +01:00
Christoph Haag
153280607f
aux/bindings: Split function to convert input/output enums into two
...
xrt_input_name and xrt_output_name are actual different types.
2022-01-12 23:02:53 +01:00
Jarvis Huang
97100821d2
ipc/android: Add shutdown mechanism back
2022-01-05 14:59:39 +00:00
Jarvis Huang
6a61ed5695
ipc/android: Stop runtime service when no clients connected
2022-01-05 14:59:39 +00:00
Moses Turner
683dc4ea56
gui: add SLAM Stereo option to calibrate gui
2022-01-04 18:19:17 +00:00
Moses Turner
17034f0283
aux/tracking: assert on fisheye mat size for fisheye path
2022-01-04 18:19:17 +00:00
Mateo de Mayo
7e0d93e3fb
tests: Add tests for quatexpmap interface functions and minor changes in their docs
2021-12-22 12:16:27 -03:00
Mateo de Mayo
70576c2f02
t/slam: Implement basic prediction from last tracked poses
2021-12-21 11:43:17 +00:00
Mateo de Mayo
090e465dda
external: Add semver to slam_tracker (1.0.0) and pose timestamps
2021-12-21 11:43:17 +00:00
Mateo de Mayo
74e149159b
t/slam: Add SLAM_SUBMIT_FROM_START envvar
...
Useful for setups that need some tuning to their sensors before sending
data to a SLAM system.
Removes the submit_frames property from wmr_camera as this replaces it.
2021-12-21 11:43:17 +00:00
Mateo de Mayo
76d7729e4d
m/vec3: Add operator/ for scalar division
2021-12-21 11:43:17 +00:00
Mateo de Mayo
bcb4cd82cd
aux/math: Use dt in calculation of ang vel between quat diference
2021-12-21 11:43:17 +00:00
Mateo de Mayo
3e8a070e93
u/var: Add u_var_combo
2021-12-21 11:43:17 +00:00
Christoph Haag
8bbaf2a05b
a/tracking: Use #pragma message instead of #warning
...
Avoids warning
../src/xrt/auxiliary/tracking/t_tracker_slam.cpp:66:2: warning: #warning is a GCC extension
2021-12-14 13:51:16 +01:00
Mateo de Mayo
fe4f6c6eb0
misc: Improve wmr and euroc docs, fix ht memory leak, stride for cv::Mats
2021-12-12 13:13:18 -03:00
Mateo de Mayo
cd0342c8dc
aux/util: Add u_frame_create_roi
2021-12-12 13:12:42 -03:00
Mateo de Mayo
fa88ce5f3f
u/var: Add u16 var kind
2021-12-12 13:06:04 -03:00
Mateo de Mayo
471ca9530b
m/3dof: Add reset functionality
2021-12-12 13:06:04 -03:00
Moses Turner
749723f0ba
xrt: Remove xrt_view::display::{w|h}_meters
...
It is not used anywhere.
2021-12-10 21:27:15 -06:00
Ryan Pavlik
26e5f6eee7
a/math: Bring the C++ wrapper for relation_history up to parity.
...
Also add tests for it too.
2021-12-10 21:06:04 +00:00
Ryan Pavlik
ef4550c268
a/math: Add a "get latest" to relation history as well.
2021-12-10 21:06:04 +00:00
Ryan Pavlik
aff7079dca
a/math: Let relation history report its size
2021-12-10 21:06:04 +00:00
timongentzsch
ba353e276d
Bugfix in solving quadratic equation for FoV calculation
2021-12-10 18:08:50 +00:00
Ryan Pavlik
e5e8451a81
a/math: Update relation history to return something from push.
2021-12-09 13:44:12 -06:00
Mateo de Mayo
b29c4ee78f
u/json: Update macro signatures to fix MSVC builds
2021-12-08 15:35:54 +00:00
Ryan Pavlik
0b11ce3a27
a/vk: Add timeline semaphore to the list of optional features.
2021-12-08 00:54:12 +00:00
Ryan Pavlik
2af3798e44
a/vk: Fix typo in physical device feature chain
2021-12-08 00:54:12 +00:00
Jakob Bornecrantz
98982bd25b
a/math: Fix warning in math_matrix_2x2_multiply
2021-12-07 13:30:45 +00:00
Jakob Bornecrantz
6598217a01
u/vive: Correct Vive Pro model_name
...
Fixes #106
2021-12-06 19:43:49 +00:00
Jakob Bornecrantz
b621955873
a/vk: Put vendor extensions last
2021-12-06 17:25:09 +00:00
Jakob Bornecrantz
5289b081c5
a/vk: Check for VK_KHR_timeline_semaphore
2021-12-06 17:25:09 +00:00
Jakob Bornecrantz
0eca48ec2b
a/vk: Add all functions for VK_KHR_timeline_semaphore
2021-12-06 17:25:09 +00:00
Jakob Bornecrantz
7d529a3dfc
a/vk: Change script to make it clang-format friendly
2021-12-06 17:25:09 +00:00
Jakob Bornecrantz
94ad966e4d
a/vive: Also correctly error on unknown controller warnings
2021-12-06 11:44:33 +00:00
Jakob Bornecrantz
aace8ff62d
a/vive: Look for model_name correctly
2021-12-06 11:44:33 +00:00
Jakob Bornecrantz
a6b4e6a830
m/3dof: Show more in the variable tracker
2021-12-05 15:30:14 +00:00
Jan Schmidt
bb5aa35c00
a/math: Add math_matrix_3x3_identity()
...
Add an initialisation function to set a 3x3 matrix
to the identity matrix.
2021-12-05 00:06:05 +11:00
Jakob Bornecrantz
e21e28c455
u/vive: Be more verbose if we fail to parse model_[name|number]
2021-12-03 21:13:57 +00:00
Moses Turner
31f155acbd
cmake: make xrt-external-json public for aux_tracking
2021-12-03 19:22:57 +00:00
Jakob Bornecrantz
8c04bf1274
a/math: Add C++ RelationHistory interface class
2021-12-03 14:00:37 +00:00
Jakob Bornecrantz
efde7f185c
a/math: Put m_relation_history_get out argument last
2021-12-03 14:00:32 +00:00
Jakob Bornecrantz
ed48e6d47d
a/math: Constify in argument
2021-12-03 13:53:46 +00:00
Ryan Pavlik
2b64e5b965
a/math: Extend m_relation_history to pass the tests.
2021-12-03 13:53:46 +00:00
Ryan Pavlik
217dee2ce3
a/math: Add m_relation_history_result return from m_relation_history_get
2021-12-03 13:45:43 +00:00
Ryan Pavlik
01e3d9871c
a/math: Replace RH_DEBUG for relation history with better use of logging macros
2021-12-03 13:45:43 +00:00
Jarvis Huang
27550ffa39
aux/android: Looper trick for NativeActivity with app-glue
2021-12-02 09:40:36 -06:00
Mateo de Mayo
07bd614930
t/file: Extend calibration save/load interfaces with new v2 format
2021-12-02 11:27:42 -03:00
Mateo de Mayo
1483ec32c5
t/file: Implement json save/load for v2 calibration
2021-12-02 11:26:11 -03:00
Mateo de Mayo
31f71251e0
t/util: Add dump function for single camera calibration struct
2021-12-01 18:32:16 +00:00
Mateo de Mayo
1cc80f5476
t/slam: Use euroc recorder in slam tracker
2021-12-01 13:45:18 +00:00
Mateo de Mayo
91ecbdb7fb
t/euroc: Add euroc dataset recorder
2021-12-01 13:45:18 +00:00
Mateo de Mayo
e245f4e5a9
u/sink: Allow u_sink_queue to queue more than one frame
...
Passing max_size=1 gives a similar behaviour as before, although instead
of discarding the last enqueued frame, it just ignores the new frame.
2021-12-01 13:45:18 +00:00
Mateo de Mayo
33d360083f
external/slam: Update slam_tracker interface to support dynamic features
2021-11-30 10:01:33 -03:00
Moses Turner
8cde257817
aux/math: add vec3 overloads for scalar multiplication
2021-11-29 23:23:57 -06:00
Jakob Bornecrantz
3f98ea5595
xrt: Tidy s/ll/log_level/g
...
Also make sure all variable logging uses the right type for logging variables.
2021-11-22 14:29:10 -06:00
Ryan Pavlik
27a8ec675b
a/util: Add utility for lists of strings, like extension lists.
2021-11-20 17:21:02 +00:00
Jan Schmidt
760e8dd3ad
meson: Add GStreamer recording support
2021-11-19 04:05:40 +11:00
Ryan Pavlik
2e323add6f
drivers: Migrate num_ to _count
2021-11-13 12:04:38 +00:00
Ryan Pavlik
dfa0aba496
aux: Migrate num_ to _count
2021-11-13 12:04:38 +00:00
Ryan Pavlik
469b9d907d
st/oxr: Rename all num_ in the state tracker, too.
2021-11-13 12:04:38 +00:00
Ryan Pavlik
33c0287f8b
xrt: Rename all "num" parameters and fields to "count" (or "capacity" as appropriate)
...
This matches the OpenXR usage: the array is the plural of the element type,
and the count is the singular element type plus "count" (usually CountOutput
because of the two-call idiom)
Includes fixes to other code to match API changes.
2021-11-13 12:04:38 +00:00
Mateo de Mayo
b94b7d1f52
u/json: Implement C++ wrapper for cJSON
2021-11-12 15:33:06 -03:00
Mateo de Mayo
87a1198b0a
misc: Address compilation warnings and fix u_json_get_bool
2021-11-12 15:33:06 -03:00
Ryan Pavlik
cc4007a69e
cmake: Substantial cleanups and simplifications
...
We now have a cmake-format config file.
We no longer use list variables for sources, instead using
target_sources when we need to add, in accordance with current
best practice. (This makes it a lot easier to edit too.) There's no more
include_directories(), add_definitions(), or other gently-deprecated
directory-scoped commands, nor any CMake scripts that include
a parent directory reference (named targets instead)
2021-11-12 09:48:37 -06:00
Jakob Bornecrantz
62ca16c70e
a/math: Make sure it's safe to pass in the result as either left or right
2021-11-12 10:27:54 +00:00
Jakob Bornecrantz
e8b0ab3b35
aux/vk: Add many more helper functions
2021-11-10 14:22:28 +00:00
Ryan Pavlik
35d7e85266
a/vk: Return of the justification and function rename
2021-11-09 15:36:24 -06:00
Ryan Pavlik
b816c08141
a/vk: Add to the file comments mentioning the script.
2021-11-09 11:05:15 -06:00
Ryan Pavlik
8a56046c1d
a/vk: Also generate the extension list/checking
2021-11-09 11:05:15 -06:00
Ryan Pavlik
9fc992d540
a/vk: Normalize member names in extensions
2021-11-09 11:05:15 -06:00
Ryan Pavlik
01c02897dc
a/vk: Update vulkan files: generate from script
2021-11-09 11:05:15 -06:00
Jakob Bornecrantz
a081bacc5d
aux/vk: Guard vkSignalSemaphore with VK_KHR_timeline_semaphore
2021-11-08 17:36:58 +00:00
Jakob Bornecrantz
4c4e30d875
aux/vk: Add more functions
2021-11-08 17:21:31 +00:00
Ryan Pavlik
15c8414155
cmake: Un-nest a conditional
2021-11-04 15:36:58 +00:00
Ryan Pavlik
85dab57936
a/util: Fix some it's vs its
2021-11-03 17:28:41 -05:00
Ryan Pavlik
334bd83619
a/tracking: Fix some it's vs its and other minor doc tweaks
2021-11-03 17:27:36 -05:00
Ryan Pavlik
f4b61d9e41
a/os: Fix some it's vs its.
2021-11-03 17:24:17 -05:00
Ryan Pavlik
a6ae6eb095
a/math: Fix some it's vs its.
2021-11-03 17:23:51 -05:00
Ryan Pavlik
86c7a27156
a/tracking: Fix doxygen warnings about invalid link requests
2021-11-03 17:13:38 -05:00
Mateo de Mayo
773eccad6c
docs: Move some driver entities into @addtogroup and other NFC
2021-10-28 11:40:49 +00:00
Mateo de Mayo
891842cb51
os: Change os_nanosleep parameter to int64_t
2021-10-28 11:40:49 +00:00
Jarvis Huang
c635375dc7
aux/android: Remove unused header file
2021-10-27 13:44:20 +00:00
Jarvis Huang
210a6908cd
ipc/android: Avoid deadlock on Android
2021-10-27 13:44:20 +00:00
Moses Turner
0dee9094b3
aux/math: encourage people to use normalized inputs to math_quat_from_plus_x_z
2021-10-26 10:56:41 +00:00
Ryan Pavlik
4ae1a1753c
util: Fix typo
2021-10-19 16:11:34 -05:00
Ryan Pavlik
d4d6a1a73f
util: Fix some truncation warnings, mostly by explicitly casting
2021-10-19 16:11:34 -05:00
Ryan Pavlik
5f8cb4e227
a/math: Fix some truncation warnings.
2021-10-19 15:31:29 -05:00
Ryan Pavlik
c47463b4eb
aux/util: Fix log message formatting on Windows.
2021-10-15 15:05:34 -05:00
Ryan Pavlik
c40553580d
util: Fix copyright typo.
2021-10-15 14:55:12 -05:00
Ryan Pavlik
d6177777e5
os: Fix os_nanosleep on Windows.
2021-10-15 13:05:18 -05:00
Ryan Pavlik
3351ef5396
os: Add new thread helper methods
2021-10-15 13:05:18 -05:00
Ryan Pavlik
793a7d659d
os: Improve docs for thread helper.
2021-10-15 11:57:44 -05:00
Jakob Bornecrantz
580a2f6fff
u/sink: Add u_sink_combiner helper to combine frames to stereo frames
2021-10-09 22:28:11 +01:00
Jakob Bornecrantz
e8f7f2de0a
t/util: Add function to dump a stereo camera calibration
2021-10-09 22:28:11 +01:00
Mateo de Mayo
9b21b7d36c
t/slam: Use debug assertions and ensure timestamps come in order
2021-10-06 16:41:18 -03:00
Mateo de Mayo
67a5946778
xrt: Add units to xrt_imu_sample fields
...
After using the structure a bit more, and realizing that while different components
sometimes use different units, it is easier to force them to send the imu_samples
in a standardized unit.
2021-10-06 16:41:18 -03:00
Mateo de Mayo
5845155229
xrt: Use doubles in xrt_vec3_f64
2021-10-06 15:23:28 -03:00
Moses Turner
e134b24f8f
u/var: Add u_var_draggable_f32
2021-10-02 23:05:35 +01:00
Moses Turner
5efdea78da
aux/gst: Expose function to get offset from global time to video timestamp
2021-10-02 23:05:26 +01:00
Ryan Pavlik
37c5eee02a
a/math: Refactor one euro filter code
2021-10-02 23:05:22 +01:00
Moses Turner
52f1ce14ca
aux/math: Add m_vec2_lerp
2021-10-02 23:05:19 +01:00
Jakob Bornecrantz
73d631c775
cmake: Make math depend on util
...
This fixes the build when tracing is enabled.
2021-09-29 21:38:33 +00:00
Jakob Bornecrantz
6f66ada6d9
u/vive: Remove old code and tidy camera calibration extraction
2021-09-29 20:48:54 +00:00
Jakob Bornecrantz
08721858dc
u/vive: Compare calibration solutions
2021-09-29 20:48:54 +00:00
Jakob Bornecrantz
4430dbe5d5
u/vive: Rework how calibration is extracted
2021-09-29 20:48:54 +00:00
Jakob Bornecrantz
a15e37587b
u/vive: Add more camera fields
2021-09-29 20:48:54 +00:00
Mateo de Mayo
f88befbdbc
t/slam: Replace assertion with return -1 if SLAM_CONFIG is not provided
2021-09-28 16:06:52 -03:00
Mateo de Mayo
debdb11e02
t/slam: Miscelaneous NFC changes
...
- Use @todo instead of TODO for doxygen
- Improve the slam_tracker interface documentation
- Move euroc functions declared by macros into extern C
2021-09-28 12:49:36 +00:00
Mateo de Mayo
1a5af03111
t/slam: Move pose corrections into the tracked devices
...
This discards the pose correction logic used that was for the D455 not for
an euroc dataset. It will be reintroduced in a later commit with an
appropriate device.
2021-09-28 12:49:36 +00:00
Moses Turner
1c99e8edb5
meson: add option for tracing; align messages
2021-09-28 12:41:01 +00:00
Mateo de Mayo
d61a695f13
meson: Allow percetto to be used with meson
...
You may need to specify --libdir=$installdir/lib when installing percetto,
otherwise it gets installed on $installdir/lib/x86_64-linux-gnu by default and
meson might not look for the appropriate pkgconfig in there.
2021-09-28 12:41:01 +00:00
quic_zhibinw
f9d0bfb80a
aux/vk: Apply the protected content flag if app pass it when create swapchain
2021-09-28 15:33:15 +08:00
Ryan Pavlik
995866a576
cmake: Improve use of percetto
2021-09-27 09:26:15 -05:00
Jakob Bornecrantz
de283a8b0c
t/calibration: Add support for findChessboardCornersSB
2021-09-20 15:54:00 +00:00
Jakob Bornecrantz
d86adce39d
u/historybuf: Tidy code and work around clang-format CI troubles
2021-09-20 15:54:00 +00:00
Ryan Pavlik
a10a4ab123
a/math: Fix truncation warning due to double literal in float parameter.
2021-09-20 10:06:33 -05:00
Ryan Pavlik
967efb4a12
a/os: SetWaitableTimer wants durations in hundreds of ns.
2021-09-20 09:25:31 -05:00
Jakob Bornecrantz
b4ce66a5dc
u/var: Remove sink variable tracking
2021-09-17 15:27:23 +01:00
Jakob Bornecrantz
0157b2d4b0
t/debug: Update HelperDebugSink to use new u_debug_sink
2021-09-17 13:39:50 +01:00
Jakob Bornecrantz
2404257077
t/hsv: Switch to u_sink_debug
2021-09-17 13:39:50 +01:00
Jakob Bornecrantz
b8055eba6a
u/var: Add u_sink_debug
2021-09-17 13:01:02 +01:00
Jakob Bornecrantz
da628514d8
u/sink: Add u_sink_debug struct helper
2021-09-17 13:01:02 +01:00
Christoph Haag
a3b453dae7
t/slam: Print an error when SLAM_CONFIG is not set
...
Fixes crash
terminate called after throwing an instance of 'std::logic_error'
what(): basic_string::_M_construct null not valid
2021-09-16 23:33:05 +02:00
Christoph Haag
ec5b5f9e1d
t/slam: Only warn for incompatible OpenCV
2021-09-16 23:33:05 +02:00
Mateo de Mayo
549c59a493
t/slam: Add SLAM tracking module
2021-09-15 19:03:55 +00:00
Simon Zeni
26c684d42f
aux/vk: Add VK_EXT_acquire_drm_display functions
2021-09-15 18:44:18 +00: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
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
Mateo de Mayo
d9482d0b76
u/var: Add f64 kind
2021-09-13 18:59:03 +01:00
Jakob Bornecrantz
129902750d
u/sink: Add conversion from L8 to R8G8B8
2021-09-03 22:16:21 +01:00
Moses Turner
cef922946a
aux/vive: Parse camera calibration
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
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
Christoph Haag
7dcd420df8
aux/vk: Add VK_FORMAT_R16G16B16A16_UNORM to vk_color_format_string
2021-09-03 15:32:35 +00:00
Jakob Bornecrantz
3bab14fa3b
t/psmv: Fix misconception with disparity transform
2021-09-01 22:00:46 +01:00
Mateo de Mayo
de3bfc193d
u/var: Add button and u64 var kinds
...
Also: fix on_ff_vec3_var
2021-08-27 13:02:18 +00:00
Jakob Bornecrantz
8b8891f60f
u/sink: Make sure to add deinterleaver sink to context
2021-08-23 20:25:52 +01:00
Jakob Bornecrantz
c83dc7b323
u/sink: Make sure to add split sink to context
2021-08-23 20:25:08 +01:00
Jakob Bornecrantz
a8251815af
t/framemat: Update confusing comments, sorry.
2021-08-23 19:42:45 +01:00
Christoph Haag
602ce70a0a
aux/vk: Only use dedicated allocation when it is required
...
On tegra, when VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT is set for color image usage
with VK_FORMAT_R16G16B16A16_SFLOAT, dedicated allocation is preferred, but not required.
When using dedicated allocation in this case, we get only a black texture,
and when blitting from that texture, we get a kernel driver error:
gk20a_fifo_handle_mmu_fault_locked:1721 [ERR] fake mmu fault on engine 0, engine subid 1 (hub), client 1 (ce0), addr 0x46cd8aa000, type 15 (poisoned), access_type 0x00000000,inst_ptr 0x212ef3000
Only using dedicated allocation when it is required works around this issue.
2021-08-23 13:01:05 +00:00
Jakob Bornecrantz
49e6514a3d
u/sink: Make sure to free frame when we fail to decode
2021-08-20 18:55:21 +01:00
Jakob Bornecrantz
022bf18200
u/sink: Make sure to add quirk sink to context
2021-08-20 17:14:43 +01:00
Jakob Bornecrantz
a89c8309c7
u/vive: Pass in logging level to parse function
2021-08-20 13:42:11 +01:00
Jakob Bornecrantz
00aca14832
u/vive: Add vive_config_teardown function to free any pointers that needs freeing.
2021-08-20 13:42:11 +01:00
Moses Turner
6e5efc850e
aux/math: Add euro filtering
2021-08-18 18:56:10 +00:00
Jakob Bornecrantz
05c61511ab
m/vec2: Add a few more scalar functions
2021-08-17 12:04:49 +01:00
Jakob Bornecrantz
70ceabb56e
m/mat4: Add Matrix 4x4 f64 functions
2021-08-17 12:04:49 +01:00
Moses Turner
13f2b3b7c4
aux/util: Add get_vec3_f64_array
2021-08-16 21:02:27 +01:00
Moses Turner
0b2dd35b60
aux/os: Add os_mutex_trylock
2021-08-16 21:02:27 +01:00
Moses Turner
7356100696
aux/math: Add m_vec3_project, m_vec3_orthonormalize, m_vec3_lerp, m_vec2_normalize, math_lerp
2021-08-16 21:02:27 +01:00
Christoph Haag
32d09aadc3
aux/vk: Add vkGetFenceStatus function
2021-08-16 15:37:29 +02:00
Christoph Haag
1b179306dc
comp: Only use dedicated allocation when supported/preferred
...
Fixes OpenGL depth formats on Tegra
2021-08-09 15:17:25 +02:00
Christoph Haag
b4145a1543
aux/vk: Print all used device extensions in XRT_LOG=trace
2021-08-09 15:15:57 +02:00
Moses Turner
e8e977faa2
inc/xrt, aux/bindings: fix typo XRT_OUTPUT_NAME_XBOX_HAPTIC_RIGHTT -> XRT_OUTPUT_NAME_XBOX_HAPTIC_RIGHT
2021-07-29 20:45:05 +00:00
humbletim
0b36586fe7
add 'Vive MV.' model_number variant
2021-07-27 20:02:33 -04:00
Christoph Haag
c6b5c5322c
aux/vk: Print info for setting CAP_SYS_NICE
2021-07-15 16:35:06 +00:00
Christoph Haag
c676020bdb
aux/vk: Add VK_ERROR_NOT_PERMITTED_EXT error code string
2021-07-15 16:35:06 +00:00
Christoph Haag
82140ea83b
aux/vk: Print vkCreateDevice error num too
2021-07-15 16:35:06 +00:00
Jakob Bornecrantz
cb9ce8b34e
t/calibration: Add support for RGB images
2021-07-13 15:01:00 +00:00
Jakob Bornecrantz
dbb6b1f43c
t/calibration: Make it possible to select number distortion parameters
2021-07-13 15:01:00 +00:00
Jakob Bornecrantz
9aff6fb9b3
u/sink: Add special converter sink that passes through YUV, L8 and RGB
2021-07-13 15:01:00 +00:00
Jakob Bornecrantz
c278618ec1
t/hsv: Add tracing support
2021-07-09 21:38:02 +01:00
Jakob Bornecrantz
cdf30b00e1
u/sink: Add tracing support
2021-07-09 21:36:57 +01:00
Jakob Bornecrantz
e04decbe64
u/trace_marker: Add sink category
2021-07-09 19:19:50 +01:00
Jakob Bornecrantz
5838d737b3
u/sink: Tidy and add some comments to queue sink (NFC)
2021-06-27 00:59:24 +00:00
Dan Weatherford
fabf01ff39
aux/math: Add math_quat_slerp()
2021-06-25 17:40:07 +01:00
Jan Schmidt
4581a7a9a6
aux/math: Implement math_matrix_3x3_inverse.
...
Add a function to invert 3x3 matrices, to reverse 2D
affine transforms.
2021-06-25 17:40:07 +01:00
Moses Turner
93ec678110
aux/util: Add North Star "VIPD" and "polynomial 2D" distortion methods
2021-06-21 12:29:31 -05:00
Moses Turner
017997fba3
aux/math: Add math_map_ranges function
2021-06-21 12:29:31 -05:00
Moses Turner
01bfed1694
aux/util: Make new u_extents_2d as alternative to u_device_simple_info
2021-06-21 14:49:35 +00:00
Ryan Pavlik
ad44f42b24
aux/vk: Add fence import for windows
2021-06-15 17:37:14 -05:00
Jakob Bornecrantz
8a7d857dde
aux/vk: Add the option to handle optional device features
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
4bbc13f5d4
aux/vk: Add support for VK_EXT_robustness2 and tidy
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
bf27691280
aux/vk: Refactor out optional extension handling
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
57d24ecdbb
aux/vk: Make it possible to get a compute only queue
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
c42d681db0
aux/vk: Add vkCmdCopyBufferToImage and vkCmdCopyImageToBuffer
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
8899b267a6
aux/vk: Add vkCmdDispatch, vkCreateComputePipelines and vkResetDescriptorPool functions
2021-06-15 19:45:14 +00:00
Jakob Bornecrantz
aa3f071d2b
u/trace_marker: Refactor init to fix bug
2021-06-14 19:12:14 +01:00
Jakob Bornecrantz
c2c49cb6d3
u/trace_marker: Make sure to include headers outside of extern block
2021-06-14 19:12:12 +01:00
Jakob Bornecrantz
b7b469089c
t/fm: Add simple FrameMat that wraps a cv::Mat
2021-05-31 13:43:19 +00:00
Jakob Bornecrantz
855cdb4c29
aux/vk: Tidy code (NFC)
2021-05-18 03:48:50 +01:00
Moses Turner
36bc45b686
util: make sure u_config_json.file_loaded is false if we didn't load the file
2021-05-18 01:22:39 +00:00
Christoph Haag
82d9ed75c2
aux/vk: Check that native handles are importable
2021-05-18 03:01:44 +02:00
zhibinw
92565b7f21
ipc/android: support create surface from runtime.
2021-05-17 16:20:29 +00:00
Moses Turner
4ff7fb74ff
aux/util: only do tracing things if XRT_FEATURE_TRACING is enabled
2021-05-10 10:10:18 -05:00
Jakob Bornecrantz
b3455555c2
u/trace_marker: Use Percetto/Perfetto for tracing
2021-05-05 17:00:35 +01:00
Ryan Pavlik
b6f440fa26
aux/tracking: Move general docs to a separate header.
2021-05-04 11:21:46 -05:00
Ryan Pavlik
77baa8b7e6
aux/android: Move code into official namespaces
2021-05-04 11:21:46 -05:00
Ryan Pavlik
265c49d337
a/math: Move functionality into official namespaces.
2021-05-04 11:04:32 -05:00
Ryan Pavlik
2ae3ce883d
a/util: Namespace documentation
2021-05-04 11:04:32 -05:00
Ryan Pavlik
d88aefafbc
a/tracking: Migrate C++ APIs to the official namespaces now that we have some.
2021-05-04 10:34:43 -05:00
Ryan Pavlik
a66f567392
aux/android: Remove unused include
2021-04-30 17:57:50 -05:00
Ryan Pavlik
cf2abe7d88
u/process: Fix a warning by marking a function as maybe unused.
2021-04-30 17:57:50 -05:00
Ryan Pavlik
125b0799a3
aux/android: Update wrappers
2021-04-30 17:57:50 -05:00
Ryan Pavlik
45c0ca2ef9
aux/android: Expose native pointer from MonadoView
2021-04-30 17:34:21 -05:00
Ryan Pavlik
faa753c667
android: Annotation, docs, and formatting improvements for MonadoView
2021-04-30 17:34:21 -05:00
Ryan Pavlik
e4f2ac3286
android: Revise MonadoView so it doesn't require an Activity.
2021-04-30 17:34:21 -05:00
Ryan Pavlik
417de87cb2
a/util: Add a generic callbacks collection.
...
Based on the work for the Android surface callbacks,
just finished being made generic since we'll need to reuse it.
2021-04-30 17:34:21 -05:00
Ryan Pavlik
e82fafb186
cmake: Allow C++17 mode on all platforms, all modules.
...
Remove per-module C++17 settings.
2021-04-30 15:37:04 -05:00
Ryan Pavlik
23c73e145b
a/util: Make JSON reading more robust.
...
We were missing some null checks.
2021-04-28 21:13:34 +00:00
Ryan Pavlik
cfbb81cb71
a/util: Add schema directive to json before writing.
2021-04-28 21:13:34 +00:00
Jakob Bornecrantz
5befa76f42
m/3dof: Add manual way to set the gyro bias
2021-04-28 12:25:53 +00:00
Ryan Pavlik
8af1bfbf8c
a/u_logging: Docs for logging.
2021-04-27 22:05:00 +00:00
Ryan Pavlik
2c382734ca
a/bindings: Clean up formatting of script
2021-04-27 16:43:38 -05:00
Ryan Pavlik
d8cf72f6d9
a/bindings: Simplify as suggested by IDE
2021-04-27 16:43:38 -05:00
Ryan Pavlik
5a7412e86d
a/bindings: Fix typos
2021-04-27 16:43:38 -05:00
Ryan Pavlik
4dd96a666b
u/ht: Const-correctness
2021-04-26 22:38:42 +00:00
Ryan Pavlik
bc279076b8
u/ht: Port to new unit-vector defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
a80d159b07
t/ht: Port to using unit-vector defines.
2021-04-26 22:38:42 +00:00
Ryan Pavlik
6f46fcc251
aux/vive: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
20053252aa
m/space: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
cb8925ae04
u/ht: Port to using new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
edc6490d74
a/math: Port to using the new zero/identity defines
2021-04-26 22:38:42 +00:00
Ryan Pavlik
2adbde4673
a/util: Add u_device_get_view_pose helper function.
...
I saw many, many exact copies of this function in the code: good to de-duplicate them.
2021-04-26 22:38:42 +00:00
Jakob Bornecrantz
8c26be37ae
u/ft: Warn when missing frames
2021-04-26 22:55:41 +01:00
Boris-Chengbiao Zhou
d05aa9a458
aux/vk: Extend the correct structure for VK_EXT_global_priority
2021-04-24 17:50:18 +02:00
Jakob Bornecrantz
0058525457
util: Depend on bindings
2021-04-19 14:26:51 +01:00
Christoph Haag
471b876725
u_config_json: Load tracking override pose input name
2021-04-19 12:53:47 +02:00
Christoph Haag
664c103a3e
u_config_json: Store tracking override pose input name
2021-04-19 12:53:47 +02:00
Christoph Haag
fa79451858
build/cmake: link generated bindings to aux_util
2021-04-19 12:53:47 +02:00
Christoph Haag
e9eba9a2b4
aux/bindings: Generate char* <-> enum for all used inputs
2021-04-19 12:53:14 +02:00
Christoph Haag
4ea68b89a4
xrt: Add u_process, backed by libbsd's pidfile
...
Delete stale ipc files in ipc server when not already running.
If built without libbsd, fall back to previous behavior of complaining about existing ipc files and exit.
2021-04-15 21:42:06 +00:00
Christoph Haag
c92bc0a704
xrt: Add u_file_get_runtime_dir() and u_file_get_path_in_runtime_dir()
...
Analog to u_file_get_path_in_config_dir.
2021-04-15 21:42:06 +00:00
Jakob Bornecrantz
26756cc52d
aux/vk: Fix use free of stack variable and use correct return
2021-04-15 17:38:03 +01:00
Jakob Bornecrantz
05f14461a3
t/psvr: Fix warning
2021-04-15 17:38:01 +01:00
Jakob Bornecrantz
898bf15a08
u/tf: Use new trace marker helpers
2021-04-14 01:55:59 +00:00
Jakob Bornecrantz
c750447add
u/trace_marker: Add render timing support
2021-04-14 01:55:59 +00:00
Jakob Bornecrantz
52d1c4d834
u/trace_marker: Add json writing helpers
2021-04-14 01:55:59 +00:00
Jakob Bornecrantz
f82f289907
u/rt: Also print what kind of point we are marking when tracing
2021-04-13 16:56:17 +00:00
Ryan Pavlik
701ea290d0
os: Fix comment typo.
2021-04-13 11:46:53 -05:00
Ryan Pavlik
65a7b490a8
android: Add support for casting Context to Activity
2021-04-13 11:46:53 -05:00
Jakob Bornecrantz
1b51cbd1a7
aux/vk: Add support for VK_EXT_global_priority
2021-04-12 22:16:31 +00:00
iVRy VR
0064989e8b
t/psvr: Various fixes and changes
...
- Fix out of array bounds crash, curr_y can be out of bounds.
- Set tracked bits appropriately.
- Use m_imu_3dof for orientation.
2021-04-12 15:02:16 +00:00
Moses Turner
36a48bd62b
aux/util: switch blend mode to array
2021-04-11 04:08:49 -05:00
Ryan Pavlik
c906151fb1
util: Fix doxygen warnings
2021-04-09 18:22:42 -05:00
Ryan Pavlik
cf08cbba78
aux/vk: Docs for Vulkan native import helpers.
2021-04-09 18:11:52 +01:00
Ryan Pavlik
322f6d473a
util: Don't try to use $HOME or $XDG_CONFIG_HOME on Android.
2021-04-09 18:11:52 +01:00
Jakob Bornecrantz
736b9abdbe
u/rt: Print frame period and tidy
2021-04-07 15:41:47 +01:00
Jakob Bornecrantz
b68041fb93
u/rt: Tweak IIR alpha numbers
2021-04-07 15:41:47 +01:00
Jakob Bornecrantz
8606eb9d11
u/rt: Adjust app period depending on app time
2021-04-07 01:05:38 +01:00
Jakob Bornecrantz
1b0a9acb56
u/rt: Adjust app time during runtime
2021-04-07 01:04:20 +01:00
Jakob Bornecrantz
8215af5e5c
u/rt: Refactor render timing
2021-04-07 01:04:20 +01:00
Jakob Bornecrantz
670906ea0e
u/ft: Spelling
2021-04-07 01:04:20 +01:00
Jakob Bornecrantz
971f88f34f
u/ft: Rename frame timing functions
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
5dbcca65c5
u/tr: Refactor rendering timing code
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
d745396396
u/ft: Tweak frame timing numbers
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
07fb9941b3
aux/vk: Add fence import function
2021-04-07 00:50:10 +01:00
Ryan Pavlik
61c1044089
u/handles: Add graphics sync handle helpers.
2021-04-07 00:50:10 +01:00
Jakob Bornecrantz
c876087ee7
u/time: Add helper comparising functions
2021-04-07 00:50:10 +01:00
Christoph Haag
2b962a5bfb
u_config_json: Create root node on save if no config file loaded
...
If no config file is loaded, json->root can be uninitialized instead of NULL.
Fixes #117
2021-04-04 21:02:41 +02:00
Jakob Bornecrantz
30573fb90f
a/gst: Add GStreamer helper code
...
Co-authored-by: Aaron Boxer <aaron.boxer@collabora.com>
2021-04-03 03:07:21 +01:00
Ryan Pavlik
607eae4fdd
aux/vk: Fix creation of Windows external memory backed image.
2021-04-02 17:29:55 -05:00
Moses Turner
a027852767
aux/math: implement math_pose_identity.
2021-04-01 02:02:26 +02:00
Moses Turner
c776a19e15
aux/math: Implement math_matrix_3x3_multiply.
2021-04-01 02:02:26 +02:00
Christoph Haag
4061bf7707
d/multi: Add "attached" tracking override type
...
Example usage: Leap Motion attached to a Northstar headset.
2021-04-01 02:02:26 +02:00
Ryan Pavlik
f65635f378
aux/vk: Fix doxygen warning
2021-03-31 12:02:41 -05:00
Ryan Pavlik
b3280c5bc1
os/time: Small cleanup.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
aa3d1c1f6a
os: Add os_precise_sleeper.
...
Mostly to be able to use a timer on Windows.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
47bf17a0cc
os: Improve comment and prototype for os_nanosleep
2021-03-31 12:02:41 -05:00
Ryan Pavlik
0717975853
os: Improve timestamp retrieval on Windows.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
00915cab0f
os: Add caveats to some timespec conversion functions.
2021-03-31 12:02:41 -05:00
Ryan Pavlik
ddc9b00d14
os: Adjust how we compute the timeout for a semaphore.
...
Preparation for overhaul of timing on Windows.
2021-03-31 12:02:36 -05:00
Ryan Pavlik
4e11abc06b
aux/vk: Fix warning about narrowing conversion.
2021-03-30 20:46:00 +00:00
Ryan Pavlik
adb5eefb86
aux/vk: Add functions to initialize and clean up mutexes in the vk_bundle
2021-03-30 20:46:00 +00:00
Jakob Bornecrantz
6ba27de305
m/mathinclude: Apperently _USE_MATH_DEFINES was not enough
2021-03-30 21:27:29 +01:00
Jakob Bornecrantz
6f10f474fa
t/psvr: Ensure that m_mathinclude.h is included
2021-03-30 21:27:29 +01:00
Jakob Bornecrantz
083e4f5108
u/logging: Fix first global log message not getting correct level, add comments
2021-03-30 19:23:41 +01:00
Ryan Pavlik
b93b082bd3
aux: Fix doxygen warnings
2021-03-26 17:10:53 -05:00
Ryan Pavlik
4004402c40
aux/vk: Wrap statement defines in do {} while (0)
2021-03-26 17:10:53 -05:00
Ryan Pavlik
3414f62ccf
aux: fix or silence warnings
2021-03-26 17:06:17 -05:00
Ryan Pavlik
b147f2ecd4
a/util: Non-linux implementation of u_file
2021-03-26 17:06:17 -05:00
Ryan Pavlik
c00884e827
cmake: aux/vk depends on aux/os
2021-03-26 17:06:17 -05:00
Ryan Pavlik
4ed3d21b09
a/util: Stub out trace marker on non-Linux for now.
2021-03-26 17:06:17 -05:00
Ryan Pavlik
e5c193bcd0
aux/util: Silence warnings on MSVC
2021-03-26 17:05:56 -05:00
Christoph Haag
a991e66b85
u_vive: Fix debug level of printing acc_bias
2021-03-24 18:45:00 +00:00
Christoph Haag
08db19beca
u_config_json: Change node not found error->info
...
As our config grows it will happen more often that users won't have all possible nodes.
2021-03-24 18:45:00 +00:00
Christoph Haag
8f16118020
u_config_json: Remove bogus "No tracking node" messages
...
* open_tracking_settings() already reports missing tracking nodes.
* open_tracking_settings() can also fail for other reasons
2021-03-24 18:45:00 +00:00