Exemple #1
0
        public LocatableCamera(LocatableCameraProfile cameraProfile, ColorFormat format)
        {
#if !ENABLE_WINMD_SUPPORT
            throw new InvalidOperationException("LocatableCamera is only supported on UWP. Use MonoCamera in Unity Editor.");
#endif
            _cameraProfile = cameraProfile;
            _format        = format;
            _logger        = new Logger(new LogHandler());
            Assert.IsNotNull(_logger, "_logger != null");
#if ENABLE_WINMD_SUPPORT
            Assert.IsNotNull(WorldOrigin, "worldOrigin != null");
#endif
        }
Exemple #2
0
 private void ChangeVideoParameter(LocatableCameraProfile parameter, ColorFormat format)
 {
     // skip first change
     if (videoParameterSelectionInit)
     {
         if (_status != Status.Running)
         {
             return;
         }
         CameraService.ChangeVideoParameter(parameter, format);
         Debug.Log($"Changed video parameter to {parameter} and format {format}");
     }
     else
     {
         videoParameterSelectionInit = true;
     }
 }
        /// <summary>
        /// Stops the camera and creates a new <see cref="ICamera">camera</see> with a new profile and format.
        /// </summary>
        public async void ChangeVideoParameter(LocatableCameraProfile profile, ColorFormat format)
        {
            await _camera.StopCapture();

            _cameraServiceProfile.format = format;
            _camera.FrameArrived        -= OnFrameArrived;
            _camera.CameraInitialized   -= OnCameraInitialized;
#if ENABLE_WINMD_SUPPORT
            _camera = new LocatableCamera(profile, format);
#else
            _camera = new MonoCamera(format);
#endif
            _camera.FrameArrived      += OnFrameArrived;
            _camera.CameraInitialized += OnCameraInitialized;
            await _camera.Initialize();

            await _camera.StartCapture();
        }
        public CameraParameters(LocatableCameraProfile profile)
        {
            switch (profile)
            {
            case LocatableCameraProfile.HL2_424x240_15:
                CameraResolutionWidth  = 424;
                CameraResolutionHeight = 240;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_424x240_30:
                CameraResolutionWidth  = 424;
                CameraResolutionHeight = 240;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_500x282_15:
                CameraResolutionWidth  = 500;
                CameraResolutionHeight = 282;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_500x282_30:
                CameraResolutionWidth  = 500;
                CameraResolutionHeight = 282;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_640x360_15:
                CameraResolutionWidth  = 640;
                CameraResolutionHeight = 360;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_640x360_30:
                CameraResolutionWidth  = 640;
                CameraResolutionHeight = 360;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_760x428_15:
                CameraResolutionWidth  = 760;
                CameraResolutionHeight = 428;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_760x428_30:
                CameraResolutionWidth  = 760;
                CameraResolutionHeight = 428;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_960x540_15:
                CameraResolutionWidth  = 960;
                CameraResolutionHeight = 540;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_960x540_30:
                CameraResolutionWidth  = 960;
                CameraResolutionHeight = 540;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_1128x636_15:
                CameraResolutionWidth  = 1128;
                CameraResolutionHeight = 636;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_1128x636_30:
                CameraResolutionWidth  = 1128;
                CameraResolutionHeight = 636;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_1280x720_15:
                CameraResolutionWidth  = 1280;
                CameraResolutionHeight = 720;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_1280x720_30:
                CameraResolutionWidth  = 1280;
                CameraResolutionHeight = 720;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_1504x846_5:
                CameraResolutionWidth  = 1504;
                CameraResolutionHeight = 846;
                FrameRate = 5.0f;
                break;

            case LocatableCameraProfile.HL2_1504x846_10:
                CameraResolutionWidth  = 1504;
                CameraResolutionHeight = 846;
                FrameRate = 5.0f;
                break;

            case LocatableCameraProfile.HL2_1504x846_15:
                CameraResolutionWidth  = 1504;
                CameraResolutionHeight = 846;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_1504x846_30:
                CameraResolutionWidth  = 1504;
                CameraResolutionHeight = 846;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_1504x846_60:
                CameraResolutionWidth  = 1504;
                CameraResolutionHeight = 846;
                FrameRate = 60.0f;
                break;

            case LocatableCameraProfile.HL2_1920x1080_15:
                CameraResolutionWidth  = 1920;
                CameraResolutionHeight = 1080;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_1920x1080_30:
                CameraResolutionWidth  = 1920;
                CameraResolutionHeight = 1080;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_1952x1100_15:
                CameraResolutionWidth  = 1952;
                CameraResolutionHeight = 1100;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_1952x1100_30:
                CameraResolutionWidth  = 1952;
                CameraResolutionHeight = 1100;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_1952x1100_60:
                CameraResolutionWidth  = 1952;
                CameraResolutionHeight = 1100;
                FrameRate = 60.0f;
                break;

            case LocatableCameraProfile.HL2_896x504_15:
                CameraResolutionWidth  = 896;
                CameraResolutionHeight = 504;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_896x504_30:
                CameraResolutionWidth  = 896;
                CameraResolutionHeight = 504;
                FrameRate = 30.0f;
                break;

            case LocatableCameraProfile.HL2_2272x1278_15:
                CameraResolutionWidth  = 2272;
                CameraResolutionHeight = 1278;
                FrameRate = 15.0f;
                break;

            case LocatableCameraProfile.HL2_2272x1278_30:
                CameraResolutionWidth  = 2272;
                CameraResolutionHeight = 1278;
                FrameRate = 30.0f;
                break;

            default:
                throw new ArgumentException("Parameter not supported");
            }
        }