-
-
Notifications
You must be signed in to change notification settings - Fork 295
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Weylus Trial -- Samsung Tab S6 & Linux Mint 21.1 #204
Closed
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
There is now no need to distinguish between autopilot and x11 capturing.
While doing so improve debugging actions.
xdg-desktop-portal's org.freedesktop.portal.ScreenCast is used. Additionally add infrastructure for pipewire C library.
Weylus can now capture the screen under Wayland if xdg-desktop-portal and `org.freedesktop.portal.ScreenCast` is supported. There are still some problems that need to be addressed: - The gstreamer pipewiresrc seems to have a few issues: - The destructor of AppSink hangs in `gst_mini_object_remove_parent` and blocks the video thread once another capturable is selected and the current recorder is destroyed. This does not happen if the pipewiresrc is exchanged with a videotestsrc, which works just fine. - Switching around windows too much and reloading the page sometimes crashed Weylus, the crash happens somewhere inside gstreamer. - Window positions are unavailable as of now and thus mapping the input to the window won't work. - Window titles are not available either and the names Weylus displays are pretty cryptic. - Whether to capture the cursor needs to be decided while getting the capturable list by calling SelectSources with the appropriate arguments. - This is less flexible and may need a redesign of how this config option is passed. - Alternatively it's supposed to be possible to get cursor metadata, but these do not seem to be accessible via gstreamer. - AutoPilotCapturable crashes on Wayland.
PipeWire only provides new buffers if the source has been damaged, that is if the compositor decided to update it. So if there is no new buffer but still a reference to an old buffer that just means the source has not changed. In order to still deliver an acceptable framerate (some clients like firefox on android do not like videos with a very low framerate) wait 33ms (~30 frames per second) and then just send the old buffer again.
This is required by the latest fltk, see: https://docs.rs/fltk/1.4.33/fltk/window/index.html
If the pen is not touching the screen, set pressure to 0.
cargo deb has fixed this issue
This includes an update of hyper, and a change of the protocol. Specifically, the websocket connection does not require a separate port but instead is done via /ws. Furthermore, the client does not poll for frames anymore, instead it sets a preferred frame rate.
Additionally, bump some deps and fix a typo in the Readme.
Sometimes events are merged, `getCoalescedEvents` provides all events in full resolution.
Thanks, I have some time at my hands now. If you still want to help, feel free to create a new pull request or to start a discussion! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I want to try this for my at-home office use in retirement. I have need to "write on" PDF and other documents.
I don't expect to make changes to the code. I might update available documentation. I spent a software technical career and will consider alpha or beta testing of new editions.