From bba260489d492e9e8df64e47e8b357c36a7209c1 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Sat, 17 Aug 2024 22:18:57 +0200 Subject: Set free camera by default unless --sphere or --sphere360 options are used --- TODO | 1 + src/main.cpp | 18 ++++++++++++++++-- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/TODO b/TODO index e0541b5..22f37b6 100644 --- a/TODO +++ b/TODO @@ -9,3 +9,4 @@ Fix sphere360... AAAAAA. Use egl instead of glx for xcomposite window capture because nvidia glx has a limitation where only 1 pixmap can be created for a window which means that with some compositors (gnome for example with CSD or picom in GLX mode) it will fail to create a texture and the captured texture will instead be black. Nvidia with egl doesn't have this limitation. Add option to capture monitors. This would be useful specifically with the --overlay option. Allow selecting window/monitor in overlay. +Use lanczos resampling shader for improved texture quality. diff --git a/src/main.cpp b/src/main.cpp index 7e13ec9..d29357d 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -513,7 +513,7 @@ void dprintf( const char *fmt, ... ) } static void usage() { - fprintf(stderr, "usage: vr-video-player [--sphere|--sphere360|--flat|--plane] [--left-right|--right-left] [--stretch|--no-stretch] [--zoom zoom-level] [--cursor-scale scale] [--cursor-wrap|--no-cursor-wrap] [--follow-focused|--video video|] [--use-system-mpv-config] [--mpv-profile ] [--free-camera] [--reduce-flicker] [--overlay] [--overlay-key ] [--overlay-mouse|--no-overlay-mouse] [--overlay-width ]\n"); + fprintf(stderr, "usage: vr-video-player [--sphere|--sphere360|--flat|--plane] [--left-right|--right-left] [--stretch|--no-stretch] [--zoom zoom-level] [--cursor-scale scale] [--cursor-wrap|--no-cursor-wrap] [--follow-focused|--video video|] [--use-system-mpv-config] [--mpv-profile ] [--free-camera] [--no-free-camera] [--reduce-flicker] [--overlay] [--overlay-key ] [--overlay-mouse|--no-overlay-mouse] [--overlay-width ]\n"); fprintf(stderr, "\n"); fprintf(stderr, "OPTIONS\n"); fprintf(stderr, " --sphere View the window as a stereoscopic 180 degrees screen (half sphere). The view will be attached to your head in vr. This is recommended for 180 degrees videos. This is the default value\n"); @@ -529,7 +529,8 @@ static void usage() { fprintf(stderr, " --cursor-wrap If this option is set, then the cursor position in the vr view will wrap around when it reached the center of the window (i.e when it reaches the edge of one side of the stereoscopic view). This option is only valid for stereoscopic view (flat and sphere modes)\n"); fprintf(stderr, " --no-cursor-wrap If this option is set, then the cursor position in the vr view will match the the real cursor position inside the window\n"); fprintf(stderr, " --reduce-flicker A hack to reduce flickering in low resolution text when the headset is not moving by moving the window around quickly by a few pixels\n"); - fprintf(stderr, " --free-camera If this option is set, then the camera wont follow your position\n"); + fprintf(stderr, " --free-camera If this option is set, then the camera wont follow your position. This option is enabled unless --sphere or --sphere360 options are used\n"); + fprintf(stderr, " --no-free-camera If this option is set, then the camera will follow your position. This option is enabled when --sphere or --sphere360 options are used\n"); fprintf(stderr, " --follow-focused If this option is set, then the selected window will be the focused window. vr-video-player will automatically update when the focused window changes. Either this option, --video or window_id should be used\n"); fprintf(stderr, " --video