galister / oscavmgr

[Linux] Face tracking & utilities for Resonite and VRC
MIT License
31 stars 4 forks source link

Eye look not working in VRChat #4

Closed adelwolf closed 3 months ago

adelwolf commented 3 months ago

All of my avatars with face tracking have all features working fine except the eye look is broken. All avatars eyes are fixed forward and do not respond to looking around. All of my avatars are using Jerry's Face Tracking presets.

The parameters that control eye look are: the EyeLeftX, EyeRightX, and EyeY. They are written in unity the behavior graph as: OSCm/Proxy/FT/v2/EyeLeftX OSCm/Proxy/FT/v2/EyeRightX OSCm/Proxy/FT/v2/EyeY

CPU AMD Ryzen 7 5800x3D GPU AMD RX 6800XT Running Arch with Wayland/hyprland

Here are the eye related parameters that are shown in Unity. image

Including images of all the tracked paramaters just in case (there are quite a few) image image Unity_clKES3VVLA

galister commented 3 months ago

see if it works with current main

adelwolf commented 3 months ago

tried to build it but getting a bunch of errors. I've never worked with rust before so I'm probably building it incorrectly, but here's what I'm getting.


> rustc main.rs
error[E0432]: unresolved import `env_logger`
 --> main.rs:4:5
  |
4 | use env_logger::Env;
  |     ^^^^^^^^^^ maybe a missing crate `env_logger`?
  |
  = help: consider adding `extern crate env_logger` to use the `env_logger` crate

error[E0432]: unresolved import `indicatif`
 --> main.rs:5:5
  |
5 | use indicatif::MultiProgress;
  |     ^^^^^^^^^ maybe a missing crate `indicatif`?
  |
  = help: consider adding `extern crate indicatif` to use the `indicatif` crate

error[E0432]: unresolved import `indicatif_log_bridge`
 --> main.rs:6:5
  |
6 | use indicatif_log_bridge::LogWrapper;
  |     ^^^^^^^^^^^^^^^^^^^^ maybe a missing crate `indicatif_log_bridge`?
  |
  = help: consider adding `extern crate indicatif_log_bridge` to use the `indicatif_log_bridge` crate

error[E0432]: unresolved import `colored`
 --> core/mod.rs:1:5
  |
1 | use colored::{Color, Colorize};
  |     ^^^^^^^ maybe a missing crate `colored`?
  |
  = help: consider adding `extern crate colored` to use the `colored` crate

error[E0432]: unresolved import `glam`
 --> core/mod.rs:2:5
  |
2 | use glam::{Affine3A, Quat, Vec3};
  |     ^^^^ maybe a missing crate `glam`?
  |
  = help: consider adding `extern crate glam` to use the `glam` crate

error[E0432]: unresolved import `indicatif`
 --> core/mod.rs:3:5
  |
3 | use indicatif::MultiProgress;
  |     ^^^^^^^^^ maybe a missing crate `indicatif`?
  |
  = help: consider adding `extern crate indicatif` to use the `indicatif` crate

error[E0433]: failed to resolve: maybe a missing crate `once_cell`?
 --> core/mod.rs:5:5
  |
5 | use once_cell::sync::Lazy;
  |     ^^^^^^^^^ maybe a missing crate `once_cell`?
  |
  = help: consider adding `extern crate once_cell` to use the `once_cell` crate

error[E0432]: unresolved import `log`
 --> core/mod.rs:4:5
  |
4 | use log::info;
  |     ^^^ maybe a missing crate `log`?
  |
  = help: consider adding `extern crate log` to use the `log` crate

error[E0432]: unresolved import `rosc`
 --> core/mod.rs:6:5
  |
6 | use rosc::{OscBundle, OscPacket, OscType};
  |     ^^^^ maybe a missing crate `rosc`?
  |
  = help: consider adding `extern crate rosc` to use the `rosc` crate

error[E0432]: unresolved import `rosc`
 --> core/bundle.rs:1:5
  |
1 | use rosc::{OscBundle, OscMessage, OscPacket, OscType};
  |     ^^^^ maybe a missing crate `rosc`?
  |
  = help: consider adding `extern crate rosc` to use the `rosc` crate

