-
Notifications
You must be signed in to change notification settings - Fork 22
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
Save videos directly to the filesystem [electron-only] #1358
Save videos directly to the filesystem [electron-only] #1358
Conversation
23b0794
to
5ecff0a
Compare
f31bfea
to
53fa3e4
Compare
c21cbe7
to
461da63
Compare
c22259b
to
fa42f76
Compare
fa42f76
to
ebf9cc9
Compare
Important to mention that the video feed is coming through the BlueBoat base station. I'm having some issues on the tests using the base station. The first videos I tried were not recorded and a popup was shown to alert about the video error. As I kept trying, only the videos shorter than 5s got sometimes corrupted and couldn't be processed. Btw.: Where are the videos chunks/files stored when running on linux? Screenshare.-.2024-12-16.6_46_28.PM.mp4 |
Didn't have any more video issues when using Cockpit on the built AppImage, even when connected via BB BaseStation. |
Strange. This PR does not change the video pipeline at all, besides saving the chunks to a given folder and not the the browser temporary folder (which is used by the IndexedDB). The files should be under /home/username/Cockpit. |
Is it possible to add a 'Select video saving folder' option on the video settings? |
Will add a button to open the video folder in the video modal! |
When the extension was unknown, the video file was being generated with two dots in the end (e.g.: 'video..webm'). This also created a side-effect of the system not being able to find the correspondent telemetry logs and leaving them behind when clearing the videos.
For that an abstraction layer was created. It coordinates the usage of the IndexedDB for the browser version and the filesystem for the Electron version.
ebf9cc9
to
b7bbd6e
Compare
@ArturoManzoli done. |
Tested on Linux and Windows. Works very well on both |
This PR changes the behavior of the Electron-based application.
Instead of saving the video chunks, video files and telemetry logs to the IndexedDB, we now save them directly to the filesystem.
The main advantage for the user is that it stops risking losing videos on a browser cache cleanup, which was the main cause of video loss. As a side-effect, the user has also the video files directly on their machine, without the need to download them, keeping everything always organized and in sync.
Kapture.2024-12-11.at.05.21.07.mp4
The implementation is done over the renderer/main IPC system, so we don't leave unnecessary filesystem permissions for the client, making everything safe.
Fix #1292.