Svo2 recordings cannot open with SDK V5.3

Hi,

After updating the ZED SDK to V5.3 , I am having issues with SVO2 recording when using ZED X One cameras.
I am trying to record using ZED Studio. The recording process appears to complete and a file is saved, but when I try to open the SVO2 file afterward, it does not load.
In ZED Studio, I get the following error message:

Failed to open SVO file at /home/.../<file_path>

I also tried opening the same recording using the ZED sample by specifying the file path directly, but I encounter issues there as well and the SVO2 recording cannot be opened.

I am not sure whether the recorded file is corrupted, whether there is an issue with reading SVO2 files in the new SDK version.

Could you please advise how to continue in this case?

My setup:
Camera: ZED X One
SDK version: V5.3, link driver v1.4.2
Using Jetson orin nano
Recording tool: ZED Studio,ZED Explorer
Playback attempts: ZED Studio ZED Explorer and ZED sample code.

Hi @NivC
Thank you for reporting this problem. I’ve just forwarded the details to the team to fix it with the next patch release.

Have you tried to use ZED_SVO_Editor to try to fix the SVO? Does this work for you?

If the problem persists, I recommend reverting to v5.2.1 while the fix is ready.

I did not.
Can you please provide more information about the ZED_SVO_Editor, i did not find it in the ZED SDK folder, how to find more information about it?

Are you using Windows or Linux?
ZED SVO Editor is a command-line tool, if you are under Windows, you must use it with PowerShell

I am using Linux, can you explain how to use it?

Open a terminal and enter the command ZED_SVO_Editor.

You will gety this output with all the available options:

$ ZED_SVO_Editor 
You must provide arguments to this tools, here the list of them : 


 -inf                  Print SVO infos

 -cut                  Cut a SVO and save the svo part between <s> and <e> to another svo.
                       -s or -e parameters must be specified.
                       -s or -e parameters must be specified.
                       -start-timestamp could be specified instead -s for cutting from a starting timestamp.
                       -end-timestamp could be specified instead -e for cutting up to an ending timestamp.

 -merge                Add/Merge two or more SVO files into a single one.
                       SVO files must have the same resolution and same ZED Serial Number.

 -cpr                  Convert a SVO into another SVO compression format
                       -m parameter must be specified.

 -m                    Compression format to use with the -cpr option. m can be 0, 1, 2, 3, 4 , 5 or 6 for respectively PNG (Lossless), ZSTD (Lossless), JPEG (Lossy),  H264 Lossy, H265 Lossy, H264 LossLess and H265 LossLess  based compressions.

 -repair               Repair a SVO file by recreating a new SVO <svofilename_repaired.svo> with a recovered index table.

 -update-timestamp     Update the timestamp of all frames in a SVO video file based on a new reference timestamp provided as input. The new reference timestamp must be specified through to -ref argument. The reference timestamp must be in nanoseconds.
                       The timestamp of the first frame in the resulting SVO will be set to the specified reference timestamp.

 -export-to-mcap       Export the SVO2 data (image, imu, gnss, custom data) to a MCAP file readable by foxglove.
                       Use --no_image_export for skip image export
                       Use --no_imu_export for skip imu export
                       Use --no_custom_export for skip custom data export (including GNSS)

 -encrypt              Encrypt a plain SVO2 file (AES-256-CTR). SVO2 only. Requires OpenSSL.
                       --key can be a passphrase (PBKDF2-derived), a path to a 32-byte key file,
                       or a 64-char hex string for a raw 256-bit key.

 -decrypt              Decrypt an encrypted SVO2 file back to a plain SVO2 file. Requires OpenSSL.
                       --key accepts the same formats as -encrypt.

Sample usage:
"ZED_SVO_Editor -inf svo1.svo"
"ZED_SVO_Editor -cut svo1.svo -s 100 -e 200 output.svo"
"ZED_SVO_Editor -cut svo1.svo -start-timestamp 1779116258978895872 -end-timestamp 1779119858978895887 output.svo"
"ZED_SVO_Editor -merge svo1.svo svo2.svo output.svo"
"ZED_SVO_Editor -cpr input.svo -m 2 output.svo"
"ZED_SVO_Editor -repair input.svo"
"ZED_SVO_Editor -update-timestamp input.svo -ref 1779119858978895887 output.svo"
"ZED_SVO_Editor -export-to-mcap input.svo"
"ZED_SVO_Editor -encrypt input.svo2 output_encrypted.svo2 --key \"my secret passphrase\""
"ZED_SVO_Editor -encrypt input.svo2 output_encrypted.svo2 --key /path/to/keyfile.bin"
"ZED_SVO_Editor -decrypt input_encrypted.svo2 output_plain.svo2 --key \"my secret passphrase\""

The command to repair an SVO is:
ZED_SVO_Editor -repair input.svo

Hi,
which Jetpack are you using?
What is the error returned by the sl::CameraOne::open function if you use it directly from a sample of the ZED SDK ?
does the SVO contains data ? (which size is it?)

note that the repair svo in the ZED_SVO_Editor didn't work.
I have already revert to the SDK V5.2.3 and now svo2 back to work for me.
I have Jetpack V6.1 with L4T 36.4 using Jetson Orin nano.

No error was returned as much i remember.

All i remember the size of svo2 file was 200mb, approximately 15-40 sec video recorded.