本文整理汇总了C++中openni::Device::getPlaybackControl方法的典型用法代码示例。如果您正苦于以下问题:C++ Device::getPlaybackControl方法的具体用法?C++ Device::getPlaybackControl怎么用?C++ Device::getPlaybackControl使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类openni::Device
的用法示例。
在下文中一共展示了Device::getPlaybackControl方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: openDevice
openni::Status openDevice(const char* uri, bool defaultRightColor)
{
openni::Status nRetVal = openni::OpenNI::initialize();
if (nRetVal != openni::STATUS_OK)
{
return nRetVal;
}
// Register to OpenNI events.
static OpenNIDeviceListener deviceListener;
openni::OpenNI::addDeviceDisconnectedListener(&deviceListener);
openni::OpenNI::addDeviceStateChangedListener(&deviceListener);
// Open the requested device.
nRetVal = g_device.open(uri);
if (nRetVal != openni::STATUS_OK)
{
return nRetVal;
}
g_pPlaybackControl = g_device.getPlaybackControl();
openCommon(g_device, defaultRightColor);
return openni::STATUS_OK;
}
示例2: openCommon
int openCommon(openni::Device& device, DeviceConfig config)
{
g_pPlaybackControl = g_device.getPlaybackControl();
int ret;
ret = openStream(device, "depth", openni::SENSOR_DEPTH, config.openDepth, g_depthStream, &g_depthSensorInfo, &g_bIsDepthOn);
if (ret != 0)
{
return ret;
}
ret = openStream(device, "color", openni::SENSOR_COLOR, config.openColor, g_colorStream, &g_colorSensorInfo, &g_bIsColorOn);
if (ret != 0)
{
return ret;
}
ret = openStream(device, "IR", openni::SENSOR_IR, config.openIR, g_irStream, &g_irSensorInfo, &g_bIsIROn);
if (ret != 0)
{
return ret;
}
initConstants();
readFrame();
return 0;
}
示例3: openDeviceFromList
openni::Status openDeviceFromList(bool defaultRightColor)
{
openni::Status rc = openni::OpenNI::initialize();
if (rc != openni::STATUS_OK)
{
return rc;
}
openni::Array<openni::DeviceInfo> deviceList;
openni::OpenNI::enumerateDevices(&deviceList);
for (int i = 0; i < deviceList.getSize(); ++i)
{
printf("[%d] %s [%s] (%s)\n", i+1, deviceList[i].getName(), deviceList[i].getVendor(), deviceList[i].getUri());
}
printf("\n");
int chosen = 1;
do
{
printf("Choose device to open (1) [0 to exit]: ");
int rc = scanf("%d", &chosen);
if (rc <= 0 || chosen == 0)
{
return openni::STATUS_ERROR;
}
} while (chosen < 1 || chosen > deviceList.getSize());
g_device.open(deviceList[chosen-1].getUri());
if (rc != openni::STATUS_OK)
{
return rc;
}
g_pPlaybackControl = g_device.getPlaybackControl();
openCommon(g_device, defaultRightColor);
return openni::STATUS_OK;
}
示例4: open
void open(const char* uri) {
if (device.open(uri) != openni::STATUS_OK)
BOOST_THROW_EXCEPTION(GrabberException("Failed to open device")
<< GrabberException::ErrorInfo(openni::OpenNI::getExtendedError()));
if (color_stream.create(device, openni::SENSOR_COLOR) != openni::STATUS_OK)
BOOST_THROW_EXCEPTION(GrabberException("Failed to create color stream")
<< GrabberException::ErrorInfo(openni::OpenNI::getExtendedError()));
openni::VideoMode color_mode;
color_mode.setFps(30);
color_mode.setResolution(color_image_resolution.width, color_image_resolution.height);
color_mode.setPixelFormat(openni::PIXEL_FORMAT_RGB888);
color_stream.setVideoMode(color_mode);
color_image_size = color_image_resolution.width * color_image_resolution.height * 3;
color_stream.setMirroringEnabled(false);
if (color_stream.start() != openni::STATUS_OK) {
color_stream.destroy();
BOOST_THROW_EXCEPTION(GrabberException("Failed to start color stream")
<< GrabberException::ErrorInfo(openni::OpenNI::getExtendedError()));
}
streams.push_back(&color_stream);
auto control = device.getPlaybackControl();
if (control != nullptr) {
// This is a file, make sure we get every frame
control->setSpeed(-1.0f);
control->setRepeatEnabled(false);
num_frames = control->getNumberOfFrames(color_stream);
is_file = true;
if (num_frames == -1)
BOOST_THROW_EXCEPTION(GrabberException("Unable to determine number of frames in ONI file"));
}
}