Refactor video processing pipeline to allow recording of long videos#2164
Conversation
3a2bdba to
31c4ba1
Compare
3a801e8 to
0f56c9c
Compare
1a7eded to
993d78f
Compare
|
@ArturoManzoli I've finished the changes and it's ready for review. I've let most of the implementation together in the last commit so we can more easily do the changes from the reviews without having to rebase commits, but if you prefer to review commit by commit let me know and I can separate it into the final ones. |
Nice, I'll start the complete review now. For now, the main commit is still named as |
Will add it. |
Will check that. |
src/components/VideoLibraryModal.vue
Outdated
| <div class="px-4 pt-4 pb-2"> | ||
| <v-tabs v-model="currentVideoSubTab" color="white" fixed-tabs class="video-sub-tabs"> | ||
| <v-tab | ||
| v-for="tab in videoSubTabs" | ||
| :key="tab.name" | ||
| :value="tab.name" | ||
| :disabled="tab.disabled" | ||
| class="text-white" | ||
| > | ||
| <v-tooltip v-if="tab.tooltip" open-delay="600" activator="parent" location="top"> | ||
| {{ tab.tooltip }} | ||
| </v-tooltip> | ||
| <v-icon class="mr-2" size="18">{{ tab.icon }}</v-icon> | ||
| {{ tab.label }} | ||
| </v-tab> | ||
| </v-tabs> | ||
| </div> |
d7ef271 to
9fbaedd
Compare
|
@ArturoManzoli all done. I'm keeping the changes in separate commits but I will squash as necessary when we finish the reviewing. |
Didn't get it. Is the test on the Steam Deck or using the App image? The Steam Deck should be tested with Flatpak on Desktop mode. |
Indeed. Let me try again |
5c1ff0c to
521865f
Compare
After you tested with the Flatpak version and reported it was not working I got to investigate a little more and found out the Flatpak was trying to run |
ArturoManzoli
left a comment
There was a problem hiding this comment.
Working fine now! And super fast
It will be used for streaming-based ZIP file operations.
It was replaced by a `ffmpeg` pipeline, which does not load the entire video into memory.
User for creating ZIP files.
Added methods for: - Opening temporary video chunks folder - Getting file statistics - Getting path of selected file (through OS selection dialog).
4a810dc to
bae8a8f
Compare
bae8a8f to
4000cda
Compare
4000cda to
ca5a1b3
Compare




This PR is expected to put an end in the problem of Cockpit failing to process long videos.
This patch completely refactors the video processing pipeline, by doing the following:
ffmpeg, during the recording, eliminating the need for post-processing;Kapture.2025-10-02.at.11.15.46.mp4
I've tested this version with 3 hour-long recordings from both the USB Cam and the RadCam, and they both worked fine (on a Mac Air M3 with 16GB of RAM running Sequoia 15.6).
The size of the Cockpit artifacts will increase as it will now include
ffmpegversion 7.1 (platform-specific on each build). This is accomplished through a dedicated script that fetches it from trusted sources (appointed by theffmpegteam itself).This PR is already working and can be tested functionality-wise. I'm still working in cleaning up the commits to minimize the changes, as I'm aware this patch changes a lot throughout the codebase.
Fix #1638
Fix #1648
Fix #1765
Fix #1793
Fix #1921
Fix #2004
Fix #2118
Fix #2152
To be merged after #2165