Need to process 4+ hours of video - constant failures

Hi - I just spent the last few days conducting ROV dives to a shipwreck in Lake Michigan, I have around 4.5 hours of video that’s currently stuck in “chunk” format - I can’t get it to process for the life of me. I’ve tried the online processing tool, but I can’t seem to get it to process more than 3-4 minutes at a time without failing. The error it gives is “array buffer allocation failed”

Is there any way I can get this stuff to process smoothly?

Hey @spencerk062, sorry for this problem. This processing limitation is currently issue #1 in our list and I’m already working to fix it.

Meanwhile, so you can have your videos, could you share them with me through a Drive or something like? You can send the link on my DM.

If you’re using the standalone version of the application, you can find them on the Cockpit>Video>Temporary-chunks folder.

1 Like

Yessir! I’ll upload them to a mega folder and send them your way. I appreciate the help - any idea how long it may be before this gets fixed?

1 Like

I hope I can get this fixed till the end of next week.

1 Like

Beautiful! glad to hear it. I’ve got the videos uploading at the moment, I’ll send them your way as soon as they’re done. Thank you so much!

Hi @spencerk062 -

For future dives, checkout the dashcam extension! It saves videos from streams to the sdcard onboard the Raspberry Pi - for download later. No risk of Cockpit having problems, although you lose the .ass subtitles (for the moment.) You’ll also need to set your video stream to be rtsp, instead of the default UDP.

2 Likes

Giving an update here: @spencerk062 has sent me their recording files and I was able to improve our online processing tool. With the update they were able to process more than 13 hour/60 GB of video recordings!

What I did was to add a functionality that allows the user to set a maximum number of chunks per processing batch, and what the application will do is that it’s going to separate the chunks into batches of this size and process them separated.

That means, for example, that if you have a recording with 4000 chunks (about 1 hour) and set a maximum number of chunks on 1500 (about 25 minutes), it will create 3 videos, two with 25 minutes and one with 10 minutes. The default value is 500, which is pretty conservative, and the maximum number that you can set there depends on your machine and how much RAM it has available at the moment of the processing. By closing the most RAM-consuming on my system I was able to get a max of around 1800 chunks per batch (30 min slices). As it takes only a few seconds to process, you can try some numbers till you find the max for your machine. Give a refresh after it try so it resets everything (I’m still working on cleaning up the processing leftovers from memory). Just remember that it depends on the amount of free RAM in the system, so if you have 32GB but is using it all, that won’t work well. Try to close some other apps when using it.

Our final goal is to be able to process the entire recording and generate a single big file for it, but I think the way the tool is right now probably solves the needs of most already. After downloading those big slices, you can easily merge than with a video tool like LosslessCut, using the default config.

3 Likes

@rafael.lehmkuhl Hi there, I have a similar issue you have probably already answered several times. Some of my videos from a dive must not have processed before I started a new video so I have tons of files in the “Temporary-video-chunks” folder (3,794 files). I tried the tool you posted above which worked and I have videos for the missing files but the associated .ass files were not created which has the time and location overlays which are key to georeferencing the video. Is there any way to get those files to export as well? Thanks!!

Hey @gwenfall1!

The subtitle overlays (.ass file) was actually supposed to be downloaded with the chunks.

I’ve just tested it here and they are not being included in the download, so that’s actually a bug you’ve found!

I’m working on a fix already and will ping you back when this is done so you can test.

1 Like

@rafael.lehmkuhl Having this same issue!!! I still have the video chunks and used the tool you made to process the chunks into mp4 videos but they have no overlay on them and no .ass file is created. Really need overlay on the videos.

Hey @Tyler! I’ve opened the PR with the fix already. Just waiting for the review. We should make a release with it merged during the next week.

1 Like

@gwenfall1 @Tbristol03 we just merged the fix in the v1.17.0-beta.2 release. I ask you to download the chunks for those videos again, as the .ass telemetry file will now be included in the zip file.

@rafael.lehmkuhl Thank you so much!!

1 Like

@gwenfall1 you’re welcome!

And let me know if it works for you. As long as you didn’t delete the chunks (or the localStorage video recording metadata) from Cockpit, it should work fine.

@spencerk062 @Tbristol03 @gwenfall1 passing here to inform that we just released Cockpit 1.17.0 and it should completely solve the problems with long recordings. You can now record for as long as you want, on any camera, without memory constraints, and directly to an .mp4 file (so it’s always playable, even while the the recording is still going on).

To benefit from all of this you’ll need to use the Standalone version of Cockpit (the desktop one, that you download and install). The Web version has been renamed to Cockpit Lite, and can now only record videos - not process or replay them.

We invite you to give it a try and let us know how it goes :grinning_face_with_smiling_eyes: