Skip to content
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

Screen recording freezes once entering a full-screen program #270

Open
Raxelgrande opened this issue Jan 18, 2024 · 7 comments
Open

Screen recording freezes once entering a full-screen program #270

Raxelgrande opened this issue Jan 18, 2024 · 7 comments
Labels
bug Something isn't working

Comments

@Raxelgrande
Copy link

Affected version

  • io.github.seadve.Kooha 2.2.4

  • Flatpak: true

  • Experimental: false

  • Language: es_EC.UTF-8, es_EC, es.UTF-8, es, C

  • Distribution: GNOME 45 (Flatpak runtime)

  • Desktop Session: gnome

  • Display Server: wayland

  • GTK 4.12.4

  • Libadwaita 1.4.2

  • GStreamer 1.22.5

  • Pipewire 0.3.83

I was using Matroska and recording at 30 FPS.

Bug summary
Screen recording freezes once you enter a full-screen program. It also tries to sporadically work again, as it manages to record like half a second of footage before freezing again.
I tried to record Minecraft and Touhou, both failed. But recording Celluloid on full screen and windowed programs (including those two games) worked perfectly.
It might be related to XWayland and full-screen, as both games were running under it and Celluloid was running natively on Wayland. I checked using "xwininfo" to know that Minecraft and Touhou were running on XWayland

Steps to reproduce
Launch Minecraft 1.8.9 or Touhou 6 to 19 and try to record in full-screen.

Expected behavior
That everything is captured perfectly

Relevant logs, screenshots, screencasts, etc.
Video encoded using Handbrake as GitHub doesn't support MKV.
Debug text is the one produced by the video attached.
Kooha-Debug-Pepi.txt

Kooha-2024-01-18-15-39-59.mp4
@SeaDve SeaDve changed the title Can't record Full Screen programs Screen recording freezes once entering a full-screen program. Feb 8, 2024
@SeaDve SeaDve changed the title Screen recording freezes once entering a full-screen program. Screen recording freezes once entering a full-screen program Feb 8, 2024
@SeaDve SeaDve added the bug Something isn't working label Feb 8, 2024
@SeaDve SeaDve pinned this issue Feb 9, 2024
@SeaDve
Copy link
Owner

SeaDve commented Feb 16, 2024

Thanks for reporting! I actually can reproduce this too. As a workaround, I record the window of the app directly, instead of the monitor. I am not sure if the bug is coming from pipewire or mutter.

@SeaDve
Copy link
Owner

SeaDve commented Feb 17, 2024

This is one of the hardest bugs to fix, it is like a schrodinger bug: it is there until you observe it. Specifically, it is only reproducible when recording the video directly to a file, replacing filesink with decodebin ! xvimagesink makes the bug cease to exist.

@SeaDve
Copy link
Owner

SeaDve commented Feb 17, 2024

Here are two videos recorded with exactly the same pipeline (the muxer output from the main pipeline is tee-d to a decoder + xvimagesink and the other end is to a filesink whose output is these videos).

The first video is where the xvimagesink window is visible. Everything is smooth, no freezes.

xvimagesink-visible.webm

But if the xvimagesink window is not visible. The game in fullscreen freezes.

xvimagesink-not-visible.webm

@maaarghk
Copy link

maaarghk commented Apr 5, 2024

I just experienced this whilst ironically trying to take a video to demonstrate another bug (in Kicad). It is not full screen but it uses accelerated graphics, so maybe your issue is more to do with that. I previously had the same issue when trying to take a screen recording of virt-manager displaying a SPICE session. that said I believe this screen recording stops before kicad displays any accelerated graphics and before I even mouse over into it (see the location of the text cursor on the last recorded frame)

Hyprland v0.38

output_comp.webm

@matytyma
Copy link

I experience the same, although it's not related to just full-screen apps, all seem to be affected. The timer keeps going, everything looks OK but when I view the video it's stuck since then. Running Arch Linux.

@JerryDELUXE
Copy link
Contributor

Happened to me twice when I tried to record footage of Half-Life. Both times it recorded the first frame and then it froze the recording. I lost an hour worth of footage.

@JerryDELUXE
Copy link
Contributor

I just experienced this whilst ironically trying to take a video to demonstrate another bug (in Kicad). It is not full screen but it uses accelerated graphics, so maybe your issue is more to do with that. I previously had the same issue when trying to take a screen recording of virt-manager displaying a SPICE session. that said I believe this screen recording stops before kicad displays any accelerated graphics and before I even mouse over into it (see the location of the text cursor on the last recorded frame)

Hyprland v0.38
output_comp.webm

I'm pretty sure it's not related to graphics acceleration, at least not completely. Since both times when I recorded the gameplay in Half-Life I used software rendering instead of OpenGL, which doesn't utilize any GPU, integrated or not.
Although note that I'm no programming expert, so this information could very well be wrong.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

5 participants