The tutorial code snippets operate with NV12 data surfaces provided by Intel® Media Server Studio. It takes input Intel® Media Server Studio surface data and passes it to input OpenVX graph image. The output image is retrieved from the OpenVX graph and submitted to Intel® Media Server Studio pipeline for further processing.
Upon Intel ® Media Server Studio surface lock (which is mandatory), the plugin code is organized to avoid unnecessary data copying and further data sharing with OpenVX. The following plugin methods contain the key parts of code:
mfxStatus Canny::PluginInitcontains Intel® Media Server Studio core interface initialization and OpenVX context and graph creation.
mfxStatus Canny::Executecontain the main processing method invocation. OpenVX image data objects creation, graph construction and verification are performed here as well, once for the very first incoming frame.
mfxStatus CannyOVX::Processis the place where the main data sharing and OpenVX graph processing is performed.
mfxStatus Canny::PluginCloseperforms release of allocated OpenVX resources.
See next chapters to find more details on