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.
The image rendering is done for every frame on purpose, so that if a downstream element stomps on the buffer (which it isn't supposed to, but...) it doesn't affect future buffers.
Also, this patch does not appear to handle changing properties correctly. It also will have problems after renegotiating caps.
Not sure if WONTFIX is the right resolution.
Having a static-red, static-black et.c variants would be nice (does not need to be all patterns). This comes handy in testing/profiling elements.
Laurent, would you be willing to rework the patch to add the static ones as new patterns (and fix it so that it handles renegotiation)? If so, please reopen.
I too think the current behaviour is desirable as default, but wouldn't object if a property was added that allows buffer re-use and avoids excessive repainting.
It's not videotestsrc's job to create output that might expose bugs in elements, its job is to create as perfect a signal/stream as possible, and this includes outputting buffers with freshly allocated data for each buffer IMHO.
FWIW, I don't necessarily think the current behavior is correct, I was just giving the reason why it was chosen.
The original purpose of videotestsrc was was to create the default pattern in as many formats as possible, and do it correctly and reliably. It helped uncover lots of bugs in other elements, in X drivers, etc. These days, everything else is just as reliable, plus we have a convenience library for video formats. (Which, btw, videotestsrc does not use, but that's another matter.) And now vts has lots of patterns and is useful for other purposes, so imo videotestsrc has outgrown that original purpose.
So I'm in favor of fixing up vts for repurposing. In particular, I like the idea of not regenerating the same buffer. I also like the idea of generating a scan line and then memcpy'ing a bunch of times for patterns like smpte and checkers-*. I'm also in favor of using libgstvideo. And any changes that can make it more Orc friendly.