Hailo-15H application_input_stream silently capped at 1920×1080 — is this a hardware limit?

Platform: Hailo-15H SBC 2.x, Hailo Media Library v1.7.0 (toolchain v1.10.1)

Connectivity: Using Ethernet connection between my laptop and the board

Sensor: IMX678, capturing at 3840×2160@30fps

Issue:
When configuring application_input_streams with a resolution of 3840×2160, the frontend silently delivers 1920×1080 buffers. No error is logged — the downscale happens without warning.

How I verified:
Added a debug print in dsp_stages.hpp before the DSP crop call to log the actual buffer dimensions received from the frontend:

hailo_dsp_buffer_data_t in_buffer_data = input_buffer->buffer_data->As<hailo_dsp_buffer_data_t>();
std::cout << "[DEBUG] DSP input buffer: width=" << in_buffer_data.properties.width
          << " height=" << in_buffer_data.properties.height << std::endl;

Output: [DEBUG] DSP input buffer: width=1920 height=1080

Config (daylight_profile.json):

"input_video": {
    "resolution": { "width": 3840, "height": 2160, "framerate": 30 }
},
"application_input_streams": {
    "method": "INTERPOLATION_TYPE_BILINEAR",
    "format": "IMAGE_FORMAT_NV12",
    "resolutions": [
        { "width": 854, "height": 480, "framerate": 30, "pool_max_buffers": 40 },
        { "width": 1280, "height": 720, "framerate": 30, "pool_max_buffers": 14 },
        { "width": 3840, "height": 2160, "framerate": 30, "pool_max_buffers": 20 }
    ]
}

The third stream (sink2, used for AI inference) is configured at 3840×2160 but the actual buffer delivered is 1920×1080.

Context / why this matters:
I’m running a YOLOv8 tiling pipeline (adapted the ai_camera_apps on branch v1.7.0: hailo-camera-apps/apps/h15/native/ai_example_app at 1.7.0 · hailo-ai/hailo-camera-apps · GitHub to utilise YOLOv8 instead of YOLOv5) for small object detection. Tiles are cropped from the application_input_stream via dsp_utils::perform_dsp_multi_resize(). With the stream capped at 1080p, each 640×640 tile covers a larger portion of the frame, reducing effective resolution for small objects. I’d like to crop directly from the 4K buffer to maximize detection quality. I hope to minimise latency and maximise throughput while ensuring small object detection is reliable.

Questions:

  1. Is there a maximum resolution for application_input_streams on the Hailo-15H? Is 1920×1080 a hardware limit of the ISP multi-resize output, or configurable?

  2. If limited per-stream, is there a total bandwidth budget across all streams? Would removing sink0/sink1 allow sink2 to output at 4K?

  3. Is there an alternative path to get 4K buffers into the DSP for cropping (e.g., tapping into the ISP output before the multi-resize stage)?

Continuation of forum:

Thank you!

The Hailo Community currently supports our AI Accelerator products only.
For AI Vision Processors questions, please fill out the product inquiry form, and our team will get back to you shortly. Hailo AI Product Inquiry: Connect with Our AI Experts

The Hailo Community currently supports our AI Accelerator products only.
For AI Vision Processors questions, please fill out the product inquiry form, and our team will get back to you shortly. Hailo AI Product Inquiry: Connect with Our AI Experts