Esempio n. 1
0
// возвращает список устройств видео-захвата в формате json
QStringList getVideoCaptureDevices()
{
#ifdef Q_OS_WIN32
    return getCaptureDevices(CLSID_VideoInputDeviceCategory);
#elif defined Q_OS_UNIX
    return getVideoCaptureDevicesQt();
#endif

}
Esempio n. 2
0
FREObject listDevices(FREContext ctx, void* funcData, uint32_t argc, FREObject argv[])
{

    int32_t i, numDevices = 0;
    CaptureDeviceInfo devices[MAX_ACTIVE_CAMS * 2];

    int32_t refresh = 0;
    FREGetObjectAsInt32(argv[0], &refresh);

    numDevices = getCaptureDevices(devices, refresh);

    FREObject objectBA = argv[1];
    FREByteArray baData;

    FREAcquireByteArray(objectBA, &baData);

    uint8_t *ba = baData.bytes;

    ba += ba_write_int(ba, numDevices);

    for (i = 0; i < numDevices; i++)
    {
        const CaptureDeviceInfo *dev = &devices[i];

        ba += ba_write_int(ba, dev->name_size);
        memcpy( ba, (uint8_t*)dev->name, dev->name_size ); 
        ba += dev->name_size;

        ba += ba_write_int(ba, dev->available);
        ba += ba_write_int(ba, dev->connected);

        //printf("device (%d): %s  \n", i, dev->name);
    }

    FREReleaseByteArray(objectBA);

    return NULL;
}