Due to an influx of spam, we have had to impose restrictions on new accounts. Please see this wiki page for instructions on how to get full permissions. Sorry for the inconvenience.
Admin message
The migration is almost done, at least the rest should happen in the background. There are still a few technical difference between the old cluster and the new ones, and they are summarized in this issue. Please pay attention to the TL:DR at the end of the comment.
While updating gst-plugins-rs with these changes, I noticed that many call sites could be simplified if the Pad inherited its name from its template by default. Use cases which require a specific name could use the builder. What do you think?
OTOH, that would mean we no longer get the default name assignment... But, we could use a generated_name() (or so) on the builder to use the default non-frequent behaviour.
Not sure, that seems like a potentially confusing change from the C behaviour. Also having this as a default behaviour can easily lead to name conflicts, e.g. if you have a bin with multiple elements and add ghostpads for all the "sink" pads.
I'm almost done with this changes (including the gst-plugins-rs update). I see variations on the way constructors are named. And I need to add new builder constructors so that all variations can define the optional name. These are the constructors for GhostPad currently:
from_static_template
builder_with_static_template
from_template
builder_with_template
with_target
from_template_with_target
The first 4 suggest a pattern: from_ for the option-less constructors and builder_with_ otherwise. However, constructor based on the target use with_. I get the from_ / with_ distinction for template and target. However, I'm unsure why builders would use with instead. Finally, I'm not sure I would like to add builder_with_template_with_target.
My suggestion would be to use from_ for template and with_ for target, for both the option-less constructors and builders. That would give us: