bool initVideoCapture(const QString& devid, const VideoFormat& fmt) { QString use_devid = devid; if(use_devid.isEmpty()) { int count = 1; QVector<VideoCaptureDevice> devs(1); TT_GetVideoCaptureDevices(&devs[0], &count); if(count) use_devid = _Q(devs[0].szDeviceID); } return TT_InitVideoCaptureDevice(ttInst, _W(use_devid), &fmt); }
void CVideoCapturePage::OnBnClickedButtonVidtest() { TT_CloseVideoCaptureDevice(ttInst); int iDev = m_wndVidDev.GetCurSel(); int iFormat = m_wndVidRes.GetItemData(m_wndVidRes.GetCurSel()); if(TT_InitVideoCaptureDevice(ttInst, m_videodevices[iDev].szDeviceID, &m_videodevices[iDev].videoFormats[iFormat])) { int fps = 30; if(m_videodevices[iDev].videoFormats[iFormat].nFPS_Denominator) fps = m_videodevices[iDev].videoFormats[iFormat].nFPS_Numerator / m_videodevices[iDev].videoFormats[iFormat].nFPS_Denominator; int msec = 1000 / fps; CUserVideoDlg dlg(0 | VIDEOTYPE_CAPTURE, msec, this); dlg.DoModal(); TT_CloseVideoCaptureDevice(ttInst); } else MessageBox(_T("Failed to start selected device"), _T("Test Selected"), MB_OK); }