On Fri Oct 20 18:27:14 2023 +0000, Zebediah Figura wrote:
strmbase is a framework which basically factors out a lot of the filter boilerplate. Most of the functions that are implemented in winegstreamer are callbacks within the strmbase framework. In an OOP sense they're virtual methods, and they're called with the filter CS already held (where necessary). In the case of something like IAMStreamSelect we're exposing new methods that aren't fed through strmbase first, and the default assumption in dshow is that things need to be thread safe, so those should take the filter lock before checking things like whether there's a peer.
I'll take that as "yes, the IMediaSeeking and IQualityControl functions are buggy, please don't make it worse".
Sure, can do.