error[E0432]: unresolved import `colored`
 --> core/ext_autopilot.rs:3:5
  |
3 | use colored::{Color, Colorize};
  |     ^^^^^^^ maybe a missing crate `colored`?
  |
  = help: consider adding `extern crate colored` to use the `colored` crate

error[E0432]: unresolved import `glam`
 --> core/ext_autopilot.rs:4:5
  |
4 | use glam::Vec3;
  |     ^^^^ maybe a missing crate `glam`?
  |
  = help: consider adding `extern crate glam` to use the `glam` crate

error[E0433]: failed to resolve: maybe a missing crate `once_cell`?
 --> core/ext_autopilot.rs:6:5
  |
6 | use once_cell::sync::Lazy;
  |     ^^^^^^^^^ maybe a missing crate `once_cell`?
  |
  = help: consider adding `extern crate once_cell` to use the `once_cell` crate

error[E0432]: unresolved import `log`
 --> core/ext_autopilot.rs:5:5
  |
5 | use log::info;
  |     ^^^ maybe a missing crate `log`?
  |
  = help: consider adding `extern crate log` to use the `log` crate

error[E0432]: unresolved import `rosc`
 --> core/ext_autopilot.rs:7:5
  |
7 | use rosc::{OscBundle, OscType};
  |     ^^^^ maybe a missing crate `rosc`?
  |
  = help: consider adding `extern crate rosc` to use the `rosc` crate

error[E0432]: unresolved import `log`
 --> core/ext_gogo.rs:4:5
  |
4 | use log::info;
  |     ^^^ maybe a missing crate `log`?
  |
  = help: consider adding `extern crate log` to use the `log` crate

error[E0432]: unresolved import `rosc`
 --> core/ext_gogo.rs:5:5
  |
5 | use rosc::{OscBundle, OscType};
  |     ^^^^ maybe a missing crate `rosc`?
  |
  = help: consider adding `extern crate rosc` to use the `rosc` crate

error[E0432]: unresolved import `serde`
 --> core/ext_gogo.rs:6:5
  |
6 | use serde::{Deserialize, Serialize};
  |     ^^^^^ maybe a missing crate `serde`?
  |
  = help: consider adding `extern crate serde` to use the `serde` crate

error[E0432]: unresolved import `log`
 --> core/ext_oscjson.rs:1:5
  |
1 | use log::{info, warn};
  |     ^^^ maybe a missing crate `log`?
  |
  = help: consider adding `extern crate log` to use the `log` crate

error[E0432]: unresolved import `mdns_sd`
 --> core/ext_oscjson.rs:2:5
  |
2 | use mdns_sd::{ServiceDaemon, ServiceEvent};
  |     ^^^^^^^ maybe a missing crate `mdns_sd`?
  |
  = help: consider adding `extern crate mdns_sd` to use the `mdns_sd` crate

error[E0432]: unresolved import `rosc`
 --> core/ext_oscjson.rs:3:5
  |
3 | use rosc::{OscBundle, OscType};
  |     ^^^^ maybe a missing crate `rosc`?
  |
  = help: consider adding `extern crate rosc` to use the `rosc` crate

error[E0432]: unresolved import `serde`
 --> core/ext_oscjson.rs:4:5
  |
4 | use serde::Deserialize;
  |     ^^^^^ maybe a missing crate `serde`?
  |
  = help: consider adding `extern crate serde` to use the `serde` crate

error[E0433]: failed to resolve: maybe a missing crate `once_cell`?
 --> core/ext_tracking/mod.rs:3:5
  |
3 | use once_cell::sync::Lazy;
  |     ^^^^^^^^^ maybe a missing crate `once_cell`?
  |
  = help: consider adding `extern crate once_cell` to use the `once_cell` crate

error[E0432]: unresolved import `rosc`
 --> core/ext_storage.rs:3:5
  |
3 | use rosc::{OscBundle, OscType};
  |     ^^^^ maybe a missing crate `rosc`?
  |
  = help: consider adding `extern crate rosc` to use the `rosc` crate

