Help? H.265 and H.264 not found, using ZED 2

I am using nvidia-l4t-core 35.4.1-20230801124926 on a Jetson Orin Nano, and trying to record video from a ZED 2 camera. The ZED SDK version is ZED_SDK_Tegra_L4T35.4_v4.1.3.zstd

When I run the ZED example to record data, I get this error:

$ python svo_recording.py --output_svo_file testtt.svo
[2024-08-10 20:06:50 UTC][ZED][INFO] Logging level INFO
[2024-08-10 20:06:51 UTC][ZED][INFO] Using USB input… Switched to default resolution HD720
[2024-08-10 20:06:52 UTC][ZED][INFO] [Init] Depth mode: NONE
[2024-08-10 20:06:52 UTC][ZED][INFO] [Init] Camera successfully opened.
[2024-08-10 20:06:52 UTC][ZED][INFO] [Init] Camera FW version: 1523
[2024-08-10 20:06:52 UTC][ZED][INFO] [Init] Video mode: HD720@60
[2024-08-10 20:06:52 UTC][ZED][INFO] [Init] Serial Number: S/N 35678794
[2024-08-10 20:06:53 UTC][ZED][INFO] [Init] Notice: The recording is using SVO version 2, enabled by default starting from SDK version 4.1. To revert to the original SVO version, set the environment variable “ZED_SDK_SVO_VERSION” to 1

H265 is not supported <<
Recording ZED : SVO RECORDING ERROR

The same happens for H.264. I included the python script below.
What could be the cause? As far as I could see, H.265 encoding should be supported.

It seems to be present on my system too:

$ gst-inspect-1.0 | grep h265
typefindfunctions: video/x-h265: h265, x265, 265
videoparsersbad: h265parse: H.265 parser
libav: avdec_h265: libav HEVC (High Efficiency Video Coding) decoder
nvvideo4linux2: nvv4l2h265enc: V4L2 H.265 Encoder

########################################################################

Copyright (c) 2022, STEREOLABS.

All rights reserved.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS

“AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT

LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR

A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT

OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,

SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT

LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,

DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY

THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT

(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE

OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

########################################################################

import sys
import pyzed.sl as sl
from signal import signal, SIGINT
import argparse
import os

cam = sl.Camera()

#Handler to deal with CTRL+C properly
def handler(signal_received, frame):
cam.disable_recording()
cam.close()
sys.exit(0)

signal(SIGINT, handler)

def main():

init = sl.InitParameters()
init.depth_mode = sl.DEPTH_MODE.NONE # Set configuration parameters for the ZED


status = cam.open(init) 
if status != sl.ERROR_CODE.SUCCESS: 
    print("Camera Open", status, "Exit program.")
    exit(1)
    
recording_param = sl.RecordingParameters(opt.output_svo_file, sl.SVO_COMPRESSION_MODE.H265) # Enable recording with the filename specified in argument
err = cam.enable_recording(recording_param)
if err != sl.ERROR_CODE.SUCCESS:
    print("Recording ZED : ", err)
    exit(1)

runtime = sl.RuntimeParameters()
print("SVO is Recording, use Ctrl-C to stop.") # Start recording SVO, stop with Ctrl-C command
frames_recorded = 0

while True:
    if cam.grab(runtime) == sl.ERROR_CODE.SUCCESS : # Check that a new image is successfully acquired
        frames_recorded += 1
        print("Frame count: " + str(frames_recorded), end="\r")

if name == “main”:
parser = argparse.ArgumentParser()
parser.add_argument(‘–output_svo_file’, type=str, help=‘Path to the SVO file that will be written’, required= True)
opt = parser.parse_args()
if not opt.output_svo_file.endswith(“.svo”) and not opt.output_svo_file.endswith(“.svo2”):
print("–output_svo_file parameter should be a .svo file but is not : ",opt.output_svo_file,“Exit program.”)
exit()
main()

Hi,
Orin Nano does not have hardware H264/H265 encoders. Please switch to use software encoder.

For having hardware codec, you may consider use Orin NX or Xavier NX.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.