add HIKROBOT support

This commit is contained in:
Edward Emelianov 2022-12-21 15:41:54 +03:00
parent a83309143e
commit 5033b9b096
9 changed files with 820 additions and 268 deletions

View File

@ -70,23 +70,20 @@ if(DEFINED IMAGEVIEW AND IMAGEVIEW STREQUAL "yes")
endif()
add_subdirectory(Dummy_cameras)
#list(APPEND ${PROJ}_INCLUDE_DIRS Dummy_cameras)
#list(APPEND ${PROJ}_LIBRARIES ${DUMMYLIB})
#include_directories(Dummy_cameras)
#add_custom_target(plugins)
#add_dependencies(plugins devdummy)
# additional modules with CCD/CMOS support
if(DEFINED ZWO AND ZWO STREQUAL "yes")
add_subdirectory(ZWO_cameras)
endif()
# additional modules with CCD/CMOS support
if(DEFINED FLI AND FLI STREQUAL "yes")
add_subdirectory(FLI_cameras)
endif()
if(DEFINED HIKROBOT AND HIKROBOT STREQUAL "yes")
add_subdirectory(HIKROBOT_cameras)
endif()
# directory should contain dir locale/ru for gettext translations
set(LCPATH ${CMAKE_SOURCE_DIR}/locale/ru)

View File

@ -0,0 +1,12 @@
cmake_minimum_required(VERSION 3.20)
set(CCDLIB devhikrobot)
find_package(PkgConfig REQUIRED)
pkg_check_modules(${CCDLIB} REQUIRED mvs>=2.1 usefull_macros)
aux_source_directory(${CMAKE_CURRENT_SOURCE_DIR} SRC)
include_directories(${${CCDLIB}_INCLUDE_DIRS} ..)
link_directories(${${CCDLIB}_LIBRARY_DIRS})
add_library(${CCDLIB} SHARED ${SRC})
target_link_libraries(${CCDLIB} ${${CCDLIB}_LIBRARIES} -fPIC)

543
HIKROBOT_cameras/mvsfunc.c Normal file
View File

