You will need to reimplement QAbstractVideoFilter::createFilterRunnable
, which will return your custom filter class inherited from QVideoFilterRunnable
. This allows you to declare and implement any interface, parameters and communication in your class, which will affect video filtering/processing.
So, you'll have two own classes:
- Inherited from QAbstractVideoFilter
- Inherited from QVideoFilterRunnable
You can make changes in each one, but I recommend you to make your interface in QAbstractVideoFilter
and then forward to spawned QVideoFilterRunnable
.
To make your interface work in QML, you should:
- Register your class with
qmlRegisterType
- Use QML-compatible types (or/and register these types for QML)
- Use
Q_PROPERTY
and Q_INVOKABLE
where it's needed