Files
GSS2Rework/GSS2.Test/ViewModels/CameraViewModel.cs
T

33 lines
877 B
C#

using GSS2.Core.Hardware;
using LibCameraSharp;
namespace GSS2.Test.ViewModels;
public class CameraViewModel : ViewModelBase
{
private readonly CameraService _cameraService;
private readonly ILogger<CameraViewModel> _logger;
public CameraViewModel(CameraService cameraService, ILogger<CameraViewModel> logger)
{
_cameraService = cameraService;
_logger = logger;
_logger.LogInformation("Initialized");
}
public async Task<(FrameBuffer, StreamConfiguration)?> CaptureImage(int bufferId)
{
(FrameBuffer, StreamConfiguration)? result = null;
try
{
result = await _cameraService.CaptureViewFinderBuffer(bufferId, CancellationToken.None);
}
catch (Exception e)
{
_logger.LogError(e, "Error while image capture");
}
return result;
}
}