@ -0,0 +1,543 @@
/*
* This file is part of the CCD_Capture project.
* Copyright 2022 Edward V. Emelianov <edward.emelianoff@gmail.com>.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include <MvCameraControl.h>
#include <math.h>
#include <stdio.h>
#include <string.h>
#include <usefull_macros.h>
#include "basestructs.h"
#ifndef FLT_EPSILON
#define FLT_EPSILON 1.19209290E-07F
#endif
extern Camera camera;
static MV_CC_DEVICE_INFO_LIST stDeviceList;
static void *handle = NULL;
static char camname[BUFSIZ] = {0};
//static long cam_err, tmpl;
static capture_status capStatus = CAPTURE_NO;
static int curhbin = 1, curvbin = 1;
static double starttime = 0.; // time when exposure started
static float exptime = 0.; // exposition time (in seconds)
static MV_FRAME_OUT_INFO_EX stImageInfo = {0}; // last image info
static uint16_t *pdata = NULL;
static int pdatasz = 0;
static struct{
float maxgain;
float mingain;
float maxbright;
float minbright;
float minexp;
float maxexp;
int maxbin;
} extrvalues = {0}; // extremal values
static int changeenum(const char *key, uint32_t val){
if(!handle) return FALSE;
MVCC_ENUMVALUE e;
if(MV_OK != MV_CC_GetEnumValue(handle, key, &e)){
WARNX("Enum '%s' is absent", key);
return FALSE;
}
if(e.nCurValue == val) return TRUE;
if(MV_OK != MV_CC_SetEnumValue(handle, key, val)){
WARNX("Cant change %s to %d, supported values are:", key, val);
for(int i = 0; i < (int)e.nSupportedNum; ++i){
fprintf(stderr, "%s%u", i ? ", " : "", e.nSupportValue[i]);
}
fprintf(stderr, "\n");
return FALSE;
}
if(MV_OK != MV_CC_GetEnumValue(handle, key, &e)) return FALSE;
if(e.nCurValue == val) return TRUE;
WARNX("New value of '%s' changed to %d, not to %d", key, e.nCurValue, val);
return FALSE;
}
static int changeint(const char *key, uint32_t val){
if(!handle) return FALSE;
MVCC_INTVALUE i;
if(MV_OK != MV_CC_GetIntValue(handle, key, &i)){
WARNX("Int '%s' is absent", key);
return FALSE;
}
if(i.nCurValue == val) return TRUE;
if(MV_OK != MV_CC_SetIntValue(handle, key, val)){
WARNX("Cant change %s to %u; available range is %u..%u", key, val, i.nMin, i.nMax);
return FALSE;
}
if(MV_OK != MV_CC_GetIntValue(handle, key, &i)) return FALSE;
if(i.nCurValue == val) return TRUE;
WARNX("New value of '%s' changed to %d, not to %d", key, i.nCurValue, val);
return FALSE;
}
static int changefloat(const char *key, float val){
if(!handle) return FALSE;
MVCC_FLOATVALUE f;
if(MV_OK != MV_CC_GetFloatValue(handle, key, &f)){
WARNX("Float '%s' is absent", key);
return FALSE;
}
if(fabs(f.fCurValue - val) < FLT_EPSILON) return TRUE;
if(MV_OK != MV_CC_SetFloatValue(handle, key, val)){
WARNX("Cant change %s to %g; available range is %g..%g", key, val, f.fMin, f.fMax);
return FALSE;
}
if(MV_OK != MV_CC_GetFloatValue(handle, key, &f)) return FALSE;
if(fabs(f.fCurValue - val) < FLT_EPSILON) return TRUE;
WARNX("New value of '%s' changed to %g, not to %g", key, f.fCurValue, val);
return FALSE;
}
static int cam_setbin(int binh, int binv){
FNAME();
if(!handle) return FALSE;
if(!changeenum("BinningHorizontal", binh)) return FALSE;
if(!changeenum("BinningVertical", binv)) return FALSE;
curhbin = binh;
curvbin = binv;
return TRUE;
}
static int cam_getbin(int *h, int *v){
MVCC_ENUMVALUE e;
if(MV_OK != MV_CC_GetEnumValue(handle, "BinningHorizontal", &e)) return FALSE;
curhbin = e.nCurValue;
//printf("Hbin supported = %d", e.nSupportedNum);
//for(int i = 0; i < (int)e.nSupportedNum; ++i) printf("\t%d", e.nSupportValue[i]);
if(MV_OK != MV_CC_GetEnumValue(handle, "BinningVertical", &e)) return FALSE;
curvbin = e.nCurValue;
//printf("Vbin supported = %d", e.nSupportedNum);
//for(int i = 0; i < (int)e.nSupportedNum; ++i) printf("\t%d", e.nSupportValue[i]);
if(h) *h = curhbin;
if(v) *v = curvbin;
return TRUE;
}
static int cam_getgain(float *g){
if(!handle) return FALSE;
MVCC_FLOATVALUE gain;
if(MV_OK != MV_CC_GetFloatValue(handle, "Gain", &gain)) return FALSE;
if(g) *g = gain.fCurValue;
extrvalues.maxgain = gain.fMax;
extrvalues.mingain = gain.fMin;
DBG("Gain: cur=%g, min=%g, max=%g", gain.fCurValue, gain.fMin, gain.fMax);
return TRUE;
}
static int cam_getmaxgain(float *g){
if(!handle) return FALSE;
if(g) *g = extrvalues.maxgain;
return TRUE;
}
static int cam_setgain(float g){
if(!handle) return FALSE;
return changefloat("Gain", g);
}
static int cam_getbright(float *b){
if(!handle) return FALSE;
MVCC_INTVALUE bright;
if(MV_OK != MV_CC_GetIntValue(handle, "Brightness", &bright)){
return FALSE;
}
if(b) *b = bright.nCurValue;
extrvalues.maxgain = bright.nMax;
extrvalues.mingain = bright.nMin;
DBG("Brightness: cur=%d, min=%d, max=%d", bright.nCurValue, bright.nMin, bright.nMax);
return TRUE;
}
static int cam_setbright(float b){
if(!handle) return FALSE;
return changeint("Brightness", (uint32_t)b);
}
static void PrintDeviceInfo(MV_CC_DEVICE_INFO* pstMVDevInfo){
if(!pstMVDevInfo) return;
if(pstMVDevInfo->nTLayerType == MV_GIGE_DEVICE){
int nIp1 = ((pstMVDevInfo->SpecialInfo.stGigEInfo.nCurrentIp & 0xff000000) >> 24);
int nIp2 = ((pstMVDevInfo->SpecialInfo.stGigEInfo.nCurrentIp & 0x00ff0000) >> 16);
int nIp3 = ((pstMVDevInfo->SpecialInfo.stGigEInfo.nCurrentIp & 0x0000ff00) >> 8);
int nIp4 = (pstMVDevInfo->SpecialInfo.stGigEInfo.nCurrentIp & 0x000000ff);
printf("Device Model Name: %s\n", pstMVDevInfo->SpecialInfo.stGigEInfo.chModelName);
strncpy(camname, (char*)pstMVDevInfo->SpecialInfo.stGigEInfo.chModelName, BUFSIZ-1);
printf("CurrentIp: %d.%d.%d.%d\n" , nIp1, nIp2, nIp3, nIp4);
printf("UserDefinedName: %s\n\n" , pstMVDevInfo->SpecialInfo.stGigEInfo.chUserDefinedName);
}else if (pstMVDevInfo->nTLayerType == MV_USB_DEVICE){
printf("Device Model Name: %s\n", pstMVDevInfo->SpecialInfo.stUsb3VInfo.chModelName);
printf("UserDefinedName: %s\n\n", pstMVDevInfo->SpecialInfo.stUsb3VInfo.chUserDefinedName);
strncpy(camname, (char*)pstMVDevInfo->SpecialInfo.stUsb3VInfo.chModelName, BUFSIZ-1);
}else {
printf("Not support.\n");
}
}
static void cam_closecam(){
DBG("CAMERA CLOSE");
if(handle){
MV_CC_StopGrabbing(handle);
if(MV_OK != MV_CC_CloseDevice(handle)) WARNX("Can't close opened camera");
if(MV_OK != MV_CC_DestroyHandle(handle)) WARNX("Can't destroy camera handle");
handle = NULL;
}
FREE(pdata);
pdatasz = 0;
}
static int cam_findCCD(){
DBG("Try to find HIKROBOT cameras .. ");
memset(&stDeviceList, 0, sizeof(MV_CC_DEVICE_INFO_LIST));
if(MV_OK != MV_CC_EnumDevices(MV_GIGE_DEVICE | MV_USB_DEVICE, &stDeviceList)){
WARNX("No HIKROBOT cameras found");
return FALSE;
}
camera.Ndevices = stDeviceList.nDeviceNum;
if(stDeviceList.nDeviceNum > 0){
for(uint32_t i = 0; i < stDeviceList.nDeviceNum; ++i){
DBG("[device %d]:\n", i);
MV_CC_DEVICE_INFO* pDeviceInfo = stDeviceList.pDeviceInfo[i];
if(!pDeviceInfo) continue;
PrintDeviceInfo(pDeviceInfo);
}
} else{
WARNX("No HIKROBOT cameras found");
return FALSE;
}
return TRUE;
}
static int cam_setActiceCam(int n){
DBG("SET ACTIVE #%d", n);
if(!camera.Ndevices && !cam_findCCD()) return FALSE;
if(n >= camera.Ndevices){
return FALSE;
}
cam_closecam();
if(MV_OK != MV_CC_CreateHandleWithoutLog(&handle, stDeviceList.pDeviceInfo[n])){
WARNX("Can't create camera handle");
return FALSE;
}
if(MV_OK != MV_CC_OpenDevice(handle, MV_ACCESS_Exclusive, 0)){
WARNX("Can't open camera file");
return FALSE;
}
if(stDeviceList.pDeviceInfo[n]->nTLayerType == MV_GIGE_DEVICE){
int nPacketSize = MV_CC_GetOptimalPacketSize(handle);
if(nPacketSize > 0){
if(!changeint("GevSCPSPacketSize", nPacketSize)){
WARNX("Can't set optimal packet size");
}
} else{
WARNX("Can't get optimal packet size");
}
}
// set software trigger
/* MVCC_ENUMVALUE enumval;
MV_CC_GetEnumValue(handle, "TriggerMode", &enumval);
DBG("TRmode: %d", enumval.nSupportedNum);
for(uint16_t i = 0; i < enumval.nSupportedNum; ++i) fprintf(stderr, "\t%d: %u\n", i, enumval.nSupportValue[i]);
*/
if(!changeenum("TriggerMode", MV_TRIGGER_MODE_OFF)){
WARNX("Can't turn off triggered mode");
return FALSE;
}
if(!changeenum("AcquisitionMode", MV_ACQ_MODE_SINGLE)){
WARNX("Can't set acquisition mode to single");
return FALSE;
}
if(!changeenum("ExposureMode", MV_EXPOSURE_MODE_TIMED)){
WARNX("Can't change exposure mode to timed");
return FALSE;
}
if(!changeenum("ExposureAuto", MV_EXPOSURE_AUTO_MODE_OFF)){
WARNX("Can't turn off auto exposure mode");
return FALSE;
}
if(!changeenum("GainAuto", 0)){
WARNX("Can't turn off auto gain");
return FALSE;
}
MVCC_ENUMVALUE EnumValue;
if(MV_OK == MV_CC_GetEnumValue(handle, "PixelFormat", &EnumValue)){
DBG("PixelFormat=%x", EnumValue.nCurValue);
#ifdef EBUG
for(int i = 0; i < (int)EnumValue.nSupportedNum; ++i) fprintf(stderr, "\t\t%x\n", EnumValue.nSupportValue[i]);
#endif
}
if(MV_OK == MV_CC_GetEnumValue(handle, "PixelSize", &EnumValue)){
DBG("PixelSize=%d", EnumValue.nCurValue);
#ifdef EBUG
for(int i = 0; i < (int)EnumValue.nSupportedNum; ++i) fprintf(stderr, "\t\t%d\n", EnumValue.nSupportValue[i]);
#endif
}
cam_getgain(NULL); // get extremal gain values
cam_getbright(NULL); // get extremal brightness values
cam_getbin(NULL, NULL); // get current binning
MVCC_FLOATVALUE FloatValue;
// get extremal exptime values
if(MV_OK != MV_CC_GetFloatValue(handle, "ExposureTime", &FloatValue)) WARNX("Can't get min/max exp");
else{
extrvalues.maxexp = FloatValue.fMax / 1e6;
extrvalues.minexp = FloatValue.fMin / 1e6;
exptime = FloatValue.fCurValue / 1e6;
}
printf("Min exp: %g s, max exp: %g s\n", extrvalues.minexp, extrvalues.maxexp);
camera.pixX = camera.pixY = 0.; // unknown
MVCC_INTVALUE IntValue;
camera.array.xoff = camera.array.yoff = 0;
int *values[6] = {&camera.array.w, &camera.array.h, &camera.geometry.w, &camera.geometry.h, &camera.geometry.xoff, &camera.geometry.yoff};
const char *names[2] = {"WidthMax", "HeightMax"};//, "Width", "Height", "OffsetX", "OffsetY"};
for(int i = 0; i < 2; ++i){
if(MV_OK != MV_CC_GetIntValue(handle, names[i], &IntValue)){
WARNX("Can't get %s", names[i]); return FALSE;
}
*values[i] = IntValue.nCurValue;
DBG("%s = %d", names[i], *values[i]);
}
camera.array.h *= curvbin;
camera.array.w *= curhbin;
camera.geometry = camera.array;
camera.field = camera.array;
pdatasz = camera.array.h * camera.array.w;
DBG("\t\t2*w*h = %d", pdatasz*2);
pdata = MALLOC(uint16_t, pdatasz); // allocate max available buffer
return TRUE;
}
static int cam_geomlimits(frameformat *l, frameformat *s){
if(l) *l = camera.array;
if(s) *s = (frameformat){.w = 1, .h = 1, .xoff = 1, .yoff = 1};
return TRUE;
}
static int cam_startexp(){
if(!handle || !pdata) return FALSE;
DBG("Start exposition");
MV_CC_StopGrabbing(handle);
if(MV_OK != MV_CC_StartGrabbing(handle)) return FALSE;
starttime = dtime();
capStatus = CAPTURE_PROCESS;
return TRUE;
}
static int cam_pollcapt(capture_status *st, float *remain){
if(!handle || !pdata) return FALSE;
DBG("capStatus = %d", capStatus);
if(capStatus == CAPTURE_READY){
DBG("Capture ends");
goto retn;
}
if(capStatus == CAPTURE_NO){ // start capture
goto retn;
}
if(capStatus == CAPTURE_PROCESS){
if(MV_OK == MV_CC_GetOneFrameTimeout(handle, (uint8_t*)pdata, pdatasz, &stImageInfo, 50)){
DBG("OK, ready");
if(remain) *remain = 0.f;
if(st) *st = CAPTURE_READY;
capStatus = CAPTURE_NO;
return TRUE;
}
DBG("not ready");
if(remain){
float diff = exptime - (dtime() - starttime);
DBG("diff = %g", diff);
if(diff < -5.0){
capStatus = CAPTURE_NO;
if(st) *st = CAPTURE_ABORTED;
return FALSE;
}
if(diff < 0.f) diff = 0.f;
*remain = diff;
}
}else{ // some error
if(st) *st = CAPTURE_ABORTED;
capStatus = CAPTURE_NO;
return FALSE;
}
retn:
if(st) *st = capStatus;
return TRUE;
}
static int cam_capt(IMG *ima){
if(!handle || !pdata) return FALSE;
if(!ima || !ima->data) return FALSE;
;
int bytes = ima->h*ima->w*2, stbytes = stImageInfo.nWidth * stImageInfo.nHeight * 2;
if(bytes != stbytes) WARNX("Different sizes of image buffer & grabbed image");
if(stbytes > bytes) bytes = stbytes;
DBG("Copy %d bytes (stbytes=%d)", bytes, stbytes);
MVCC_ENUMVALUE EnumValue;
if(MV_OK == MV_CC_GetEnumValue(handle, "PixelSize", &EnumValue)){
if(EnumValue.nCurValue == 16){
memcpy(ima->data, pdata, bytes);
}else if(EnumValue.nCurValue != 8){
WARNX("Unsupported pixel size");
return FALSE;
}
}
// transform 8bits to 16
DBG("TRANSFORM 8 bit to 16");
bytes /= 2;
uint8_t *ptr = (uint8_t*) pdata;
for(int i = 0; i < bytes; ++i){
ima->data[i] = (uint16_t) *ptr++;
}
return TRUE;
}
static int cam_modelname(char *buf, int bufsz){
strncpy(buf, camname, bufsz);
return TRUE;
}
static int cam_setgeometry(frameformat *f){
FNAME();
if(!f || !handle) return FALSE;
DBG("getbin");
if(!cam_getbin(NULL, NULL)) return FALSE;
DBG("set geom %dx%d (off: %dx%d)", f->w, f->h, f->xoff, f->yoff);
if(!changeint("Width", f->w * curhbin)) return FALSE;
if(!changeint("Height", f->h * curvbin)) return FALSE;
if(!changeint("OffsetX", f->xoff * curhbin)) return FALSE;
if(!changeint("OffsetY", f->yoff * curvbin)) return FALSE;
DBG("Success!");
return TRUE;
}
static int cam_settemp(float t){
if(!handle) return FALSE;
if(!changeenum("DeviceTemperatureSelector", 0)) return FALSE;
if(!changeenum("DeviceTemperature", t)) return FALSE;
return TRUE;
}
static int cam_gettemp(float *t){
MVCC_FLOATVALUE fl;
if(MV_OK != MV_CC_GetFloatValue(handle, "DeviceTemperature", &fl)) return FALSE;
if(t) *t = fl.fCurValue;
return TRUE;
}
static int cam_gettchip(float *t){
if(!handle) return FALSE;
changeenum("DeviceTemperatureSelector", 0); // there's can be camera without this enume
return cam_gettemp(t);
}
static int cam_gettbody(_U_ float *t){
if(!handle) return FALSE;
if(!changeenum("DeviceTemperatureSelector", 1)) return FALSE;
return cam_gettemp(t);
}
static void cam_cancel(){
if(!handle) return;
MV_CC_StopGrabbing(handle);
}
static int cam_shutter(_U_ shutter_op cmd){
return FALSE;
}
/*
static int cam_confio(int io){
if(!handle) return FALSE;
MVCC_ENUMVALUE e;
if(MV_OK != MV_CC_GetEnumValue(handle, "LineSelector", &e)) return FALSE;
int bit = 1;
for(int i = 0; i < (int)e.nSupportedNum; ++i, bit <<= 1){
green("line %d: %d\n", e.nSupportValue[i]);
if(io & bit) printf("bit %d\n", i);
}
return TRUE;
}
*/
static int cam_setexp(float t){ // t is in seconds!!
if(!handle) return FALSE;
if(!changefloat("ExposureTime", t*1e6)) return FALSE;
exptime = t;
return TRUE;
}
static int cam_setbitdepth(int i){
if(!handle) return FALSE;
int d = i ? 16 : 8;
if(!changeenum("PixelSize", d)) return FALSE;
d = i ? PixelType_Gvsp_Mono16 : PixelType_Gvsp_Mono8;
if(!changeenum("PixelFormat", d)) return FALSE;
return TRUE;
}
static int cam_setfanspd(_U_ fan_speed s){
return FALSE;
}
//static int cam_ffalse(_U_ float f){ return FALSE; }
static int cam_fpfalse(_U_ float *f){ return FALSE; }
static int cam_ifalse(_U_ int i){ return FALSE; }
static int cam_ipfalse(_U_ int *i){ return FALSE; }
/*
* Global objects: camera, focuser and wheel
*/
Camera camera = {
.check = cam_findCCD,
.close = cam_closecam,
.pollcapture = cam_pollcapt,
.capture = cam_capt,
.cancel = cam_cancel,
.startexposition = cam_startexp,
// setters:
.setDevNo = cam_setActiceCam,
.setbrightness = cam_setbright,
.setexp = cam_setexp,
.setgain = cam_setgain,
.setT = cam_settemp,
.setbin = cam_setbin,
.setnflushes = cam_ifalse,
.shuttercmd = cam_shutter,
.confio = cam_ifalse,
.setio = cam_ifalse,
.setframetype = cam_ifalse, // set DARK or NORMAL: no shutter -> no darks
.setbitdepth = cam_setbitdepth,
.setfastspeed = cam_ifalse,
.setgeometry = cam_setgeometry,
.setfanspeed = cam_setfanspd,
// getters:
.getbrightness = cam_getbright,
.getModelName = cam_modelname,
.getgain = cam_getgain,
.getmaxgain = cam_getmaxgain,
.getgeomlimits = cam_geomlimits,
.getTcold = cam_gettchip,
.getThot = cam_gettbody,
.getTbody = cam_fpfalse,
.getbin = cam_getbin,
.getio = cam_ipfalse,
};

