jech / galene

The Galène videoconference server
https://galene.org
MIT License
942 stars 128 forks source link

Video recording real-time compression may cause graphical glitches #213

Closed TechnologyClassroom closed 1 month ago

TechnologyClassroom commented 1 month ago

We recorded conference sessions using the built-in record function of Galène and found that real-time compression sometimes results in graphical glitches at least on our systems. A mild example is the speaker at the 25:24 timestamp of this video. The graphical effect appears to be similar to the datamoshing technique where keyframes are missing. That speaker graciously manually edited all of the footage recorded from Galène and found that most of the screenshare recordings were unusable for the most part and had to recreate them from slides. Webcam footage was acceptable with occasional errors. The live viewers did not report these graphical errors so I believe they are a result of the workflow with the /diskwriter/diskwriter.go file.

A possible solution might be to record raw footage during a live session and then compress at a later time.

Galène Version: master branch at commit 0090ae71ddbda51645fd972bda93434bc7b41a3f VPS provider: OVH Model: VPS vps2023-le-16 CPU cores: 16 RAM: 16 GB Storage: 160 GB

Background: For the LibrePlanet 2024 conference we used Galène for the Neptune track. In the past for remote tracks, we only allowed the speakers into a Big Blue Button (BBB) room and streamed the room to icecast from a machine with OBS viewing BBB with custom CSS. With Galène, we allowed all participants to directly connect to Galène and we recorded the talks to disk. We briefly tested the footage and thought that it appeared to be OK, but we did not thoroughly review the footage or we would have noticed this issue earlier and would have replicated the OBS method to record.

jech commented 1 month ago

This has been reported by multiple users, but I'm finding it difficult to reproduce on my end, I guess it's triggered by something that doesn't happen in my setup. I plan to work on it seriously in September, but it's somewhat complex, since I'll need to build a simulated network with different kinds of packet loss and reordering.

I am genuinely sorry that it caused you to lose the recordings, I'll do my best to document the fact that recording is experimental for now.

TechnologyClassroom commented 1 month ago

Our next stream is probably going to be a Perl tutorial, but we do not have a date scheduled for it yet. Probably won't be this month. I would be open to giving you an non-root account on the above mentioned VPS if it would help.

jech commented 1 month ago

Duplicate of #206. Let's continue this discussion there.