error[E0432]: unresolved import `regex`
 --> core/ext_tracking/mod.rs:4:5
  |
4 | use regex::Regex;
  |     ^^^^^ maybe a missing crate `regex`?
  |
  = help: consider adding `extern crate regex` to use the `regex` crate

error[E0432]: unresolved import `rosc`
 --> core/ext_tracking/mod.rs:5:5
  |
5 | use rosc::{OscBundle, OscType};
  |     ^^^^ maybe a missing crate `rosc`?
  |
  = help: consider adding `extern crate rosc` to use the `rosc` crate

error[E0432]: unresolved import `sranipal`
 --> core/ext_tracking/mod.rs:6:5
  |
6 | use sranipal::SRanipalExpression;
  |     ^^^^^^^^ help: a similar path exists: `self::sranipal`

error[E0432]: unresolved import `strum`
 --> core/ext_tracking/sranipal.rs:1:5
  |
1 | use strum::{EnumCount, EnumIter, EnumString, IntoStaticStr};
  |     ^^^^^ maybe a missing crate `strum`?
  |
  = help: consider adding `extern crate strum` to use the `strum` crate

error[E0432]: unresolved import `glam`
 --> core/ext_tracking/unified.rs:1:5
  |
1 | use glam::{Quat, Vec3};
  |     ^^^^ maybe a missing crate `glam`?
  |
  = help: consider adding `extern crate glam` to use the `glam` crate

error[E0432]: unresolved import `rosc`
 --> core/ext_tracking/unified.rs:2:5
  |
2 | use rosc::{OscBundle, OscType};
  |     ^^^^ maybe a missing crate `rosc`?
  |
  = help: consider adding `extern crate rosc` to use the `rosc` crate

error[E0433]: failed to resolve: maybe a missing crate `once_cell`?
 --> core/folders.rs:1:5
  |
1 | use once_cell::sync::Lazy;
  |     ^^^^^^^^^ maybe a missing crate `once_cell`?
  |
  = help: consider adding `extern crate once_cell` to use the `once_cell` crate

error[E0432]: unresolved import `strum`
 --> core/ext_tracking/unified.rs:3:5
  |
3 | use strum::{EnumCount, EnumIter, EnumString, IntoStaticStr};
  |     ^^^^^ maybe a missing crate `strum`?
  |
  = help: consider adding `extern crate strum` to use the `strum` crate

error[E0432]: unresolved import `indicatif`
 --> core/status.rs:3:5
  |
3 | use indicatif::{MultiProgress, ProgressBar, ProgressStyle};
  |     ^^^^^^^^^ maybe a missing crate `indicatif`?
  |
  = help: consider adding `extern crate indicatif` to use the `indicatif` crate

error[E0433]: failed to resolve: use of undeclared crate or module `log`
  --> core/bundle.rs:26:9
   |
26 |         log::trace!("Sending parameter {} = {:?}", name, value);
   |         ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
  --> core/bundle.rs:33:9
   |
33 |         log::trace!("Sending tracking {} = {:?}", addr, args);
   |         ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
  --> core/bundle.rs:40:9
   |
40 |         log::trace!("Sending input axis {} = {:?}", name, value);
   |         ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
  --> core/bundle.rs:47:9
   |
47 |         log::trace!("Sending input button {} = {:?}", name, value);
   |         ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
  --> core/bundle.rs:54:9
   |