View File

@ -760,6 +760,7 @@ void ccds(){
uint16_t *img = MALLOC(uint16_t, raw_width * raw_height);
DBG("\n\nAllocated image 2x%dx%d=%d", raw_width, raw_height, 2 * raw_width * raw_height);
IMG ima = {.data = img, .w = raw_width, .h = raw_height};
#ifdef IMAGEVIEW
windowData *mainwin = NULL;

View File

@ -8,6 +8,7 @@
#include <usefull_macros.h>
#include "cmdlnopts.h"
#include "basestructs.h"
#define DEFAULT_PID_FILE "/tmp/CCD_Capture.pid"

View File

@ -20,7 +20,6 @@
#ifndef CMDLNOPTS_H__
#define CMDLNOPTS_H__
#include "ccdfunc.h"
#include <usefull_macros.h>
/*

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-19 14:59+0300\n"
"POT-Creation-Date: 2022-12-21 15:25+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -17,231 +17,231 @@ msgstr ""
"Content-Type: text/plain; charset=koi8-r\n"
"Content-Transfer-Encoding: 8bit\n"
#: cmdlnopts.c:42
#: cmdlnopts.c:43
msgid "common device plugin (e.g devfli.so)"
msgstr ""
#: cmdlnopts.c:43
#: cmdlnopts.c:44
msgid "camera device plugin (e.g. devfli.so)"
msgstr ""
#: cmdlnopts.c:44
#: cmdlnopts.c:45
msgid "focuser device plugin (e.g. devzwo.so)"
msgstr ""
#: cmdlnopts.c:45
#: cmdlnopts.c:46
msgid "wheel device plugin (e.g. devdummy.so)"
msgstr ""
#: cmdlnopts.c:46
#: cmdlnopts.c:47
msgid "list connected devices"
msgstr ""
#: cmdlnopts.c:47
#: cmdlnopts.c:48
msgid "camera device number (if many: 0, 1, 2 etc)"
msgstr ""
#: cmdlnopts.c:48
#: cmdlnopts.c:49
msgid "filter wheel device number (if many: 0, 1, 2 etc)"
msgstr ""
#: cmdlnopts.c:49
#: cmdlnopts.c:50
msgid "focuser device number (if many: 0, 1, 2 etc)"
msgstr ""
#: cmdlnopts.c:50
#: cmdlnopts.c:51
msgid "show this help"
msgstr ""
#: cmdlnopts.c:51
#: cmdlnopts.c:52
msgid "rewrite output file if exists"
msgstr ""
#: cmdlnopts.c:52
#: cmdlnopts.c:53
msgid "verbose level (-V - messages, -VV - debug, -VVV - all shit)"
msgstr ""
#: cmdlnopts.c:53
#: cmdlnopts.c:54
msgid "not open shutter, when exposing (\"dark frames\")"
msgstr ""
#: cmdlnopts.c:54
#: cmdlnopts.c:55
msgid "run in 8-bit mode"
msgstr ""
#: cmdlnopts.c:55
#: cmdlnopts.c:56
msgid "fast readout mode"
msgstr ""
#: cmdlnopts.c:56
#: cmdlnopts.c:57
msgid "set CCD temperature to given value (degr C)"
msgstr ""
#: cmdlnopts.c:57
#: cmdlnopts.c:58
msgid "set fan speed (0 - off, 1 - low, 2 - high)"
msgstr ""
#: cmdlnopts.c:59
#: cmdlnopts.c:60
msgid "program author"
msgstr ""
#: cmdlnopts.c:60
#: cmdlnopts.c:61
msgid "object type (neon, object, flat etc)"
msgstr ""
#: cmdlnopts.c:61
#: cmdlnopts.c:62
msgid "instrument name"
msgstr ""
#: cmdlnopts.c:62
#: cmdlnopts.c:63
msgid "object name"
msgstr ""
#: cmdlnopts.c:63
#: cmdlnopts.c:64
msgid "observers' names"
msgstr ""
#: cmdlnopts.c:64
#: cmdlnopts.c:65
msgid "observing program name"
msgstr ""
#: cmdlnopts.c:65
#: cmdlnopts.c:66
msgid "add records to header from given file[s]"
msgstr ""
#: cmdlnopts.c:66
#: cmdlnopts.c:67
msgid "output file name"
msgstr ""
#: cmdlnopts.c:67
#: cmdlnopts.c:68
msgid "wait while exposition ends"
msgstr ""
#: cmdlnopts.c:69
#: cmdlnopts.c:70
msgid "N flushes before exposing (default: 1)"
msgstr ""
#: cmdlnopts.c:70
#: cmdlnopts.c:71
msgid "horizontal binning to N pixels"
msgstr ""
#: cmdlnopts.c:71
#: cmdlnopts.c:72
msgid "vertical binning to N pixels"
msgstr ""
#: cmdlnopts.c:72
#: cmdlnopts.c:73
msgid "make series of N frames"
msgstr ""
#: cmdlnopts.c:73
#: cmdlnopts.c:74
msgid "make pause for N seconds between expositions"
msgstr ""
#: cmdlnopts.c:74
#: cmdlnopts.c:75
msgid "set exposure time to given value (seconds!)"
msgstr ""
#: cmdlnopts.c:75
#: cmdlnopts.c:76
msgid "cancel current exposition"
msgstr ""
#: cmdlnopts.c:76
#: cmdlnopts.c:77
msgid ""
"absolute (not divided by binning!) frame X0 coordinate (-1 - all with "
"overscan)"
msgstr ""
#: cmdlnopts.c:77
#: cmdlnopts.c:78
msgid "absolute frame Y0 coordinate (-1 - all with overscan)"
msgstr ""
#: cmdlnopts.c:78
#: cmdlnopts.c:79
msgid "absolute frame X1 coordinate (-1 - all with overscan)"
msgstr ""
#: cmdlnopts.c:79
#: cmdlnopts.c:80
msgid "absolute frame Y1 coordinate (-1 - all with overscan)"
msgstr ""
#: cmdlnopts.c:81
#: cmdlnopts.c:82
msgid "open shutter"
msgstr ""
#: cmdlnopts.c:82
#: cmdlnopts.c:83
msgid "close shutter"
msgstr ""
#: cmdlnopts.c:83
#: cmdlnopts.c:84
msgid "run exposition on LOW @ pin5 I/O port"
msgstr ""
#: cmdlnopts.c:84
#: cmdlnopts.c:85
msgid "run exposition on HIGH @ pin5 I/O port"
msgstr ""
#: cmdlnopts.c:85
#: cmdlnopts.c:86
msgid "get value of I/O port pins"
msgstr ""
#: cmdlnopts.c:86
#: cmdlnopts.c:87
msgid "move stepper motor asynchronous"
msgstr ""
#: cmdlnopts.c:88
#: cmdlnopts.c:89
msgid "set I/O port pins to given value (decimal number, pin1 is LSB)"
msgstr ""
#: cmdlnopts.c:89
#: cmdlnopts.c:90
msgid ""
"configure I/O port pins to given value (decimal number, pin1 is LSB, 1 == "
"output, 0 == input)"
msgstr ""
#: cmdlnopts.c:91
#: cmdlnopts.c:92
msgid "move focuser to absolute position, mm"
msgstr ""
#: cmdlnopts.c:92
#: cmdlnopts.c:93
msgid "move focuser to relative position, mm (only for standalone)"
msgstr ""
#: cmdlnopts.c:94
#: cmdlnopts.c:95
msgid "set wheel position"
msgstr ""
#: cmdlnopts.c:96
#: cmdlnopts.c:97
msgid "CMOS gain level"
msgstr ""
#: cmdlnopts.c:97
#: cmdlnopts.c:98
msgid "CMOS brightness level"
msgstr ""
#: cmdlnopts.c:99
#: cmdlnopts.c:100
msgid "logging file name (if run as server)"
msgstr ""
#: cmdlnopts.c:100
#: cmdlnopts.c:101
msgid "UNIX socket name"
msgstr ""
#: cmdlnopts.c:101
#: cmdlnopts.c:102
msgid "local INET socket port"
msgstr ""
#: cmdlnopts.c:102
#: cmdlnopts.c:103
msgid "run as client"
msgstr ""
#: cmdlnopts.c:103
#: cmdlnopts.c:104
msgid "PID file (default: "
msgstr ""
#: cmdlnopts.c:104
#: cmdlnopts.c:105
msgid "restart image server"
msgstr ""
#: cmdlnopts.c:107
#: cmdlnopts.c:108
msgid "Display image in OpenGL window"
msgstr ""
@ -265,287 +265,287 @@ msgstr ""
msgid "Can't find wheel in plugin %s: %s"
msgstr ""
#: ccdfunc.c:155
#: ccdfunc.c:183
msgid "Camera device unknown"
msgstr ""
#: ccdfunc.c:161
#: ccdfunc.c:189
msgid "Neither filename nor filename prefix pointed!"
msgstr ""
#. Не могу сохранить файл
#: ccdfunc.c:180
#: ccdfunc.c:208
#, c-format
msgid "Can't save file with prefix %s"
msgstr ""
#: ccdfunc.c:334
#: ccdfunc.c:357
#, c-format
msgid "File saved as '%s'"
msgstr ""
#: ccdfunc.c:343
#: ccdfunc.c:366
msgid "Error saving file"
msgstr ""
#: ccdfunc.c:383
#: ccdfunc.c:406
#, c-format
msgid "Image stat:\n"
msgstr ""
#: ccdfunc.c:391
#: ccdfunc.c:414
msgid "Focuser device not pointed"
msgstr ""
#: ccdfunc.c:398
#: ccdfunc.c:421
msgid "No focusers found"
msgstr ""
#: ccdfunc.c:430
#: ccdfunc.c:453
#, c-format
msgid "Found %d focusers, you point number %d"
msgstr ""
#: ccdfunc.c:434
#: ccdfunc.c:457
msgid "Can't set active focuser number"
msgstr ""
#: ccdfunc.c:448
#: ccdfunc.c:471
msgid "Can't get focuser limit positions"
msgstr ""
#: ccdfunc.c:455
#: ccdfunc.c:478
msgid "Can't get current focuser position"
msgstr ""
#: ccdfunc.c:469
#: ccdfunc.c:492
#, c-format
msgid "Can't set position %g: out of limits [%g, %g]"
msgstr ""
#: ccdfunc.c:473
#: ccdfunc.c:496
msgid "Can't home focuser"
msgstr ""
#: ccdfunc.c:475
#: ccdfunc.c:498
#, c-format
msgid "Can't set position %g"
msgstr ""
#: ccdfunc.c:483
#: ccdfunc.c:506
msgid "Wheel device not pointed"
msgstr ""
#: ccdfunc.c:490
#: ccdfunc.c:513
msgid "No wheels found"
msgstr ""
#: ccdfunc.c:522
#: ccdfunc.c:545
#, c-format
msgid "Found %d wheels, you point number %d"
msgstr ""
#: ccdfunc.c:526
#: ccdfunc.c:549
msgid "Can't set active wheel number"
msgstr ""
#: ccdfunc.c:542
#: ccdfunc.c:565
msgid "Can't get max wheel position"
msgstr ""
#: ccdfunc.c:549
#: ccdfunc.c:572
#, c-format
msgid "Wheel position should be from 0 to %d"
msgstr ""
#: ccdfunc.c:553
#: ccdfunc.c:576
#, c-format
msgid "Can't set wheel position %d"
msgstr ""
#: ccdfunc.c:570
#: ccdfunc.c:593
#, c-format
msgid "%.1f seconds till exposition ends"
msgstr ""
#: ccdfunc.c:584
#: ccdfunc.c:607
msgid "Camera device not pointed"
msgstr ""
#: ccdfunc.c:591 ccdfunc.c:592
#: ccdfunc.c:614 ccdfunc.c:615
msgid "No cameras found"
msgstr ""
#: ccdfunc.c:627
#, c-format
msgid "Found %d cameras, you point number %d"
msgstr ""
#: ccdfunc.c:631
msgid "Can't set active camera number"
msgstr ""
#: ccdfunc.c:637
msgid "Can't set fan speed"
msgstr ""
#: ccdfunc.c:638
#, c-format
msgid "Set fan speed to %d"
msgstr ""
#: ccdfunc.c:643
#, c-format
msgid "Camera model: %s"
msgstr ""
#: ccdfunc.c:644
#, c-format
msgid "Pixel size: %g x %g"
msgstr ""
#: ccdfunc.c:650
#, c-format
msgid "Found %d cameras, you point number %d"
msgstr ""
#: ccdfunc.c:654
msgid "Can't set active camera number"
msgstr ""
#: ccdfunc.c:660
msgid "Can't set fan speed"
msgstr ""
#: ccdfunc.c:661
#, c-format
msgid "Set fan speed to %d"
msgstr ""
#: ccdfunc.c:666
#, c-format
msgid "Camera model: %s"
msgstr ""
#: ccdfunc.c:667
#, c-format
msgid "Pixel size: %g x %g"
msgstr ""
#: ccdfunc.c:673
#, c-format
msgid "Full array: %s"
msgstr ""
#: ccdfunc.c:653
#: ccdfunc.c:676
#, c-format
msgid "Field of view: %s"
msgstr ""
#: ccdfunc.c:656
#: ccdfunc.c:679
#, c-format
msgid "Can't set T to %g degC"
msgstr ""
#: ccdfunc.c:663
#: ccdfunc.c:686
#, c-format
msgid "Shutter command: %s\n"
msgstr ""
#: ccdfunc.c:665
#: ccdfunc.c:688
#, c-format
msgid "Can't run shutter command %s (unsupported?)"
msgstr ""
#. "Попытка сконфигурировать порт I/O как %d\n"
#: ccdfunc.c:669
#: ccdfunc.c:692
#, c-format
msgid "Try to configure I/O port as %d"
msgstr ""
#: ccdfunc.c:671
#: ccdfunc.c:694
msgid "Can't configure (unsupported?)"
msgstr ""
#: ccdfunc.c:677
#: ccdfunc.c:700
msgid "Can't get IOport state (unsupported?)"
msgstr ""
#. "Попытка записи %d в порт I/O\n"
#: ccdfunc.c:681
#: ccdfunc.c:704
#, c-format
msgid "Try to write %d to I/O port"
msgstr ""
#: ccdfunc.c:683
#: ccdfunc.c:706
msgid "Can't set IOport"
msgstr ""
#: ccdfunc.c:690
#: ccdfunc.c:713
#, c-format
msgid "Set gain to %g"
msgstr ""
#: ccdfunc.c:691
#: ccdfunc.c:714
#, c-format
msgid "Can't set gain to %g"
msgstr ""
#: ccdfunc.c:696
#: ccdfunc.c:719
#, c-format
msgid "Set brightness to %g"
msgstr ""
#: ccdfunc.c:697
#: ccdfunc.c:720
#, c-format
msgid "Can't set brightness to %g"
msgstr ""
#: ccdfunc.c:705 server.c:223
#: ccdfunc.c:728 server.c:223
#, c-format
msgid "Can't set binning %dx%d"
msgstr ""
#: ccdfunc.c:715 server.c:224
#: ccdfunc.c:738 server.c:224
msgid "Can't set given geometry"
msgstr ""
#: ccdfunc.c:719
#: ccdfunc.c:742
#, c-format
msgid "Can't set %d flushes"
msgstr ""
#: ccdfunc.c:723
#: ccdfunc.c:746
#, c-format
msgid "Can't set exposure time to %f seconds"
msgstr ""
#: ccdfunc.c:726
#: ccdfunc.c:749
msgid "Can't change frame type"
msgstr ""
#: ccdfunc.c:729
#: ccdfunc.c:752
msgid "Can't set bit depth"
msgstr ""
#: ccdfunc.c:731
#: ccdfunc.c:754
msgid "Can't set readout speed"
msgstr ""
#: ccdfunc.c:732
#: ccdfunc.c:755
#, c-format
msgid "Readout mode: %s"
msgstr ""
#: ccdfunc.c:733
#: ccdfunc.c:756
msgid "Only show statistics"
msgstr ""
#. GET binning should be AFTER setgeometry!
#: ccdfunc.c:735
#: ccdfunc.c:758
msgid "Can't get current binning"
msgstr ""
#: ccdfunc.c:748
#: ccdfunc.c:772
msgid "Can't open OpenGL window, image preview will be inaccessible"
msgstr ""
#. Захват кадра %d\n
#: ccdfunc.c:756
#: ccdfunc.c:780
#, c-format
msgid "Capture frame %d"
msgstr ""
#: ccdfunc.c:758 server.c:121
#: ccdfunc.c:782 server.c:121
msgid "Can't start exposition"
msgstr ""
#: ccdfunc.c:762 ccdfunc.c:784 ccdfunc.c:825
#: ccdfunc.c:786 ccdfunc.c:808 ccdfunc.c:849
msgid "Can't capture image"
msgstr ""
#: ccdfunc.c:765
#: ccdfunc.c:789
msgid "Read grabbed image"
msgstr ""
#: ccdfunc.c:768 ccdfunc.c:788 ccdfunc.c:829
#: ccdfunc.c:792 ccdfunc.c:812 ccdfunc.c:853
msgid "Can't grab image"
msgstr ""
#. %d секунд до окончания паузы\n
#: ccdfunc.c:805 client.c:260
#: ccdfunc.c:829 client.c:260
#, c-format
msgid "%d seconds till pause ends\n"
msgstr ""

View File

@ -7,7 +7,7 @@
msgid ""
msgstr "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2022-04-19 14:59+0300\n"
"POT-Creation-Date: 2022-12-20 15:47+0300\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@ -16,13 +16,13 @@ msgstr "Project-Id-Version: PACKAGE VERSION\n"
"Content-Type: text/plain; charset=koi8-r\n"
"Content-Transfer-Encoding: 8bit\n"
#: ccdfunc.c:570
#: ccdfunc.c:593
#, c-format
msgid "%.1f seconds till exposition ends"
msgstr "%.1f ÓÅËÕÎÄ ÄÏ ÏËÏÎÞÁÎÉÑ ÜËÓÐÏÚÉÃÉÉ"
#. %d Ñ<>екунд до окончаниÑ<C2B8> паузы\n
#: ccdfunc.c:805 client.c:260
#: ccdfunc.c:829 client.c:260
#, c-format
msgid "%d seconds till pause ends\n"
msgstr "%d ÓÅËÕÎÄ ÄÏ ÏËÏÎÞÁÎÉÑ ÐÁÕÚÙ\n"
@ -31,36 +31,36 @@ msgstr "%d
msgid "Already initialized!"
msgstr "õÖÅ ÉÎÉÃÉÁÌÉÚÉÒÏ×ÁÎÏ!"
#: cmdlnopts.c:97
#: cmdlnopts.c:98
msgid "CMOS brightness level"
msgstr "ÕÒÏ×ÅÎØ ÑÒËÏÓÔÉ CMOS"
#: cmdlnopts.c:96
#: cmdlnopts.c:97
msgid "CMOS gain level"
msgstr "ÕÒÏ×ÅÎØ Gain CMOS"
#: ccdfunc.c:584
#: ccdfunc.c:607
msgid "Camera device not pointed"
msgstr "õÓÔÒÏÊÓÔ×Ï Ó×ÅÏÐÒÉÅÍÎÉËÁ ÎÅ ÐÏÄËÌÀÞÅÎÏ"
#: ccdfunc.c:155
#: ccdfunc.c:183
msgid "Camera device unknown"
msgstr "õÓÔÒÏÊÓÔ×Ï Ó×ÅÏÐÒÉÅÍÎÉËÁ ÎÅ ÏÐÏÚÎÁÎÏ"
#: ccdfunc.c:643
#: ccdfunc.c:666
#, c-format
msgid "Camera model: %s"
msgstr "íÏÄÅÌØ Ó×ÅÔÏÐÒÉÅÍÎÉËÁ: %s"
#: ccdfunc.c:762 ccdfunc.c:784 ccdfunc.c:825
#: ccdfunc.c:786 ccdfunc.c:808 ccdfunc.c:849
msgid "Can't capture image"
msgstr "îÅ ÍÏÇÕ ÚÁÈ×ÁÔÉÔØ ÉÚÏÂÒÁÖÅÎÉÅ"
#: ccdfunc.c:726
#: ccdfunc.c:749
msgid "Can't change frame type"
msgstr "îÅ ÍÏÇÕ ÉÚÍÅÎÉÔØ ÔÉÐ ËÁÄÒÁ"
#: ccdfunc.c:671
#: ccdfunc.c:694
msgid "Can't configure (unsupported?)"
msgstr "îÅ ÍÏÇÕ ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÔØ (ÏÐÃÉÑ ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ?)"
@ -84,32 +84,32 @@ msgstr "
msgid "Can't find wheel in plugin %s: %s"
msgstr "îÅ ÍÏÇÕ ÎÁÊÔÉ ÐÌÁÇÉÎ ÔÕÒÅÌÉ %s: %s"
#: ccdfunc.c:677
#: ccdfunc.c:700
msgid "Can't get IOport state (unsupported?)"
msgstr "îÅ ÍÏÇÕ ÐÏÌÕÞÉÔØ ÓÏÓÔÏÑÎÉÅ ÐÏÒÔÁ I/O (ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ?)"
#. GET binning should be AFTER setgeometry!
#: ccdfunc.c:735
#: ccdfunc.c:758
msgid "Can't get current binning"
msgstr "îÅ ÍÏÇÕ ÐÏÌÕÞÉÔØ ÔÅËÕÝÅÅ ÚÎÁÞÅÎÉÅ ÂÉÎÎÉÎÇÁ"
#: ccdfunc.c:455
#: ccdfunc.c:478
msgid "Can't get current focuser position"
msgstr "îÅ ÍÏÇÕ ÏÐÒÅÄÅÌÉÔØ ÔÅËÕÝÕÀ ÐÏÚÉÃÉÀ ÆÏËÕÓÅÒÁ"
#: ccdfunc.c:448
#: ccdfunc.c:471
msgid "Can't get focuser limit positions"
msgstr "îÅ ÍÏÇÕ ÏÐÒÅÄÅÌÉÔØ ÐÒÅÄÅÌØÎÕÀ ÐÏÚÉÃÉÀ ÆÏËÕÓÅÒÁ"
#: ccdfunc.c:542
#: ccdfunc.c:565
msgid "Can't get max wheel position"
msgstr "îÅ ÍÏÇÕ ÏÐÒÅÄÅÌÉÔØ ÐÒÅÄÅÌØÎÕÀ ÐÏÚÉÃÉÀ ËÏÌÅÓÁ"
#: ccdfunc.c:768 ccdfunc.c:788 ccdfunc.c:829
#: ccdfunc.c:792 ccdfunc.c:812 ccdfunc.c:853
msgid "Can't grab image"
msgstr "îÅ ÍÏÇÕ ÚÁÈ×ÁÔÉÔØ ÉÚÏÂÒÁÖÅÎÉÅ"
#: ccdfunc.c:473
#: ccdfunc.c:496
msgid "Can't home focuser"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÆÏËÕÓÅÒ × ÎÕÌØ"
@ -121,109 +121,109 @@ msgstr "
msgid "Can't make exposition"
msgstr "îÅ ÍÏÇÕ ×ÙÐÏÌÎÉÔØ ÜËÓÐÏÚÉÃÉÀ"
#: ccdfunc.c:748
#: ccdfunc.c:772
msgid "Can't open OpenGL window, image preview will be inaccessible"
msgstr "îÅ ÍÏÇÕ ÏÔËÒÙÔØ ÏËÎÏ OpenGL, ÏÔÏÂÒÁÖÅÎÉÅ ÂÕÄÅÔ ÎÅÄÏÓÔÕÐÎÏ"
#: ccdfunc.c:665
#: ccdfunc.c:688
#, c-format
msgid "Can't run shutter command %s (unsupported?)"
msgstr "îÅ ÍÏÇÕ ×ÙÐÏÌÎÉÔØ ËÏÍÁÎÄÕ ÚÁÔ×ÏÒÁ %s (ÎÅ ÐÏÄÄÅÒÖÉ×ÁÅÔÓÑ?)"
#. Ð<>е могу Ñ<>охраниÑÑŒ файл
#: ccdfunc.c:180
#: ccdfunc.c:208
#, c-format
msgid "Can't save file with prefix %s"
msgstr "îÅ ÍÏÇÕ ÓÏÈÒÁÎÉÔØ ÆÁÊÌ Ó ÐÒÅÆÉËÓÏÍ %s"
#: ccdfunc.c:719
#: ccdfunc.c:742
#, c-format
msgid "Can't set %d flushes"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ %d ÓÂÒÏÓÏ×"
#: ccdfunc.c:683
#: ccdfunc.c:706
msgid "Can't set IOport"
msgstr "îÅ ÍÏÇÕ ÐÏÍÅÎÑÔØ ÚÎÁÞÅÎÉÑ ÐÏÒÔÁ I/O"
#: ccdfunc.c:656
#: ccdfunc.c:679
#, c-format
msgid "Can't set T to %g degC"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÔÅÍÐÅÒÁÔÕÒÕ × %g ÇÒÁÄã"
#: ccdfunc.c:631
#: ccdfunc.c:654
msgid "Can't set active camera number"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÎÏÍÅÒ ÁËÔÉ×ÎÏÊ ËÁÍÅÒÙ"
#: ccdfunc.c:434
#: ccdfunc.c:457
msgid "Can't set active focuser number"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÎÏÍÅÒ ÁËÔÉ×ÎÏÇÏ ÆÏËÕÓÅÒÁ"
#: ccdfunc.c:526
#: ccdfunc.c:549
msgid "Can't set active wheel number"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÎÏÍÅÒ ÁËÔÉ×ÎÏÇÏ ËÏÌÅÓÁ"
#: ccdfunc.c:705 server.c:223
#: ccdfunc.c:728 server.c:223
#, c-format
msgid "Can't set binning %dx%d"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÂÉÎÎÉÎÇ %dx%d"
#: ccdfunc.c:729
#: ccdfunc.c:752
msgid "Can't set bit depth"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÒÁÚÒÑÄÎÏÓÔØ áãð"
#: ccdfunc.c:697
#: ccdfunc.c:720
#, c-format
msgid "Can't set brightness to %g"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÑÒËÏÓÔØ × %g"
#: ccdfunc.c:723
#: ccdfunc.c:746
#, c-format
msgid "Can't set exposure time to %f seconds"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÜËÓÐÏÚÉÃÉÀ × %f ÓÅËÕÎÄ"
#: ccdfunc.c:637
#: ccdfunc.c:660
msgid "Can't set fan speed"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÓËÏÒÏÓÔØ ×ÅÎÔÉÌÑÔÏÒÏ×"
#: ccdfunc.c:691
#: ccdfunc.c:714
#, c-format
msgid "Can't set gain to %g"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ Gain × %g"
#: ccdfunc.c:715 server.c:224
#: ccdfunc.c:738 server.c:224
msgid "Can't set given geometry"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÇÅÏÍÅÔÒÉÀ"
#: ccdfunc.c:475
#: ccdfunc.c:498
#, c-format
msgid "Can't set position %g"
msgstr "îÅ ÍÏÇÕ ÉÚÍÅÎÉÔØ ÐÏÚÉÃÉÀ ÎÁ %g"
#: ccdfunc.c:469
#: ccdfunc.c:492
#, c-format
msgid "Can't set position %g: out of limits [%g, %g]"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÐÏÚÉÃÉÀ %g: ×ÎÅ ÐÒÅÄÅÌÏ× [%g, %g]"
#: ccdfunc.c:731
#: ccdfunc.c:754
msgid "Can't set readout speed"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÓËÏÒÏÓÔØ ÓÞÉÔÙ×ÁÎÉÑ"
#: ccdfunc.c:553
#: ccdfunc.c:576
#, c-format
msgid "Can't set wheel position %d"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÐÏÌÏÖÅÎÉÅ ËÏÌÅÓÁ %d"
#: ccdfunc.c:758 server.c:121
#: ccdfunc.c:782 server.c:121
msgid "Can't start exposition"
msgstr "îÅ ÍÏÇÕ ÎÁÞÁÔØ ÜËÓÐÏÚÉÃÉÀ"
#. Захват кадра %d\n
#: ccdfunc.c:756
#: ccdfunc.c:780
#, c-format
msgid "Capture frame %d"
msgstr "úÁÈ×ÁÔ ËÁÄÒÁ %d"
#: cmdlnopts.c:107
#: cmdlnopts.c:108
msgid "Display image in OpenGL window"
msgstr "ïÔÏÂÒÁÖÅÎÉÅ ÉÚÏÂÒÁÖÅÎÉÑ × ÏËÎÅ OpenGL"
@ -232,40 +232,40 @@ msgstr "
msgid "Equalization of histogram: %s"
msgstr "üË×ÁÌÉÚÁÃÉÑ ÇÉÓÔÏÇÒÁÍÍÙ: %s"
#: ccdfunc.c:343
#: ccdfunc.c:366
msgid "Error saving file"
msgstr "ïÛÉÂËÁ ÓÏÈÒÁÎÅÎÉÑ ÆÁÊÌÁ"
#: ccdfunc.c:653
#: ccdfunc.c:676
#, c-format
msgid "Field of view: %s"
msgstr "ðÏÌÅ ÚÒÅÎÉÑ: %s"
#: ccdfunc.c:334
#: ccdfunc.c:357
#, c-format
msgid "File saved as '%s'"
msgstr "æÁÊÌ ÓÏÈÒÁÎÅÎ ËÁË '%s'"
#: ccdfunc.c:391
#: ccdfunc.c:414
msgid "Focuser device not pointed"
msgstr "õÓÔÒÏÊÓÔ×Ï ÆÏËÕÓÅÒÁ ÎÅ ÕËÁÚÁÎÏ"
#: ccdfunc.c:627
#: ccdfunc.c:650
#, c-format
msgid "Found %d cameras, you point number %d"
msgstr "ïÂÎÁÒÕÖÅÎÏ %d ËÁÍÅÒ, ×Ù ÕËÁÚÁÌÉ %d"
#: ccdfunc.c:430
#: ccdfunc.c:453
#, c-format
msgid "Found %d focusers, you point number %d"
msgstr "ïÂÎÁÒÕÖÅÎÏ %d ÆÏËÕÓÅÒÏ×, ×Ù ÕËÁÚÁÌÉ %d"
#: ccdfunc.c:522
#: ccdfunc.c:545
#, c-format
msgid "Found %d wheels, you point number %d"
msgstr "ïÂÎÁÒÕÖÅÎÏ %d ËÏÌÅÓ, ×Ù ÕËÁÚÁÌÉ %d"
#: ccdfunc.c:650
#: ccdfunc.c:673
#, c-format
msgid "Full array: %s"
msgstr "ðÏÌÎÙÊ ÆÏÒÍÁÔ: %s"
@ -275,16 +275,16 @@ msgstr "
msgid "Histogram conversion: %s"
msgstr "ðÒÅÏÂÒÁÚÏ×ÁÎÉÅ ÇÉÓÔÏÇÒÁÍÍÙ: %s"
#: ccdfunc.c:383
#: ccdfunc.c:406
#, c-format
msgid "Image stat:\n"
msgstr "óÔÁÔÉÓÔÉËÁ ÐÏ ÉÚÏÂÒÁÖÅÎÉÀ: \n"
#: cmdlnopts.c:69
#: cmdlnopts.c:70
msgid "N flushes before exposing (default: 1)"
msgstr "N ÚÁÓ×ÅÞÉ×ÁÎÉÊ ÐÅÒÅÄ ÜËÓÐÏÚÉÃÉÅÊ (ÐÏ ÕÍÏÌÞÁÎÉÀ: 1)"
#: ccdfunc.c:161
#: ccdfunc.c:189
msgid "Neither filename nor filename prefix pointed!"
msgstr "îÉ ÉÍÑ ÆÁÊÌÁ, ÎÉ ÐÒÅÆÉËÓ ÎÅ ÕËÁÚÁÎÙ!"
@ -292,36 +292,36 @@ msgstr "
msgid "No camera device"
msgstr "îÅ ÕËÁÚÁÎÏ ÕÓÔÒÏÊÓÔ×Ï ËÁÍÅÒÙ"
#: ccdfunc.c:591 ccdfunc.c:592
#: ccdfunc.c:614 ccdfunc.c:615
msgid "No cameras found"
msgstr "ëÁÍÅÒ ÎÅ ÏÂÎÁÒÕÖÅÎÏ"
#: ccdfunc.c:398
#: ccdfunc.c:421
msgid "No focusers found"
msgstr "æÏËÕÓÅÒÏ× ÎÅ ÏÂÎÁÒÕÖÅÎÏ"
#: ccdfunc.c:490
#: ccdfunc.c:513
msgid "No wheels found"
msgstr "ôÕÒÅÌÅÊ ÎÅ ÏÂÎÁÒÕÖÅÎÏ"
#: ccdfunc.c:733
#: ccdfunc.c:756
msgid "Only show statistics"
msgstr "ôÏÌØËÏ ÏÔÏÂÒÁÚÉÔØ ÓÔÁÔÉÓÔÉËÕ"
#: cmdlnopts.c:103
#: cmdlnopts.c:104
msgid "PID file (default: "
msgstr "PID-ÆÁÊÌ (ÐÏ ÕÍÏÌÞÁÎÉÀ: "
#: ccdfunc.c:644
#: ccdfunc.c:667
#, c-format
msgid "Pixel size: %g x %g"
msgstr "òÁÚÍÅÒ ÐÉËÓÅÌÑ: %g x %g"
#: ccdfunc.c:765
#: ccdfunc.c:789
msgid "Read grabbed image"
msgstr "óÞÉÔÙ×ÁÎÉÅ ÉÚÏÂÒÁÖÅÎÉÑ"
#: ccdfunc.c:732
#: ccdfunc.c:755
#, c-format
msgid "Readout mode: %s"
msgstr "òÅÖÉÍ ÓÞÉÔÙ×ÁÎÉÑ: %s"
@ -330,177 +330,177 @@ msgstr "
msgid "Server timeout"
msgstr "ôÁÊÍÁÕÔ ÓÅÒ×ÅÒÁ"
#: ccdfunc.c:696
#: ccdfunc.c:719
#, c-format
msgid "Set brightness to %g"
msgstr "õÓÔÁÎÏ×ÉÔØ ÑÒËÏÓÔØ × %g"
#: ccdfunc.c:638
#: ccdfunc.c:661
#, c-format
msgid "Set fan speed to %d"
msgstr "îÅ ÍÏÇÕ ÕÓÔÁÎÏ×ÉÔØ ÓËÏÒÏÓÔØ ×ÅÎÔÉÌÑÔÏÒÏ× × %d"
#: ccdfunc.c:690
#: ccdfunc.c:713
#, c-format
msgid "Set gain to %g"
msgstr "õÓÔÁÎÏ×ÉÔØ Gain × %g"
#: ccdfunc.c:663
#: ccdfunc.c:686
#, c-format
msgid "Shutter command: %s\n"
msgstr "ëÏÍÁÎÄÁ ÚÁÔ×ÏÒÁ: %s\n"
#. "Попытка Ñ<>конфигурироваÑÑŒ порт I/O как %d\n"
#: ccdfunc.c:669
#: ccdfunc.c:692
#, c-format
msgid "Try to configure I/O port as %d"
msgstr "ðÏÐÙÔËÁ ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÔØ ÐÏÒÔ I/O ËÁË %d"
#. "Попытка запиÑ<C2B8>и %d в порт I/O\n"
#: ccdfunc.c:681
#: ccdfunc.c:704
#, c-format
msgid "Try to write %d to I/O port"
msgstr "ðÏÐÙÔËÁ ÚÁÐÉÓÉ %d × ÐÏÒÔ I/O"
#: cmdlnopts.c:100
#: cmdlnopts.c:101
msgid "UNIX socket name"
msgstr "éÍÑ UNIX-ÓÏËÅÔÁ"
#: ccdfunc.c:483
#: ccdfunc.c:506
msgid "Wheel device not pointed"
msgstr "õÓÔÒÏÊÓÔ×Ï ÔÕÒÅÌÉ ÎÅ ÕËÁÚÁÎÏ"
#: ccdfunc.c:549
#: ccdfunc.c:572
#, c-format
msgid "Wheel position should be from 0 to %d"
msgstr "ðÏÚÉÃÉÑ ËÏÌÅÓÁ ÄÏÌÖÎÁ ÂÙÔØ ÏÔ 0 ÄÏ %d"
#: cmdlnopts.c:76
#: cmdlnopts.c:77
msgid "absolute (not divided by binning!) frame X0 coordinate (-1 - all "
"with overscan)"
msgstr "ÁÂÓÏÌÀÔÎÁÑ (ÎÅ ÄÅÌÅÎÎÁÑ ÎÁ ÂÉÎÎÉÎÇ!) ËÏÏÒÄÉÎÁÔÁ X0 (-1 - ×ËÌÀÞÁÑ "
"Ï×ÅÒÓËÁÎ)"
#: cmdlnopts.c:78
#: cmdlnopts.c:79
msgid "absolute frame X1 coordinate (-1 - all with overscan)"
msgstr "ÁÂÓÏÌÀÔÎÁÑ ËÏÏÒÄÉÎÁÔÁ X1 (-1 - ×ËÌÀÞÁÑ Ï×ÅÒÓËÁÎ)"
#: cmdlnopts.c:77
#: cmdlnopts.c:78
msgid "absolute frame Y0 coordinate (-1 - all with overscan)"
msgstr "ÁÂÓÏÌÀÔÎÁÑ ËÏÏÒÄÉÎÁÔÁ Y0 (-1 - ×ËÌÀÞÁÑ Ï×ÅÒÓËÁÎ)"
#: cmdlnopts.c:79
#: cmdlnopts.c:80
msgid "absolute frame Y1 coordinate (-1 - all with overscan)"
msgstr "ÁÂÓÏÌÀÔÎÁÑ ËÏÏÒÄÉÎÁÔÁ Y1 (-1 - ×ËÌÀÞÁÑ Ï×ÅÒÓËÁÎ)"
#: cmdlnopts.c:65
#: cmdlnopts.c:66
msgid "add records to header from given file[s]"
msgstr "ÄÏÂÁ×ÉÔØ ÚÁÐÉÓÉ Ë ÛÁÐËÅ FITS-ÆÁÊÌÁ ÉÚ ÚÁÄÁÎÎÙÈ ÆÁÊÌÏ×"
#: cmdlnopts.c:47
#: cmdlnopts.c:48
msgid "camera device number (if many: 0, 1, 2 etc)"
msgstr "ÎÏÍÅÒ ÕÓÔÒÏÊÓÔ×Á ËÁÍÅÒÙ"
#: cmdlnopts.c:43
#: cmdlnopts.c:44
msgid "camera device plugin (e.g. devfli.so)"
msgstr "ÐÌÁÇÉÎ ËÁÍÅÒÙ (ÎÁÐÒÉÍÅÒ, devfli.so)"
#: cmdlnopts.c:75
#: cmdlnopts.c:76
msgid "cancel current exposition"
msgstr "ÏÔÍÅÎÁ ÔÅËÕÝÅÊ ÜËÓÐÏÚÉÃÉÉ"
#: cmdlnopts.c:82
#: cmdlnopts.c:83
msgid "close shutter"
msgstr "ÚÁËÒÙÔØ ÚÁÔ×ÏÒ"
#: cmdlnopts.c:42
#: cmdlnopts.c:43
msgid "common device plugin (e.g devfli.so)"
msgstr "ÏÂÝÉÊ ÐÌÁÇÉÎ ÄÌÑ ×ÓÅÈ ÕÓÔÒÏÊÓÔ× (ÎÁÐÒÉÍÅÒ, devfli.so)"
#: cmdlnopts.c:89
#: cmdlnopts.c:90
msgid "configure I/O port pins to given value (decimal number, pin1 is LSB, "
"1 == output, 0 == input)"
msgstr "ÓËÏÎÆÉÇÕÒÉÒÏ×ÁÔØ ÐÏÒÔ I/O × ÚÁÄÁÎÎÏÅ ÓÏÓÔÏÑÎÉÅ (ÄÅÓÑÔÉÞÎÏÅ ÞÉÓÌÏ, "
"pin1 - ÍÌÁÄÛÉÊ ÂÉÔ, 1 - ×ÙÈÏÄ, 0 - ×ÈÏÄ)"
#: cmdlnopts.c:55
#: cmdlnopts.c:56
msgid "fast readout mode"
msgstr "ÂÙÓÔÒÙÊ ÒÅÖÉÍ ÓÞÉÔÙ×ÁÎÉÑ"
#: cmdlnopts.c:48
#: cmdlnopts.c:49
msgid "filter wheel device number (if many: 0, 1, 2 etc)"
msgstr "ÎÏÍÅÒ ÕÓÔÒÏÊÓÔ×Á ÔÕÒÅÌÉ"
#: cmdlnopts.c:49
#: cmdlnopts.c:50
msgid "focuser device number (if many: 0, 1, 2 etc)"
msgstr "ÎÏÍÅÒ ÕÓÔÒÏÊÓÔ×Á ÆÏËÕÓÅÒÁ"
#: cmdlnopts.c:44
#: cmdlnopts.c:45
msgid "focuser device plugin (e.g. devzwo.so)"
msgstr "ÐÌÁÇÉÎ ÆÏËÕÓÅÒÁ (ÎÁÐÒÉÍÅÒ, devzwo.so)"
#: cmdlnopts.c:85
#: cmdlnopts.c:86
msgid "get value of I/O port pins"
msgstr "ÐÏÌÕÞÉÔØ ÚÎÁÞÅÎÉÅ ÐÏÒÔÁ I/O"
#: cmdlnopts.c:70
#: cmdlnopts.c:71
msgid "horizontal binning to N pixels"
msgstr "ÇÏÒÉÚÏÎÔÁÌØÎÙÊ ÂÉÎÎÉÎÇ × N ÐÉËÓÅÌÅÊ"
#: cmdlnopts.c:61
#: cmdlnopts.c:62
msgid "instrument name"
msgstr "ÎÁÚ×ÁÎÉÅ ÐÒÉÂÏÒÁ"
#: cmdlnopts.c:46
#: cmdlnopts.c:47
msgid "list connected devices"
msgstr "ÓÐÉÓÏË ÐÏÄËÌÀÞÅÎÎÙÈ ÕÓÔÒÏÊÓÔ×"
#: cmdlnopts.c:101
#: cmdlnopts.c:102
msgid "local INET socket port"
msgstr "ÐÏÒÔ ÌÏËÁÌØÎÏÇÏ ÓÅÔÅ×ÏÇÏ ÓÏËÅÔÁ"
#: cmdlnopts.c:99
#: cmdlnopts.c:100
msgid "logging file name (if run as server)"
msgstr "ÉÍÑ ÆÁÊÌÁ ÌÏÇÇÉÒÏ×ÁÎÉÑ (ÅÓÌÉ ÚÁÐÕÝÅÎ ÓÅÒ×ÅÒ)"
#: cmdlnopts.c:73
#: cmdlnopts.c:74
msgid "make pause for N seconds between expositions"
msgstr "ÐÁÕÚÁ × N ÓÅËÕÎÄ ÍÅÖÄÕ ÜËÓÐÏÚÉÃÉÑÍÉ"
#: cmdlnopts.c:72
#: cmdlnopts.c:73
msgid "make series of N frames"
msgstr "ÐÏÓÌÅÄÏ×ÁÔÅÌØÎÏÓÔØ ÉÚ N ËÁÄÒÏ×"
#: cmdlnopts.c:91
#: cmdlnopts.c:92
msgid "move focuser to absolute position, mm"
msgstr "ÐÅÒÅÍÅÓÔÉÔØ ÆÏËÕÓÅÒ × ÁÂÓÏÌÀÔÎÏÅ ÐÏÌÏÖÅÎÉÅ, ÍÍ"
#: cmdlnopts.c:92
#: cmdlnopts.c:93
msgid "move focuser to relative position, mm (only for standalone)"
msgstr "ÐÅÒÅÍÅÓÔÉÔØ ÆÏËÕÓÅÒ × ÏÔÎÏÓÉÔÅÌØÎÏÅ ÐÏÌÏÖÅÎÉÅ, ÍÍ (ÎÅ ÄÌÑ ÓÅÒ×ÅÒ/"
"ËÌÉÅÎÔ)"
#: cmdlnopts.c:86
#: cmdlnopts.c:87
msgid "move stepper motor asynchronous"
msgstr "ÁÓÉÎÈÒÏÎÎÏÅ Ä×ÉÖÅÎÉÅ ÛÁÇÏ×ÏÇÏ Ä×ÉÇÁÔÅÌÑ"
#: cmdlnopts.c:53
#: cmdlnopts.c:54
msgid "not open shutter, when exposing (\"dark frames\")"
msgstr "ÎÅ ÏÔËÒÙ×ÁÔØ ÚÁÔ×ÏÒ ÐÒÉ ÜËÓÐÏÚÉÃÉÉ (\"ÔÅÍÎÏ×ÙÅ\")"
#: cmdlnopts.c:62
#: cmdlnopts.c:63
msgid "object name"
msgstr "ÎÁÚ×ÁÎÉÅ ÏÂßÅËÔÁ"
#: cmdlnopts.c:60
#: cmdlnopts.c:61
msgid "object type (neon, object, flat etc)"
msgstr "ÔÉÐ ÏÂßÅËÔÁ (neon, object, flat É Ô.Ä.)"
#: cmdlnopts.c:63
#: cmdlnopts.c:64
msgid "observers' names"
msgstr "ÉÍÅÎÁ ÎÁÂÌÀÄÁÔÅÌÅÊ"
#: cmdlnopts.c:64
#: cmdlnopts.c:65
msgid "observing program name"
msgstr "ÎÁÚ×ÁÎÉÅ ÐÒÏÇÒÁÍÍÙ"
@ -512,78 +512,78 @@ msgstr "
msgid "on"
msgstr "×ËÌ"
#: cmdlnopts.c:81
#: cmdlnopts.c:82
msgid "open shutter"
msgstr "ÏÔËÒÙÔØ ÚÁÔ×ÏÒ"
#: cmdlnopts.c:66
#: cmdlnopts.c:67
msgid "output file name"
msgstr "ÉÍÑ ÆÁÊÌÁ"
#: cmdlnopts.c:59
#: cmdlnopts.c:60
msgid "program author"
msgstr "Á×ÔÏÒ ÐÒÏÇÒÁÍÍÙ"
#: cmdlnopts.c:104
#: cmdlnopts.c:105
msgid "restart image server"
msgstr "ÐÅÒÅÚÁÐÕÓË ÓÅÒ×ÅÒÁ"
#: cmdlnopts.c:51
#: cmdlnopts.c:52
msgid "rewrite output file if exists"
msgstr "ÐÅÒÅÚÁÐÉÓØ ×ÙÈÏÄÎÏÇÏ ÆÁÊÌÁ"
#: cmdlnopts.c:102
#: cmdlnopts.c:103
msgid "run as client"
msgstr "ÚÁÐÕÓÔÉÔØ ËÌÉÅÎÔ"
#: cmdlnopts.c:84
#: cmdlnopts.c:85
msgid "run exposition on HIGH @ pin5 I/O port"
msgstr ""
#: cmdlnopts.c:83
#: cmdlnopts.c:84
msgid "run exposition on LOW @ pin5 I/O port"
msgstr ""
#: cmdlnopts.c:54
#: cmdlnopts.c:55
msgid "run in 8-bit mode"
msgstr "8-ÂÉÔÎÙÊ ÒÅÖÉÍ"
#: cmdlnopts.c:56
#: cmdlnopts.c:57
msgid "set CCD temperature to given value (degr C)"
msgstr "ÕÓÔÁÎÏ×ÉÔØ ÔÅÍÐÅÒÁÔÕÒÕ Ó×ÅÔÏÐÒÉÅÍÎÉËÁ (ÇÒÁÄã)"
#: cmdlnopts.c:88
#: cmdlnopts.c:89
msgid "set I/O port pins to given value (decimal number, pin1 is LSB)"
msgstr "ÕÓÔÁÎÏ×ÉÔØ ÐÏÒÔ I/O (ÄÅÓÑÔÉÞÎÏÅ ÞÉÓÌÏ, pin1 - ÍÌÁÄÛÉÊ ÂÉÔ)"
#: cmdlnopts.c:74
#: cmdlnopts.c:75
msgid "set exposure time to given value (seconds!)"
msgstr "ÕÓÔÁÎÏ×ÉÔØ ×ÒÅÍÑ ÜËÓÐÏÚÉÃÉÉ (ÓÅËÕÎÄÙ!)"
#: cmdlnopts.c:57
#: cmdlnopts.c:58
msgid "set fan speed (0 - off, 1 - low, 2 - high)"
msgstr "ÕÓÔÁÎÏ×ÉÔØ ÓËÏÒÏÓÔØ ×ÅÎÔÉÌÑÔÏÒÁ (0 - ×ÙËÌ, 1 - ÎÉÚËÁÑ, 2 - ×ÙÓÏËÁÑ)"
#: cmdlnopts.c:94
#: cmdlnopts.c:95
msgid "set wheel position"
msgstr "ÕÓÔÁÎÏ×ÉÔØ ÐÏÌÏÖÅÎÉÅ ËÏÌÅÓÁ"
#: cmdlnopts.c:50
#: cmdlnopts.c:51
msgid "show this help"
msgstr "ÏÔÏÂÒÁÚÉÔØ ÜÔÕ ÓÐÒÁ×ËÕ"
#: cmdlnopts.c:52
#: cmdlnopts.c:53
msgid "verbose level (-V - messages, -VV - debug, -VVV - all shit)"
msgstr "ÕÒÏ×ÅÎØ ÂÏÌÔÌÉ×ÏÓÔÉ (-V - ÓÏÏÂÝÅÎÉÑ, -VV - ÏÔÌÁÄËÁ, -VVV - ×ÓÅ)"
#: cmdlnopts.c:71
#: cmdlnopts.c:72
msgid "vertical binning to N pixels"
msgstr "×ÅÒÔÉËÁÌØÎÙÊ ÂÉÎÎÉÎÇ × N ÐÉËÓÅÌÅÊ"
#: cmdlnopts.c:67
#: cmdlnopts.c:68
msgid "wait while exposition ends"
msgstr "ÖÄÁÔØ, ÐÏËÁ ÎÅ ËÏÎÞÉÔÓÑ ÜËÓÐÏÚÉÃÉÑ"
#: cmdlnopts.c:45
#: cmdlnopts.c:46
msgid "wheel device plugin (e.g. devdummy.so)"
msgstr "ÐÌÁÇÉÎ ÕÓÔÒÏÊÓÔ×Á ÔÕÒÅÌÉ (ÎÁÐÒÉÍÅÒ, devdummy.so)"

1
main.c
View File

@ -34,7 +34,6 @@
#ifdef IMAGEVIEW
#include "imageview.h"
#endif
#include "omp.h"
#include "socket.h"
static int isserver = FALSE;