Ejemplo n.º 1
0
        public void Initialise()
        {
            DisableComponent();

            var camConfig = new MmalParameterCameraConfigType(
                new MmalParameterHeaderType(MmalParametersCamera.MmalParameterCameraConfig, Marshal.SizeOf <MmalParameterCameraConfigType>()),
                CameraInfo.MaxWidth,
                CameraInfo.MaxHeight,
                0,
                1,
                CameraConfig.Resolution.Width,
                CameraConfig.Resolution.Height,
                3 + Math.Max(0, (new MmalRational(CameraConfig.Framerate).Num - 30) / 10),
                0,
                0,
                CameraConfig.ClockMode);

            this.SetCameraConfig(camConfig);

            MmalLog.Logger.LogDebug("Camera config set");

            Control.Start();

            MmalLog.Logger.LogDebug("Configuring camera parameters.");

            SetCameraParameters();

            InitialisePreview();
            InitialiseVideo();
            InitialiseStill();

            EnableComponent();

            MmalLog.Logger.LogDebug("Camera component configured.");
        }
Ejemplo n.º 2
0
 internal static void SetCameraConfig(this MmalCameraComponent camera, MmalParameterCameraConfigType value)
 {
     MmalCheck(MmalPort.SetParameter(camera.Control.Ptr, &value.Hdr), "Unable to set camera config.");
 }