Skip to content

isaac_ros_h264_encoder failed with NV24 input format #19

@gianlucapargaetzi

Description

@gianlucapargaetzi

Hello
I am currently trying to set up the isaac_ros_h264_encoder to work with NV24 input format (to be able to feed more image information into the encoder).

According to the code in videoencoder_request.cpp, NV24 should be supported:
result &= registrar->parameter(input_format_, "input_format", "Input color format, nv12,nv24,yuv420planar", "nv12", gxf::EncoderInputFormat::kNV12);

I adapted the nitros_encoder_node.yaml accordingly by changing the appearances of nv12/NV12 to nv24/NV24.

However upon running the encoder pipeline, i get an error from "set_output_plane_format":

2025-01-08 10:15:44.081 ERROR /workspaces/isaac_ros-dev/src/isaac_ros_compression/isaac_ros_h264_encoder/gxf/codec/video_encoder/videoencoder_request.cpp@166: Error in set_output_plane_format, Error:-1

[component_container_mt-1] 2025-01-08 10:15:44.081 ERROR external/com_nvidia_gxf/gxf/std/entity_executor.cpp@630: Entity [CQAZECVWSZ_encoder] must be in Started, Tick Pending, Ticking or Idle stage before stopping. Current state is StartPending

[component_container_mt-1] Opening in BLOCKING MODE 

[component_container_mt-1] 2025-01-08 10:15:44.081 WARN  external/com_nvidia_gxf/gxf/std/entity_executor.cpp@539: Failed to start entity [CQAZECVWSZ_encoder]

[component_container_mt-1] 2025-01-08 10:15:44.081 WARN  external/com_nvidia_gxf/gxf/std/event_based_scheduler.cpp@329: Error while executing entity E125 named 'CQAZECVWSZ_encoder': GXF_FAILURE

[component_container_mt-1] 2025-01-08 10:15:45.081 ERROR external/com_nvidia_gxf/gxf/std/entity_executor.cpp@212: Entity with eid 113 not found!

It seems to me, that the nv12 format somehow is not supported, even though it can be used with the h264 encoder over gstreamer according to this NVIDIA guide.

About my system:

  • NVIDIA Jetson Orin NX 16 GB on a custom carrier board
  • Running Isaac ROS within the Docker, built as supposed with isaac_ros_common
  • I tested different video inputs (MIPI CSI-2 Camera devices & USB-Cameras)
  • Encoding with NV12 works fine.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions