public void StartPreview(int previewWidth, int previewHeight, UVCCameraPixelFormat pixelFormat) { if (_uvcCameraActivity != null) { _uvcCameraActivity.Call("StartPreview", previewWidth, previewHeight, (int)pixelFormat); } }
public void ChangePreviewFormat(UVCCameraPixelFormat pixelFormat) { if (_uvcCameraActivity != null) { _uvcCameraActivity.Call("ChangePreviewFormat", (int)pixelFormat); } }
// Update is called once per frame void OnGUI() { int offset = 10; if (GUI.Button(new Rect(10, offset, 200, 50), "Query")) { Query(); } offset += 60; for (int i = 0; i < _devices.Count; i++) { if (GUI.Button(new Rect(10, offset, 200, 50), _devices[i])) { _interface.Connect( deviceName: _devices[i]); } offset += 60; } #if USE_OPENCV if (!_doConversionToMat) { if (GUI.Button(new Rect(10, offset, 200, 50), "Enable Mat Conv")) { _doConversionToMat = true; } offset += 60; } else { if (GUI.Button(new Rect(10, offset, 200, 50), "Disable Mat Conv")) { _doConversionToMat = false; } offset += 60; } #endif if (!_doTextureConversion) { if (GUI.Button(new Rect(10, offset, 200, 50), "Enable Tex Conv")) { _doTextureConversion = true; } offset += 60; } else { if (GUI.Button(new Rect(10, offset, 200, 50), "Disable Tex Conv")) { _doTextureConversion = false; } offset += 60; } bool isConnected = _interface.GetIsConnected(); if (isConnected) { if (GUI.Button(new Rect(10, offset, 200, 50), "Disconnect")) { _interface.Disconnect(); } offset += 60; bool isPreviewing = _interface.GetIsPreviewing(); bool changed = false; if (GUI.Button(new Rect(10, offset, 200, 50), "StartPreview")) { _interface.StartPreview(Width, Height, PixelFormat); changed = true; } offset += 60; int offset2 = 10; if (GUI.Button(new Rect(220, offset2, 200, 50), UVCCameraPixelFormat.PIXEL_FORMAT_NV21.ToString())) { PixelFormat = UVCCameraPixelFormat.PIXEL_FORMAT_NV21; changed = true; } offset2 += 60; if (GUI.Button(new Rect(220, offset2, 200, 50), UVCCameraPixelFormat.PIXEL_FORMAT_RAW.ToString())) { PixelFormat = UVCCameraPixelFormat.PIXEL_FORMAT_RAW; changed = true; } offset2 += 60; if (GUI.Button(new Rect(220, offset2, 200, 50), UVCCameraPixelFormat.PIXEL_FORMAT_RGB565.ToString())) { PixelFormat = UVCCameraPixelFormat.PIXEL_FORMAT_RGB565; changed = true; } offset2 += 60; if (GUI.Button(new Rect(220, offset2, 200, 50), UVCCameraPixelFormat.PIXEL_FORMAT_RGBX.ToString())) { PixelFormat = UVCCameraPixelFormat.PIXEL_FORMAT_RGBX; changed = true; } offset2 += 60; if (GUI.Button(new Rect(220, offset2, 200, 50), UVCCameraPixelFormat.PIXEL_FORMAT_YUV.ToString())) { PixelFormat = UVCCameraPixelFormat.PIXEL_FORMAT_YUV; changed = true; } offset2 += 60; if (GUI.Button(new Rect(220, offset2, 200, 50), UVCCameraPixelFormat.PIXEL_FORMAT_YUV420SP.ToString())) { PixelFormat = UVCCameraPixelFormat.PIXEL_FORMAT_YUV420SP; changed = true; } offset2 += 60; // if (isPreviewing && changed) { _interface.ChangePreviewFormat(PixelFormat); } if (!isPreviewing) { // resolutions var resolutions = _interface.GetSupportedResolutions(); int offset3 = 10; if (resolutions != null) { foreach (var resolution in resolutions) { if (GUI.Button(new Rect(430, offset3, 200, 50), resolution)) { string[] res = resolution.ToString().Split('x'); Width = int.Parse(res[0]); Height = int.Parse(res[1]); if (_outputTexture != null) { _outputTexture = null; } } offset3 += 60; } } } } }