Skip to content

Fix gstaravis triggered sparse streams 0.8#1076

Open
0xa1da34ef wants to merge 1 commit into
AravisProject:aravis-0-8from
0xa1da34ef:fix-gstaravis-triggered-sparse-streams-0.8
Open

Fix gstaravis triggered sparse streams 0.8#1076
0xa1da34ef wants to merge 1 commit into
AravisProject:aravis-0-8from
0xa1da34ef:fix-gstaravis-triggered-sparse-streams-0.8

Conversation

@0xa1da34ef

Copy link
Copy Markdown

Add sparse stream handling for aravissrc

Backport of the sparse aravissrc stream handling change for the 0.8 branch.

This adds explicit timing and timeout policy controls so aravissrc can wait for sparse or triggered image streams without treating every empty buffer pop as a fatal error.

For triggered cameras, it is valid that no frame is available for some time. In that case the stream can still be healthy, so this change allows aravissrc to keep waiting when requested.

The existing fixed-rate behavior stays the default. Sparse timing skips fixed framerate caps and latency reporting, and GstBaseSrc unlock can interrupt waits cleanly.

Tested:

  • Built from source and tested on Debian 12.
  • Verified aravissrc through GStreamer with a Basler a2A1920-51gcBAS camera in triggered/sparse acquisition mode.

Backport sparse stream handling for triggered aravissrc pipelines to the 0.8 branch.

Add timing and timeout policy controls, avoid fixed framerate caps/latency for sparse timing, and let GstBaseSrc unlock interrupt buffer waits.
@EmmanuelP EmmanuelP changed the base branch from main to aravis-0-8 June 7, 2026 05:51
@EmmanuelP

Copy link
Copy Markdown
Contributor

Hi,

Did you adapt the patch for the aravis-0-8 branch, or is it just a cherry-pick ?

@EmmanuelP EmmanuelP added 5. Gstreamer Issue in GStreamer plugin 2. Needs informations Needs additional informations labels Jun 7, 2026
@0xa1da34ef

Copy link
Copy Markdown
Author

Hi,

This is just a straight cherry-pick from the corresponding change on main. No additional adaptations were required for the aravis-0-8 branch.

@EmmanuelP

Copy link
Copy Markdown
Contributor

Ok. I'll do the backport myself then.

@EmmanuelP EmmanuelP closed this Jun 10, 2026
@0xa1da34ef

Copy link
Copy Markdown
Author

Hi,

It is not a pure cherry-pick. The patch is based on the same change from main, but I adapted it for the aravis-0-8 branch because the aravissrc implementation differs between the branches. The functionality and intended behaviour are the same as in the main patch: keep the existing fixed-rate/default behaviour unchanged, add timeout-policy and timing-mode, avoid fixed framerate/latency handling for sparse timing, and allow GstBaseSrc unlock to interrupt waits cleanly. The main branch contains newer timing and latency handling code, while 0.8 still relies on older source timing logic (including the existing trigger-source based behaviour). As a result, the backport required adapting the implementation to the older plugin structure rather than applying the patch unchanged.

Sorry for the confusion in my previous answer.

@EmmanuelP EmmanuelP reopened this Jun 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2. Needs informations Needs additional informations 5. Gstreamer Issue in GStreamer plugin

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants