Canon EDSDK установить точку фокусировки
Я пытаюсь изменить точку фокусировки на камере с click
в режиме просмотра в реальном времени с использованием библиотеки EDSDK. Я не могу понять, как это сделать, я имею в виду, не знаю, какое свойство я должен установить, чтобы изменить точку фокусировки. Ребята, у вас есть идея или образец? Кстати, я уже могу изменить некоторые другие значения, такие как ISO
, AV
, TV
или цветовая температура.
Заранее спасибо!
2 ответа
Установить EdsPoint
в kEdsPropID_Evf_ZoomPosition
до запуска команды фокусировки. Название "Zoom" немного сбивает с толку, но это свойство:
Получает / устанавливает фокус и положение границы масштабирования для просмотра в реальном времени. Граница фокуса и масштабирования устанавливается с помощью EdsCameraRef, но получается с использованием данных изображения в реальном времени, другими словами, с помощью EdsEvfImageRef.
Вы можете установить точку увеличения, добавив этот метод к классу камеры.
public void SetZoomPositionSetting(PropertyID propID, Point value, int inParam = 0)
{
CheckState();
int size = Marshal.SizeOf(typeof(Point));
ErrorCode err = CanonSDK.EdsSetPropertyData(CamRef, propID, inParam, size, value);
}
и вызвать этот метод, как это. MainCamera.SetZoomPositionSetting(PropertyID.Evf_ZoomPosition, p); Здесь p экземпляр EOSDigital.SDK.Point.
и не забудьте изменить настройку камеры в режим AF Live (не быстрый режим)