Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
110c341
Update README.md
ulricheck Jul 25, 2023
19c5c4a
Update README.md
ulricheck Jul 25, 2023
1efa8fb
add paper from original hl2ss author
ulricheck Jul 26, 2023
3fbecd6
first test integrating zenoh
ulricheck Jul 26, 2023
09adf65
work in progress transitioning to zenoh
ulricheck Jul 29, 2023
61fbcb3
added zdepth compression for zlt
ulricheck Jul 29, 2023
90fc4c3
First sucessful video transfer for pv .. probably there is a good cha…
ulricheck Jul 30, 2023
bb23013
added a readme for conan 3rdparty
ulricheck Jul 30, 2023
3427cf9
first rpc service implemented, can stream 640x360 h264 video with 15fps
ulricheck Jul 30, 2023
06aafd7
initial draft of spatial mapping (incomplete)
ulricheck Jul 31, 2023
d18b913
implemented all streaming and rpc service except for sc
ulricheck Jul 31, 2023
aa1fc82
start of improved logging - use spdlog with custom sinks (file/zenoh/…
ulricheck Aug 1, 2023
d8ce8d5
added configurable logging with zenoh publisher, console and callback.
ulricheck Aug 2, 2023
ed45d16
added generic zenohd config (local memory storage for now.)
ulricheck Aug 2, 2023
e393758
Merge remote-tracking branch 'origin/main' into main
ulricheck Aug 2, 2023
dac01fc
improved shared context handling and refactored the naming scheme, be…
ulricheck Aug 3, 2023
7d1f105
Changed app/plugin name to hl2comm and improvements to viewer / strea…
ulricheck Aug 5, 2023
0549bc5
Fixed VS22 project issues after renaming
ulricheck Aug 5, 2023
5c2be51
restructured dependencies
ulricheck Aug 5, 2023
eeae3c0
compiles minimal plugin for Windows x64
ulricheck Aug 5, 2023
9986f96
try to make multi-platform unity plugin
ulricheck Aug 5, 2023
66de9d5
initial attempt to integrate pubsub
ulricheck Aug 5, 2023
b6c3aec
basic integration of zenoh pub sub seems to be in place
ulricheck Aug 6, 2023
968f183
fixed sending simple messages (text, json, etc)
ulricheck Aug 6, 2023
d864167
added simple json-replicator to ease integration of other services.
ulricheck Aug 29, 2023
44553ed
implemented mq for unity_hl2comm
ulricheck Sep 3, 2023
77d7d87
small updates to make it work with unity streaming
ulricheck Sep 3, 2023
5d8d20b
Update .gitignore
ANDR3ASST3PHAN Sep 13, 2023
c619587
eet_tracking receiver by AS
ANDR3ASST3PHAN Sep 13, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
56 changes: 46 additions & 10 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,13 +1,27 @@

hl2ss/.vs/
hl2ss/ARM64/
hl2ss/packages/
hl2ss/hl2ss/ARM64/
hl2ss/hl2ss/Generated Files/
hl2ss/hl2ss/code_bin.txt
hl2ss/enc_temp_folder/
hl2ss/hl2ss/BundleArtifacts/
release/
ARM64/*
ARM/*
hl2comm/hl2comm/ARM/*
hl2comm/unity_comm/ARM64/*
hl2comm/.vs/
hl2comm/ARM64/
hl2comm/x64/
hl2comm/packages/
hl2comm/hl2comm/ARM64/
hl2comm/hl2comm/x64/
hl2comm/hl2comm/Generated Files/
hl2comm/hl2comm/code_bin.txt
hl2comm/enc_temp_folder/
hl2comm/unity_hl2comm/BundleArtifacts/
hl2comm/unity_hl2comm/ARM64/
hl2comm/unity_hl2comm/x64/
hl2comm/unity_hl2comm/Generated Files/
hl2comm/unity_hl2comm/code_bin.txt
hl2comm/unity_comm/BundleArtifacts/
hl2comm/unity_comm/ARM64/
hl2comm/unity_comm/x64/
hl2comm/unity_comm/Generated Files/
hl2comm/unity_comm/code_bin.txt
/release/
*.pfx
*.user
viewer/__pycache__/
Expand All @@ -18,3 +32,25 @@ tools/__pycache__/
bbn/__pycache__/
bbn/tests/__pycache__/
calibration

tools/build_3rdparty/direct_deploy/
tools/build_3rdparty/conanbuild.bat
tools/build_3rdparty/conanbuildenv.bat
tools/build_3rdparty/conanrun.bat
tools/build_3rdparty/conanrunenv.bat
tools/build_3rdparty/deactivate_conanbuild.bat
tools/build_3rdparty/deactivate_conanrun.bat

hl2comm/3rdparty/UWP/arm64/Debug/
hl2comm/3rdparty/zenoh-c/UWP/arm64/Debug/
hl2comm/3rdparty/zenoh-c/UWP/arm64//Debug/

viewer/.idea/

.idea/

*.bin

*.h264

*.h26x
114 changes: 114 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,117 @@
# Hololens 2 Communication and Streaming Module

Fork of HL2SS with Zenoh Communication backend

Installation notes:

**Building Zenoh-C for Hololens 2:**

- Install Visual Studio 2022 with C++, UWP, DotNet, Clang, ARM64
- Install Strawberry Perl
- Install recent CMake
- Install rustup (with rustup-init.exe)
- Use x86_x64 Cross Tools Command Promt for VS 2022 to run the build commands
- ```git clone https://github.com/TUM-CAMP-NARVIS/zenoh-c```
- build zenoh-c with:
```cargo +nightly build -Z build-std=panic_abort,std --target=aarch64-uwp-windows-msvc --release```


**Third-Party Libraries**

- Zenoh-c (build instructions above)
- FastCDR v1.0.28 (newer ones use foonathan-memory and will probably not compile for windows uwp)

Notes:

- capnproto c/c++ cannot be compiled for windows uwp (missing '\_pipe' and others)



VS Project Settings:

- Include Dirs:
```
$(SolutionDir)3rdparty\UWP\arm64\Release\include
$(SolutionDir)3rdparty\zenoh-c\include
```
- C/C++ Standard:
```
ISO C++17
ISO C17 or Legacy ??
```
- Libraries:
```
mfuuid.lib
$(SolutionDir)3rdparty\zenoh-c\lib\UWP\arm64\Release\zenohc.lib
$(SolutionDir)3rdparty\UWP\arm64\Release\lib\zstd_static.lib
$(SolutionDir)3rdparty\UWP\arm64\Release\lib\zdepth.lib
$(SolutionDir)3rdparty\UWP\arm64\Release\lib\hl2comm_idl_std.lib
$(SolutionDir)3rdparty\UWP\arm64\Release\lib\hl2comm_idl_geometry.lib
$(SolutionDir)3rdparty\UWP\arm64\Release\lib\hl2comm_idl_pcpd.lib
$(SolutionDir)3rdparty\UWP\arm64\Release\lib\libfastcdr-1.0.lib
$(SolutionDir)3rdparty\UWP\arm64\Release\lib\uriparser.lib
$(SolutionDir)/3rdparty\UWP\arm64\Release\lib\fmt.lib
$(SolutionDir)/3rdparty\UWP\arm64\Release\lib\spdlog.lib
ws2_32.lib
crypt32.lib
secur32.lib
bcrypt.lib
ncrypt.lib
userenv.lib
ntdll.lib
iphlpapi.lib
runtimeobject.lib
```


Conan 2.0 settings files for:

ARM64/UWP:

```
[settings]
arch=armv8
build_type=Release
compiler=msvc
compiler.cppstd=17
compiler.runtime=dynamic
compiler.runtime_type=Release
compiler.version=193
os=WindowsStore
os.version=10.0
```

ARM64/Native:

```
[settings]
arch=armv8
build_type=Release
compiler=msvc
compiler.cppstd=17
compiler.runtime=dynamic
compiler.runtime_type=Release
compiler.version=193
os=Windows
```

X86_64/Native:

```
[settings]
arch=x86_64
build_type=Release
compiler=msvc
compiler.cppstd=17
compiler.runtime=dynamic
compiler.runtime_type=Release
compiler.version=192
os=Windows
```

---------------------- Original Readme from HL2SS --------


# HoloLens 2 Sensor Streaming

HoloLens 2 server software and Python client library for streaming sensor data via TCP. Created to stream HoloLens data to a Linux machine for research purposes but also works on Windows and OS X. The server is offered as a standalone application (appxbundle) or Unity plugin (dll).
Expand Down
Binary file added doc/2008.11239.pdf
Binary file not shown.
Binary file added doc/2211.02648.pdf
Binary file not shown.
Binary file added doc/ECCV2020-ResearchMode-Api.pdf
Binary file not shown.
Binary file added doc/ECCV2020-ResearchMode-Repository.pdf
Binary file not shown.
Binary file added doc/ResearchMode-ApiDoc.pdf
Binary file not shown.
File renamed without changes.
29 changes: 29 additions & 0 deletions hl2comm/3rdparty/UWP/arm64/Release/LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
BSD 3-Clause License

Copyright (c) 2019, Chris Taylor
All rights reserved.

Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Loading