Make kp::Algorithm and kp::Sequence internals protected for subclassing#452
Merged
axsaucedo merged 1 commit intoKomputeProject:masterfrom Apr 7, 2026
Merged
Make kp::Algorithm and kp::Sequence internals protected for subclassing#452axsaucedo merged 1 commit intoKomputeProject:masterfrom
axsaucedo merged 1 commit intoKomputeProject:masterfrom
Conversation
Member
|
Super interesting. This sounds quite interesting. WOuld be keen to learn more about other nuances here. To be honest we have also explored also ways to access the internal components, so we can integrate / extend. If you sign DCO we can merge. |
Signed-off-by: Troels Ynddal <troels@ynddal.dk>
Contributor
Author
|
Tried another rebase, let's see if that fixes the DCO |
axsaucedo
approved these changes
Apr 7, 2026
Member
axsaucedo
left a comment
There was a problem hiding this comment.
Great - it did, thanks - LGTM
|
@axsaucedo I added an issue with some more detail here: #454 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
At Veo Technologies, we are prototyping Kompute integration in a GStreamer pipeline so our custom GStreamer elements can leverage Vulkan in a simple and efficient way.
In order to make GStreamer and Kompute work together, we have to modify the Sequence and Algorithm classes a bit. For
kp::Algorithmwe need to change the input and output buffers on our Algorithm for each execution, as GStreamer gives us new buffers with every call. In order to do this, we changed the member variables from private to protected and created a new Algorithm subclass that inherits fromkp::Algorithm.For kp::Sequence we did the same thing, making the member variables protected. GStreamer implements a mutex lock you need to acquire before calling
vk::Queue::submit, so our child class ofkp::Sequencewill acquire and release the lock before submitting to the queue.This PR only changes
privatetoprotectedfor member variables. If you think others may benefit from our locking/unlocking, I can make a separate PR for that too.