[UNOFFICIAL] Running BMS on Linux/WINE with opentrack HOWTO
-
Thanks for the heads-up! I think it should be possible to save a profile and then load it at launch via command line parameter… I’ll check this out, right now I’m using qcvuview (also weirdly named and probably wrong from memory) to set my camera’s parameters on Linux.
Cheers, Uwe
-
@hoover said in [UNOFFICIAL] Running BMS on Linux/WINE with opentrack HOWTO:
Thanks for the heads-up! I think it should be possible to save a profile and then load it at launch via command line parameter… I’ll check this out, right now I’m using qcvuview (also weirdly named and probably wrong from memory) to set my camera’s parameters on Linux.
Cheers, Uwe
Thanks. I guess you meant guvcview (just googled it). I might take a look at it on another lazy moment, hehehe.
-
-
Hi all!
Sorry for being back to this topic but I think it’s better to have all things Linux together. Let me know if it’s better to open a new topic referencing this one.Truth to be told, I NEVER managed to run opentrack natively but I run the windows version inside the same BMS prefix and carry on. This is not ideal and I always keep trying to compile it natively so I’m also able to use it in other places.
Now I manage to compile it!!! But somehow doesn’t detect my cam even if anything else in my system recognizes it. The errors are:DEBUG [/home/MYUSER/opentrack/api/plugin-support.hpp:106]: library "easy" failed: "Cannot load library /home/MYUSER/opentrack/build/install/bin/../libexec/opentrack//opentrack-tracker-easy.so: (libIlmImf-2_3.so.24: cannot open shared object file: No such file or directory)" DEBUG [/home/MYUSER/opentrack/api/plugin-support.hpp:106]: library "opencv" failed: "Cannot load library /home/MYUSER/opentrack/build/install/bin/../libexec/opentrack//opentrack-video-opencv.so: (libdc1394.so.22: cannot open shared object file: No such file or directory)" DEBUG [/home/MYUSER/opentrack/opentrack/main-window.cpp:1021]: no preset dir
I’ve searched a lot and tried several thing with no joy. Any help?
On the other hand, I have less input (Aruco, neuralnet) options than in the windows version. Is that normal?
On the bight side, I’m using a dirty trick to be able to run opentrack with other wine or steam games. I run the wine opentrack and use UDP output. Then open the Linux version and use UDP input and wine/proton as output. It works and, as a side effect, the head movement feels smoother, I’m guessing because of double smoothing and deadzones.
Again, I can play BMS and other games, I just would prefer to do better.
-
@Ferde
It seems some of the dependences are not met, i mean it might be there are only dev packages (headers) installed bout not actual libs.
What provides libs listed in errors (libIlmImf-2_3.so.24 and libdc1394.so.22)
Make sure both are installed.
WRT missing trackers it’s to be expected. For Arucco and neural tracker, you have to compile their libs first, then point opentrack compilation to those compiled libs.
At some point I plan to update opentrack build procedure with steps for missing trackers and outputs (arucco, nt and XPlane output.) -
@Xeno said in [UNOFFICIAL] Running BMS on Linux/WINE with opentrack HOWTO:
@Ferde
It seems some of the dependences are not met, i mean it might be there are only dev packages (headers) installed bout not actual libs.
What provides libs listed in errors (libIlmImf-2_3.so.24 and libdc1394.so.22)
Make sure both are installed.
WRT missing trackers it’s to be expected. For Arucco and neural tracker, you have to compile their libs first, then point opentrack compilation to those compiled libs.
At some point I plan to update opentrack build procedure with steps for missing trackers and outputs (arucco, nt and XPlane output.)Thank you very much for pointing me in the direction to look for and for the need to compile the other things.
Will try again later. -
Apologies for double posting. Seems I already had the apparently missing libraries installed, so I don’t know how I could fix that. Maybe I should link something to somewhere? I’m not good at that.
I’ve also tested a 2-year old app-image of opentrack and it recognizes my webcam without issues so… I don’t know what’s going on here the image probably has some missing thing my system doesn’t. I would use that app-image but it hasn’t wine output or the input trackers I need.
Unfortunately seems there is no up to date app-image, flatpak os snap package. I’ve found a .deb one but is not working.So seems this new attempt of using native opentrack is another half-failure for me. At least this time I got it half-working.
Maybe I should reinstall ubuntu at some point. I’m in 21.10 and too lazy to upgrade because, apart from this, it all works.
-
@Ferde
Make sure you’ve got installed packages:
libdc1394-22, libdc1394-22-dev, libopenexr24, libopenexr24-dev
for x86_64 architecture, assuming you’re building 64bit opentrack. -
@Xeno said in [UNOFFICIAL] Running BMS on Linux/WINE with opentrack HOWTO:
@Ferde
Make sure you’ve got installed packages:
libdc1394-22, libdc1394-22-dev, libopenexr24, libopenexr24-dev
for x86_64 architecture, assuming you’re building 64bit opentrack.You are a lifesaver!!! That was it. Somehow I had libdc1394-22-dev installed but no libdc1394-22. Neither I had the option for it in Synaptic.
I also had libopenexr25 and -dev but not the option to install version24. So I downloaded the packages and now opentrack detects the camera!!!Thank you so much.
-
@Ferde
I’m glad, you’ve got sorted it out. I’m not sure about 2.4 vs 2.5 issue. If it’s 1:1 replacement maybe having just ibopenexr25 and ibopenexr25-dev with no ibopenexr24-dev would be enough to build opentrack against openexr v 2.5.
But whatever, it’s important opentrack is doing fine. -
@Xeno said in [UNOFFICIAL] Running BMS on Linux/WINE with opentrack HOWTO:
@Ferde
I’m glad, you’ve got sorted it out. I’m not sure about 2.4 vs 2.5 issue. If it’s 1:1 replacement maybe having just ibopenexr25 and ibopenexr25-dev with no ibopenexr24-dev would be enough to build opentrack against openexr v 2.5.
But whatever, it’s important opentrack is doing fine.I also thought it would be enough and tried with version 25 installed first and still didn’t detect the camera. So I installed the version24 package.
Anyway, now I was looking at how to compile neuralnet I found… this!
https://gitlab.com/jugandoenlinux/opentrack-script/-/blob/main/README.mdIt has a script and a link to an (optional) opentrack fork with improved Wine and Proton support. It also has options to compile ONNX (Neuralnet), Aruco and XPlane plugin…
It wouldn’t probably have worked for me either before solving this packages problem but now it worked great. I hope it’s useful for someone else even if it’s just taking a look at the install script.
It’s in Spanish but I think it’s probably very self explanatory and google translator shouldn’t have problems with it either.OK. I think I’m finally done with this problem. Thank you again Xeno for your help. Have a great weekend!
-
Quick headsup, new opentrack got released - 2022.3.0
I’ve added steps for extra trackers ( aruco and NeuralNet) and xplane plugin (for sake of completeness, just in case someone is also using xplane on linux)
to Opentrack build instructions.Does anyone have some experience with NeuralNet tracker? While it shows some promise I can’t get Z-Axis right . It seems to be reversed, input show stablevalues between 230-80, but output is going crazy, doing zoom loop if I move my head out past certain point.
Also initial pose is not on logical 0, so I can’t get negative values (move camera furter away than inintail point).On general note on NeuralNet - it is the very cpu-hungry tracker. Maybe once CPUs will get machine learning accelerators it’ll be less taxing? There’s ONN runtime that runs on GPUs but I have no hardware to try it. I’ve got no idea if tracker would work with such runtime and if it gives any benefits for performance. That’s something to be tested by some brave soul with proper GPU.
-
Some more observations on NN tracker. It seems it doesn’t like Accela filter, using Kalman solved my zooming loop issue.
Problem with Z-axis being not center can be solved with recentering position after tracking start.With some tuning it seems to be quite responsive, it needs some smoothing to keep position stable butit’s doable. Some more testing in the sim is needed but so far so good.
-
@Ferde said in [UNOFFICIAL] Running BMS on Linux/WINE with opentrack HOWTO:
Unfortunately seems there is no up to date app-image, flatpak os snap package.
I put together a simple Flatpak build here including the neuralnet tracker. You’ll need to build it yourself as it isn’t in Flathub (yet hopefully), but it just takes 1
flatpak-builder
command. You can use the libevdev Joystick output to make the tracker show up as a multi-axis joystick under Linux, Wine and Steam. Using the OpenTrack Wine integration looks more difficult if possible at all. -
@jwm That’s so cool!! I finally made it, but this will be very helpful for others… or myself in the future.
-
Got myself to build latest 2022.3.2. It went ok with two small hiccups:
- one include has to be reverted in in neuralnet tracker
see issue: https://github.com/opentrack/opentrack/issues/1559 - onnxruntime has to be in version 1.12.1 or earlier, with 1.13.1 it also fails to compile.
If your desktop is running wayland session instead of X11 it’s advised to run opentrack with switch ‘-platform xcb’, or global shortcuts ain’t gonna work.
NeuralNet tracker now works with accela filter, tho it still start off center along z-axis. Recentering solves the problem, that’s where global shortcuts are crucial.
After brief testing I think it becomes viable option. With some tinkering with options I got it running reasonably well, it was stable and responsive, even using crappy laptop build-in webcam in 22fps.
One of the important things is to have your face well lit by some lightsource. It tremendously help with tracking stability.
I’m curious how it’s gonna work in daylight, but I think it should be okTBH It feels so great to have headtracking without those extra cables, no fancy headwear ‘decorated’ with leds etc … I think that’s gonna be my new default.
- one include has to be reverted in in neuralnet tracker
-
Hi all!
Just to say that I installed 4.37 on the same wine prefix as 4.36 and seems it all works properly. Didn’t try campaign yet.
-
@Ferde
Great to know, I haven’t an opportunity yet to try 4.37.
I wonder when some brave soul will try to run BMS in VR under Linux. 'tho it’s gonna be tough, VR under Linux seem still to be a mess -
As far as I know just a couple of headsets work out of the box or with little configuration. For the rest I think is doable, but tedious.
-
@Ferde Hi Ferde. Great news. I was looking to this because i would like to setup a VM on Cloud and Linux is chipper than windows ) (dedicated server for multiplayer session).
Is it possible to have access to a “setup guide” on Linux?
Thanks Ciao
Gundam
-
@gundam Do you mean how to install BMS on Linux?
The first post of this thread is precisely about that.
And more help and solutions in the following posts.