54 |         log::trace!(
   |         ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
  --> core/ext_storage.rs:43:9
   |
43 |         log::info!("Saving ExtStorage to {}", &self.path);
   |         ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
  --> core/ext_storage.rs:97:13
   |
97 |             log::trace!("ExtIndex {}", self.ext_index);
   |             ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/ext_storage.rs:103:13
    |
103 |             log::trace!("Sending {} {}", self.int_index, value);
    |             ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/ext_tracking/mod.rs:127:13
    |
127 |             log::debug!("Freeze");
    |             ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/ext_tracking/mod.rs:136:13
    |
136 |             log::debug!("FacePause");
    |             ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/ext_tracking/mod.rs:147:13
    |
147 |             log::warn!("oscjson: Could not read /avatar/parameters");
    |             ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/ext_tracking/mod.rs:160:13
    |
160 |             log::debug!("Checking {}", name);
    |             ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/ext_tracking/mod.rs:170:13
    |
170 |             log::debug!("Param: {}", name);
    |             ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/ext_tracking/mod.rs:177:13
    |
177 |             log::debug!("Match: {}", name);
    |             ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/ext_tracking/mod.rs:219:17
    |
219 |                 log::info!("{}: float", v.name,);
    |                 ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/ext_tracking/mod.rs:221:17
    |
221 |                 log::info!(
    |                 ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/mod.rs:173:25
    |
173 |                         log::info!("Received data: {:?}", packet);
    |                         ^^^ use of undeclared crate or module `log`

error[E0433]: failed to resolve: use of undeclared crate or module `log`
   --> core/mod.rs:196:25
    |
196 |                         log::info!("Received data: {:?}", packet);
    |                         ^^^ use of undeclared crate or module `log`

error: cannot find attribute `serde` in this scope
  --> core/ext_gogo.rs:23:7
   |
23 |     #[serde(skip_serializing)]
   |       ^^^^^

error: cannot find attribute `serde` in this scope
  --> core/ext_gogo.rs:24:7
   |
24 |     #[serde(skip_deserializing)]
   |       ^^^^^

error: cannot find attribute `serde` in this scope
  --> core/ext_gogo.rs:31:7
   |
31 |     #[serde(skip_serializing)]
   |       ^^^^^

error: cannot find attribute `serde` in this scope
  --> core/ext_gogo.rs:32:7
   |
32 |     #[serde(skip_deserializing)]
   |       ^^^^^

error: cannot find attribute `serde` in this scope
  --> core/ext_gogo.rs:35:7
   |
35 |     #[serde(skip_serializing)]
   |       ^^^^^

error: cannot find attribute `serde` in this scope
  --> core/ext_gogo.rs:36:7
   |
36 |     #[serde(skip_deserializing)]
   |       ^^^^^

error: cannot find attribute `serde` in this scope
  --> core/ext_oscjson.rs:94:7
   |
94 |     #[serde(alias = "FULL_PATH")]
   |       ^^^^^

error: cannot find attribute `serde` in this scope
  --> core/ext_oscjson.rs:96:7
   |
96 |     #[serde(alias = "ACCESS")]
   |       ^^^^^

error: cannot find attribute `serde` in this scope
  --> core/ext_oscjson.rs:98:7
   |
98 |     #[serde(alias = "TYPE")]
   |       ^^^^^

error: cannot find attribute `serde` in this scope
   --> core/ext_oscjson.rs:100:7
    |
100 |     #[serde(alias = "CONTENTS")]
    |       ^^^^^

error[E0433]: failed to resolve: use of undeclared crate or module `rosc`
  --> core/bundle.rs:74:13
   |
74 |             rosc::encoder::encode(&OscPacket::Bundle(self)).ok()
   |             ^^^^ use of undeclared crate or module `rosc`

error[E0433]: failed to resolve: use of undeclared crate or module `reqwest`
  --> core/ext_oscjson.rs:14:13
   |
14 |     client: reqwest::blocking::Client,
   |             ^^^^^^^ use of undeclared crate or module `reqwest`

error[E0433]: failed to resolve: use of undeclared crate or module `reqwest`
  --> core/ext_oscjson.rs:21:22
   |
21 |         let client = reqwest::blocking::Client::new();
   |                      ^^^^^^^ use of undeclared crate or module `reqwest`

error[E0433]: failed to resolve: use of undeclared crate or module `rosc`
   --> core/mod.rs:146:29
    |
146 |         let mut buf = [0u8; rosc::decoder::MTU];
    |                             ^^^^ use of undeclared crate or module `rosc`

error[E0433]: failed to resolve: use of undeclared crate or module `rosc`
   --> core/mod.rs:157:62
    |
157 |                 if let Ok((_, OscPacket::Message(packet))) = rosc::decoder::decode_udp(&buf[..size])
    |                                                              ^^^^ use of undeclared crate or module `rosc`

error[E0433]: failed to resolve: use of undeclared crate or module `glam`
   --> core/mod.rs:178:50
    |
178 | ...                   Quat::from_euler(glam::EulerRot::ZXY, ex, ey, ez),
    |                                        ^^^^ use of undeclared crate or module `glam`

error[E0433]: failed to resolve: use of undeclared crate or module `rosc`
   --> core/mod.rs:253:17
    |
253 |                 rosc::encoder::encode(packet)
    |                 ^^^^ use of undeclared crate or module `rosc`

error[E0433]: failed to resolve: use of undeclared crate or module `env_logger`
  --> main.rs:14:15
   |
14 |     let log = env_logger::Builder::from_env(Env::default().default_filter_or("info")).build();
   |               ^^^^^^^^^^ use of undeclared crate or module `env_logger`
   |
help: consider importing this struct
   |
3  + use std::thread::Builder;
   |
help: if you import `Builder`, refer to it directly
   |
14 -     let log = env_logger::Builder::from_env(Env::default().default_filter_or("info")).build();
14 +     let log = Builder::from_env(Env::default().default_filter_or("info")).build();
   |

error[E0599]: no method named `color` found for reference `&'static str` in the current scope
   --> core/mod.rs:278:70
    |
278 | static DRIVE_ON: Lazy<Arc<str>> = Lazy::new(|| format!("{}", "DRIVE".color(Color::Blue)).into());
    |                                                                      ^^^^^ method not found in `&str`

error[E0599]: no method named `color` found for reference `&'static str` in the current scope
   --> core/mod.rs:279:71
    |
279 | static DRIVE_OFF: Lazy<Arc<str>> = Lazy::new(|| format!("{}", "VSYNC".color(Color::Green)).into());
    |                                                                       ^^^^^ method not found in `&str`

error[E0599]: no method named `color` found for reference `&'static str` in the current scope
   --> core/mod.rs:281:70
    |
281 | static TRACK_ON: Lazy<Arc<str>> = Lazy::new(|| format!("{}", "TRACK".color(Color::Green)).into());
    |                                                                      ^^^^^ method not found in `&str`

error[E0599]: no method named `color` found for reference `&'static str` in the current scope
   --> core/mod.rs:282:71
    |
282 | static TRACK_OFF: Lazy<Arc<str>> = Lazy::new(|| format!("{}", "TRACK".color(Color::Red)).into());
    |                                                                       ^^^^^ method not found in `&str`

error[E0599]: no method named `color` found for reference `&'static str` in the current scope
  --> core/ext_autopilot.rs:18:70
   |
18 | static STA_FLW: Lazy<Arc<str>> = Lazy::new(|| format!("{}", "FOLLOW".color(Color::Green)).into());
   |                                                                      ^^^^^ method not found in `&str`

error[E0599]: no method named `color` found for reference `&'static str` in the current scope
  --> core/ext_autopilot.rs:19:70
   |
19 | static STA_MAN: Lazy<Arc<str>> = Lazy::new(|| format!("{}", "MANUAL".color(Color::Green)).into());
   |                                                                      ^^^^^ method not found in `&str`

error[E0599]: no method named `color` found for reference `&'static str` in the current scope
  --> core/ext_autopilot.rs:21:41
   |
21 |     Lazy::new(|| format!("{}", "AP-OFF".color(Color::BrightBlack)).into());
   |                                         ^^^^^ method not found in `&str`

error[E0599]: no variant or associated item named `COUNT` found for enum `UnifiedExpressions` in the current scope
   --> core/ext_tracking/unified.rs:461:51
    |
461 | pub const NUM_SHAPES: usize = UnifiedExpressions::COUNT + CombinedExpression::COUNT;
    |                                                   ^^^^^ variant or associated item not found in `UnifiedExpressions`
...
466 | pub enum UnifiedExpressions {
    | --------------------------- variant or associated item `COUNT` not found for this enum

error[E0599]: no variant or associated item named `COUNT` found for enum `CombinedExpression` in the current scope
   --> core/ext_tracking/unified.rs:461:79
    |
461 | pub const NUM_SHAPES: usize = UnifiedExpressions::COUNT + CombinedExpression::COUNT;
    |                                                                               ^^^^^ variant or associated item not found in `CombinedExpression`
...
595 | pub enum CombinedExpression {
    | --------------------------- variant or associated item `COUNT` not found for this enum

error[E0599]: no variant or associated item named `COUNT` found for enum `UnifiedExpressions` in the current scope
   --> core/ext_tracking/unified.rs:596:38
    |
466 | pub enum UnifiedExpressions {
    | --------------------------- variant or associated item `COUNT` not found for this enum
...
596 |     EyeLidLeft = UnifiedExpressions::COUNT,
    |                                      ^^^^^ variant or associated item not found in `UnifiedExpressions`

error[E0689]: can't call method `abs` on ambiguous numeric type `{float}`
   --> core/ext_autopilot.rs:144:49
    |
144 |         if (look_horizontal - self.last_sent.x).abs() > 0.01 {
    |                                                 ^^^

error[E0689]: can't call method `abs` on ambiguous numeric type `{float}`
   --> core/ext_autopilot.rs:154:44
    |
154 |         if (horizontal - self.last_sent.z).abs() > 0.01 {
    |                                            ^^^

error[E0433]: failed to resolve: use of undeclared crate or module `serde_json`
  --> core/ext_gogo.rs:46:30
   |
46 |             .and_then(|file| serde_json::from_reader(file).ok())
   |                              ^^^^^^^^^^ use of undeclared crate or module `serde_json`

error[E0433]: failed to resolve: use of undeclared crate or module `serde_json`
  --> core/ext_gogo.rs:59:30
   |
59 |             .and_then(|file| serde_json::to_writer(file, self).ok());
   |                              ^^^^^^^^^^ use of undeclared crate or module `serde_json`

error[E0433]: failed to resolve: use of undeclared crate or module `serde_json`
  --> core/ext_oscjson.rs:82:36
   |
82 |             .and_then(|json| match serde_json::from_str(&json) {
   |                                    ^^^^^^^^^^ use of undeclared crate or module `serde_json`

error[E0433]: failed to resolve: use of undeclared crate or module `serde_json`
  --> core/ext_storage.rs:26:30
   |
26 |             .and_then(|file| serde_json::from_reader(file).ok())
   |                              ^^^^^^^^^^ use of undeclared crate or module `serde_json`

error[E0433]: failed to resolve: use of undeclared crate or module `serde_json`
  --> core/ext_storage.rs:46:30
   |
46 |             .and_then(|file| serde_json::to_writer(file, &self.data).ok());
   |                              ^^^^^^^^^^ use of undeclared crate or module `serde_json`

error[E0277]: the trait bound `&str: From<CombinedExpression>` is not satisfied
  --> core/ext_tracking/mod.rs:74:32
   |
74 |             let name: &str = e.into();
   |                                ^^^^ the trait `From<CombinedExpression>` is not implemented for `&str`, which is required by `CombinedExpression: Into<_>`
   |
   = help: the following other types implement trait `From<T>`:
             <String as From<&String>>
             <String as From<&mut str>>
             <String as From<&str>>
             <String as From<Box<str>>>
             <String as From<Cow<'a, str>>>
             <String as From<char>>
   = note: required for `CombinedExpression` to implement `Into<&str>`

error[E0277]: the trait bound `&str: From<UnifiedExpressions>` is not satisfied
  --> core/ext_tracking/mod.rs:88:32
   |
88 |             let name: &str = e.into();
   |                                ^^^^ the trait `From<UnifiedExpressions>` is not implemented for `&str`, which is required by `UnifiedExpressions: Into<_>`
   |
   = help: the following other types implement trait `From<T>`:
             <String as From<&String>>
             <String as From<&mut str>>
             <String as From<&str>>
             <String as From<Box<str>>>
             <String as From<Cow<'a, str>>>
             <String as From<char>>
   = note: required for `UnifiedExpressions` to implement `Into<&str>`

error[E0599]: no variant or associated item named `from_str` found for enum `UnifiedExpressions` in the current scope
   --> core/ext_tracking/mod.rs:171:43
    |
171 |             let idx = UnifiedExpressions::from_str(&main)
    |                                           ^^^^^^^^ variant or associated item not found in `UnifiedExpressions`
    |
   ::: core/ext_tracking/unified.rs:466:1
    |
466 | pub enum UnifiedExpressions {
    | --------------------------- variant or associated item `from_str` not found for this enum
    |
    = help: items from traits can only be used if the trait is implemented and in scope
    = note: the following trait defines an item `from_str`, perhaps you need to implement it:
            candidate #1: `FromStr`
help: there is an associated function `from` with a similar name
    |
171 |             let idx = UnifiedExpressions::from(&main)
    |                                           ~~~~

error[E0599]: no variant or associated item named `from_str` found for enum `CombinedExpression` in the current scope
   --> core/ext_tracking/mod.rs:173:50
    |
173 |                 .or_else(|_| CombinedExpression::from_str(&main).map(|e| e as usize))
    |                                                  ^^^^^^^^ variant or associated item not found in `CombinedExpression`
    |
   ::: core/ext_tracking/unified.rs:595:1
    |
595 | pub enum CombinedExpression {
    | --------------------------- variant or associated item `from_str` not found for this enum
    |
    = help: items from traits can only be used if the trait is implemented and in scope
    = note: the following trait defines an item `from_str`, perhaps you need to implement it:
            candidate #1: `FromStr`
help: there is an associated function `from` with a similar name
    |
173 |                 .or_else(|_| CombinedExpression::from(&main).map(|e| e as usize))
    |                                                  ~~~~

error[E0599]: no method named `unwrap` found for mutable reference `&mut [Option<MysteryParam>]` in the current scope
   --> core/ext_tracking/mod.rs:194:52
    |
194 |             let stored = self.params[idx].as_mut().unwrap();
    |                                                    ^^^^^^
    |
help: there is a method `swap` with a similar name, but with different arguments
   --> /rustc/051478957371ee0084a7c0913941d2a8c4757bb9/library/core/src/slice/mod.rs:904:5

error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
   --> core/mod.rs:214:24
    |
214 |             .and_then(|buf| self.send_upstream(&buf).ok());
    |                        ^^^ doesn't have a size known at compile-time
    |
    = help: the trait `Sized` is not implemented for `[u8]`
    = note: all function arguments must have a statically known size

error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
   --> core/mod.rs:255:32
    |
255 |                     .and_then(|buf| self.send_upstream(&buf).ok());
    |                                ^^^ doesn't have a size known at compile-time
    |
    = help: the trait `Sized` is not implemented for `[u8]`
    = note: all function arguments must have a statically known size

error[E0277]: the size for values of type `[u8]` cannot be known at compilation time
   --> core/mod.rs:271:28
    |
271 |                 .and_then(|buf| self.send_upstream(&buf).ok());
    |                            ^^^ doesn't have a size known at compile-time
    |
    = help: the trait `Sized` is not implemented for `[u8]`
    = note: all function arguments must have a statically known size

warning: unused import: `bundle::AvatarBundle`
  --> core/ext_autopilot.rs:11:13
   |
11 | use super::{bundle::AvatarBundle, ext_tracking::ExtTracking, AppState};
   |             ^^^^^^^^^^^^^^^^^^^^
   |
   = note: `#[warn(unused_imports)]` on by default

warning: unused import: `super::bundle::AvatarBundle`
 --> core/ext_gogo.rs:8:5
  |
8 | use super::bundle::AvatarBundle;
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: unused import: `super::bundle::AvatarBundle`
 --> core/ext_oscjson.rs:7:5
  |
7 | use super::bundle::AvatarBundle;
  |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^

warning: unused import: `bundle::AvatarBundle`
 --> core/ext_storage.rs:5:13
  |
5 | use super::{bundle::AvatarBundle, folders::CONFIG_DIR};
  |             ^^^^^^^^^^^^^^^^^^^^

warning: unused import: `bundle::AvatarBundle`
 --> core/ext_tracking/unified.rs:5:19
  |
5 | use crate::core::{bundle::AvatarBundle, ext_oscjson::MysteryParam, AppState};
  |                   ^^^^^^^^^^^^^^^^^^^^

warning: unused import: `str::FromStr`
 --> core/ext_tracking/mod.rs:1:18
  |
1 | use std::{array, str::FromStr, sync::Arc};
  |                  ^^^^^^^^^^^^

warning: unused import: `self::bundle::AvatarBundle`
  --> core/mod.rs:18:5
   |
18 | use self::bundle::AvatarBundle;
   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^

error[E0502]: cannot borrow `gogo.staging` as mutable because it is also borrowed as immutable
   --> core/ext_gogo.rs:141:9
    |
141 |           gogo.staging.get_or_insert_with(|| Self {
    |           ^            ------------------ -- immutable borrow occurs here
    |           |            |
    |  _________|            immutable borrow later used by call
    | |
142 | |             idle_stand: gogo.idle_stand,
    | |                         --------------- first borrow occurs due to use of `gogo` in closure
143 | |             idle_crouch: gogo.idle_crouch,
144 | |             idle_prone: gogo.idle_prone,
145 | |             time: Instant::now(),
146 | |         })
    | |__________^ mutable borrow occurs here

error[E0433]: failed to resolve: use of undeclared crate or module `rosc`
  --> core/bundle.rs:18:22
   |
18 |             timetag: rosc::OscTime {
   |                      ^^^^ use of undeclared crate or module `rosc`

error[E0433]: failed to resolve: use of undeclared crate or module `mdns_sd`
  --> core/ext_oscjson.rs:11:16
   |
11 |     mdns_recv: mdns_sd::Receiver<ServiceEvent>,
   |                ^^^^^^^ use of undeclared crate or module `mdns_sd`

error: aborting due to 97 previous errors; 7 warnings emitted

Some errors have detailed explanations: E0277, E0432, E0433, E0502, E0599, E0689.
For more information about an error, try `rustc --explain E0277`.```
galister commented 3 months ago

if you're on alvr: cargo build --release

if you're on wivrn: cargo build --release --no-default-features --features=wivrn

galister commented 3 months ago

I made a new release here, feel free to grab it: https://github.com/galister/oscavmgr/releases/tag/v0.3.2

also, if you're on arch, you can grab the AUR at oscavmgr-git

adelwolf commented 3 months ago

grabbed latest release, still don't have eye look for some reason. Just switched back to Windows for a sec to double-test that it wasn't broken in a VRC update, still works under VRCFT. Here's what I'm seeing: https://streamable.com/jszuzx

galister commented 3 months ago

can you run oscavmgr with RUST_LOG=debug and drop the logs here?

adelwolf commented 3 months ago

Okay well after restarting I've got eye look working fine. I can drop the logs if you want even though it's working, I don't know where there saved to by default but we seem to be in business nonetheless! Thank you so much for all the help! https://streamable.com/aelcsw

DaRacci commented 2 months ago

~I've found myself that eye look works when i had eye tracking disabled, but then it wouldn't work with eye tracking enabled through that would enable blinking frowns and so on, it seems like it was just the looking that was stuck opposite for some reason.~

~I'm also using Jerrys Face Tracking presets with a Quest Pro + ALVR.~

Didn't see you had a new package version that fixes this, I'll give it a shot when i can.

DaRacci commented 2 months ago

I've just tried this and the issue seems to persist, its possible it could be due to my ALVR version since I'm still using v20.8.1 because NixOS is pending updates for the package.

galister commented 2 months ago

can you post some logs and tell me which tickers are red/green on the bottom status bar of oscavmgr?

DaRacci commented 2 months ago

I'll get some info to you when I'm able to, what i can say is i remember there are lots of warning logs about being unable to parse json or something along those lines.

galister commented 2 months ago

in that case, run cargo update and then rebuild. ALVR likely changed protocols.

DaRacci commented 1 month ago

I think that would probably mess it up more because like i said I'm stuck on an old version currently, so I'll probably just have to wait for NixOS to update the ALVR package.

galister commented 1 month ago

The new 0.4.0 version will work on ALVR 20.10