WinRT glue for video I/O#
Detailed Description#
Enumerations#
enum cv {
OPEN_CAMERA = 300,
CLOSE_CAMERA,
UPDATE_IMAGE_ELEMENT,
SHOW_TRACKBAR
}Enumeration Type Documentation#
enum#
#include <opencv2/videoio/cap_winrt.hpp>
Enumerator:
|
|
|
|
Function Documentation#
winrt_imshow()#
void cv::winrt_imshow()
#include <opencv2/videoio/cap_winrt.hpp>
Note
Must be called to update attached image source. Code sample is available for winrt_startMessageLoop().
winrt_onVisibilityChanged()#
void cv::winrt_onVisibilityChanged(bool visible)
#include <opencv2/videoio/cap_winrt.hpp>
Note
Must be called from WinRT specific callback to handle image grabber state. Here is how the class can be used:
MainPage::MainPage()
{
// ...
Window::Current->VisibilityChanged += ref new Windows::UI::Xaml::WindowVisibilityChangedEventHandler(this, &Application::MainPage::OnVisibilityChanged);
// ...
}
void Application::MainPage::OnVisibilityChanged(Platform::Object ^sender,
Windows::UI::Core::VisibilityChangedEventArgs ^e)
{
cv::winrt_onVisibilityChanged(e->Visible);
}
winrt_setFrameContainer()#
void cv::winrt_setFrameContainer(::Windows::UI::Xaml::Controls::Image^ image)
#include <opencv2/videoio/cap_winrt.hpp>
Note
Must be called to assign WinRT control holding image you’re working with. Code sample is available for winrt_startMessageLoop().
winrt_startMessageLoop()#
template<typename ... Args>
void cv::winrt_startMessageLoop(
std::function< void(Args…)> && callback,
Args… args )
#include <opencv2/videoio/cap_winrt.hpp>
winrt_startMessageLoop()#
template<typename ... Args>
void cv::winrt_startMessageLoop(
voidArgs… callback,
Args… args )
#include <opencv2/videoio/cap_winrt.hpp>
winrt_startMessageLoop()#
template void cv::winrt_startMessageLoop(voidvoid callback)
#include <opencv2/videoio/cap_winrt.hpp>
Note
Starts (1) frame-grabbing loop and (2) message loop
Function passed as an argument must implement common OCV reading frames pattern (see cv::VideoCapture documentation) AND call cv::winrt_imgshow().
Message processing loop required to overcome WinRT container and type conversion restrictions. OCV provides default implementation Here is how the class can be used: