Данный сайт является проектом ООО "Амакс". Сегодня: Воскресенье, 04.12.2016, 17:15

Приветствую Вас Гость

Loading
[ Новые сообщения · Участники · Правила форума · RSS · ?
Loading
Страница 1 из 11
Неофициальный форум технической поддержки Hikvision » Оборудование и программное обеспечение Hikvision » Разное » SDK и все что связанно с программированием
SDK и все что связанно с программированием
HamsterДата: Четверг, 16.02.2012, 03:58 | Сообщение # 1
Группа: Проверенные
Сообщений: 7
Репутация: 0
Статус: Offline
Добрый день!
Писал приложения на С++ с использованием SDK. Всё отлично работает, нареканий никаких. Но есть задача в написании приложения на Java. Посему вопрос, есть ли Hikvision JDK? а то через нативные функции подключать SDK к java не очень удобно, и теряется смысл кросплатформенности. К тому же подключение SDK через JNI вызывает тормоза и подвисание на возвратных функциях (например обработка сообщений от регистратора)
 
AlexandrДата: Четверг, 16.02.2012, 11:57 | Сообщение # 2
Группа: Администраторы
Сообщений: 5311
Репутация: 109
Статус: Offline
в открытом виде нечто подобное (не проверял) видел только на pudn.com, попробую узнать.
пс - ответили, нет такого.
 
HamsterДата: Пятница, 17.02.2012, 03:12 | Сообщение # 3
Группа: Проверенные
Сообщений: 7
Репутация: 0
Статус: Offline
Досадно блин...
Но есть же приложения для мобильников написанных на джава. Выходит только брать исходники SDK и перелопачивать их на джаву? Хотябы описание сетевых команд управления, а то мартышкин труд получается.
 
AlexandrДата: Пятница, 17.02.2012, 12:19 | Сообщение # 4
Группа: Администраторы
Сообщений: 5311
Репутация: 109
Статус: Offline
уточню - то что есть не открывают, отрытого jdk нет. как вариант искать на pudn.com. из минусов - там всё в основном на китайском (включая сорцы).
команды управления ведь в sdk есть, смотрите сетевой клиент.
пс - навскидку глянул архив клиента из комплекта сервера, вроде очень похоже на sdk родное, по крайней мере названия классов. прикреплю тут, может пригодится.
Прикрепления: MCU_D.jar(246Kb) · MCU_D.jad(0Kb)
 
HamsterДата: Вторник, 21.02.2012, 02:07 | Сообщение # 5
Группа: Проверенные
Сообщений: 7
Репутация: 0
Статус: Offline
Спасибо, будем разбираться, проста нужен сервак (с задачей обработки и ведения архива по тревожным событиям наподобие SecureOS) одинаково работающий под Unix, OpenVms for Alpha, OpenVMS for VAX, openVMS for Itanium. Джава в этом случае как раз самый подходящий вариант.

Сообщение отредактировал Hamster - Вторник, 21.02.2012, 02:10
 
AlexandrДата: Вторник, 21.02.2012, 10:45 | Сообщение # 6
Группа: Администраторы
Сообщений: 5311
Репутация: 109
Статус: Offline
а проект большой ? может через "крупность" попробовать продавить )
пс - ссылка на форум китайский по sdk, через гугл. кривенько, но понять в общих чертах можно.
ветка обсуждения SDK
ппс - некий "Фермеры дядя" в переводе гугла) блог про sdk от хика с примерами кода Фермеры дядя )
Quote (Фермеры дядя)
Внимание
Эта серия статей ограничивается изучением и обмена, и процессно-ориентированный, с участием компании, поэтому не дают скачать исходный код, очень жаль! ! Тем не менее, будьте уверены, что ядро и можно вставить код, который я написал и стремимся сделать все, чтобы ответить на сообщение оставил проблему, благодаря всеобщее внимание, и приветствуем обмен :)
 
HamsterДата: Вторник, 06.03.2012, 03:50 | Сообщение # 7
Группа: Проверенные
Сообщений: 7
Репутация: 0
Статус: Offline
Вот, кое что нарыл у китайцев. deal Пример клиента на Java
Если кому понадобится ссылка: Доступно только для пользователей
Правда опять всё через нативные функции SDK библиотеки. cry

Quote (Alexandr)
а проект большой ? может через "крупность" попробовать продавить )

Спасибо конечно за поддержку, но начальство не одобряет моего общения на эту тему... dont


Сообщение отредактировал Hamster - Вторник, 06.03.2012, 04:18
 
AlexandrДата: Среда, 07.03.2012, 12:30 | Сообщение # 8
Группа: Администраторы
Сообщений: 5311
Репутация: 109
Статус: Offline
перезалил CH Java C# Demo Windows
 
jaxxДата: Четверг, 27.09.2012, 18:32 | Сообщение # 9
Группа: Проверенные
Сообщений: 2
Репутация: 0
Статус: Offline
Возникли проблемы с передачей звука на камеру. Используется камера Hikvision DS-2CD852MF-E. Коннект с камерой устанавливается, можно посмотреть превью, а вот при передаче звука на камеру, слышен только треск. В чем может быть проблема?

Используемый код из Device Network SDK Programming Manual v.4.0.2:

Code

#include <stdio.h>
#include <iostream>
#include "Windows.h"
#include "HCNetSDK.h"
using namespace std;

void CALLBACK fVoiceDataCallBack(LONG lVoiceComHandle, char *pRecvDataBuffer, DWORD dwBufSize, BYTE byAudioFlag, void* pUser)
{
        //The audio data here can either be the encoded data sent by the device, or the encoded data locally collected.      
       //Затык происходит именно в этом месте.
        BYTE *RawAudioData;
        RawAudioData = (char *)fopen("P:\\Final\\Sound\\WPB.wav","r"); // файл в формате wave, закодированный согласно мануалу     
        NET_DVR_InitG722Encoder();
        NET_DVR_EncodeG722Frame(NET_DVR_InitG722Encoder(), RawAudioData, pRecvDataBuffer);
        NET_DVR_VoiceComSendData(lVoiceComHandle, pRecvDataBuffer, 80);
}

void main() {

        //---------------------------------------
        //Init device
        NET_DVR_Init();
        //Set connect time and reconnect time
        NET_DVR_SetConnectTime(2000, 1);
        NET_DVR_SetReconnect(10000, true);

        //---------------------------------------
        //Register device
        LONG lUserID;
        NET_DVR_DEVICEINFO_V30 struDeviceInfo;
        lUserID = NET_DVR_Login_V30("192.0.0.64", 8000, "admin", "12345", &struDeviceInfo);
        if (lUserID < 0)
        {
             printf("Login error, %d\n", NET_DVR_GetLastError());
             NET_DVR_Cleanup();     
             return;
        }
          
        //Start voice forward
        LONG lVoiceHanle;
        lVoiceHanle = NET_DVR_StartVoiceCom_MR_V30(lUserID, 1, fVoiceDataCallBack, NULL);
        if (lVoiceHanle < 0)
        {
            printf("NET_DVR_StartVoiceCom_MR_V30 error, %d!\n", NET_DVR_GetLastError());
            NET_DVR_Logout(lUserID);
            NET_DVR_Cleanup();
            return;
        }

        Sleep(5000);  //millisecond
        //Stop voice forward
        if (!NET_DVR_StopVoiceCom(lVoiceHanle))
        {
            printf("NET_DVR_StopVoiceCom error, %d!\n", NET_DVR_GetLastError());
            NET_DVR_Logout(lUserID);
            NET_DVR_Cleanup();
            return;
        }
          
        //Logout device
        NET_DVR_Logout(lUserID);
        //Release sdk resource
        NET_DVR_Cleanup();
        return;
}


Сообщение отредактировал jaxx - Четверг, 27.09.2012, 20:40
 
AlexandrДата: Пятница, 28.09.2012, 11:47 | Сообщение # 10
Группа: Администраторы
Сообщений: 5311
Репутация: 109
Статус: Offline
первый же вопрос возникающий - а с родным ПО звук идёт нормально ?
и ещё момент, в кодинге не силён, но что пишет NET_DVR_GetLastError ?

 
jaxxДата: Пятница, 28.09.2012, 14:29 | Сообщение # 11
Группа: Проверенные
Сообщений: 2
Репутация: 0
Статус: Offline
Quote (Alexandr)
первый же вопрос возникающий - а с родным ПО звук идёт нормально ?
и ещё момент, в кодинге не силён, но что пишет NET_DVR_GetLastError ?


С родным ПО все хорошо, демо тоже работает все нормально. NET_DVR_GetLastError ничего не пишет, ибо NET_DVR_VoiceComSendData (впрочем как и все остальные ф-ии) отрабатывают нормально, т.е. без ошибок.
 
AlexandrДата: Четверг, 04.10.2012, 10:44 | Сообщение # 12
Группа: Администраторы
Сообщений: 5311
Репутация: 109
Статус: Offline
похоже что DS-2CD852MF-E не поддерживает (вернее прошивка) передачу файла, а вот более свежей нет для неё.
 
saidumarДата: Четверг, 15.11.2012, 11:30 | Сообщение # 13
Группа: Проверенные
Сообщений: 8
Репутация: 0
Статус: Offline
Здравствуйте.
Необходимо написать обработчик видео файлов полученных из IVMS, скачал Hikvision Player SDK,
почитал документацию вроде все понятно, но я не знаю С, пишу только на Delphi.
Так вот можно ли использовать этот SDK в Delphi, и если можно то как?
 
fun105Дата: Пятница, 16.11.2012, 14:26 | Сообщение # 14
Группа: Проверенные
Сообщений: 19
Репутация: 2
Статус: Offline
saidumar, немного знаю Delphi, попробую подсказать. Если из них можно скомпилировать dll, то, написав заголовочные файлы для Delphi, можно будет вызвать функции из этих dll. Либо смотреть исходники из этого комплекта SDK и реализовывать нужные функции для Delphi. Но по-моему, все-таки, лучше разобраться с С )
 
saidumarДата: Среда, 21.11.2012, 17:22 | Сообщение # 15
Группа: Проверенные
Сообщений: 8
Репутация: 0
Статус: Offline
fun105, спасибо за ответ.
в нете нашел несколько примеров кода,
Code
http://en.pudn.com/search_db.asp?keyword=hikvision+delphi
только все скачать не получается .
по аналогии с этим
Code
http://read.pudn.com/downloads86/sourcecode/middleware/333207/HCDemo/HikVisionSDK.pas__.htm
написал заголовочный файл для PlayCtrl.dll.
Все компилируется только не могу разобрать куда двигаться дальше.

из заголовочного файла PlayM4.h получил PlayCtrl.pas

Не подскажете как прикреплять файлы, выложил бы получившийся файл
Буду благодарен за любую подсказку.
 
fun105Дата: Понедельник, 26.11.2012, 00:35 | Сообщение # 16
Группа: Проверенные
Сообщений: 19
Репутация: 2
Статус: Offline
saidumar, чтобы прикрепить файл под формой ответа, над кнопкой "Просмотреть", есть поле для указания пути к файлу который нужно прикрепить. Там еще написано "Обзор ...".
Если задача только в обработке видеофайлов то, возможно, конкретно SDK от Hikvision тут и не понадобится. Тут скорее пригодятся библиотеки/модули (наверняка есть готовые) для работы с видео файлами различных форматов (точно не скажу, но у регистраторов вроде используется контейнер avi, про кодек не знаю). Но это опять же, если нужно редактировать сами готовые видеофайлы. Если же нужно получать видеопоток от устройства, то тут без SDK никуда. Опиши задачу подробнее, выкладывай что получилось, посмотрим.
 
AlexandrДата: Понедельник, 26.11.2012, 14:20 | Сообщение # 17
Группа: Администраторы
Сообщений: 5311
Репутация: 109
Статус: Offline
saidumar, можете выложить на любой файлообменник, перезалью если что.
 
saidumarДата: Понедельник, 26.11.2012, 17:52 | Сообщение # 18
Группа: Проверенные
Сообщений: 8
Репутация: 0
Статус: Offline
Alexandr, спасибо за помощь, во вложении два файла - заголовочный PlayM4.h, и мой аналог для Delphi PlayM4.pas.
Правда не все перевел, есть сомнения в соответствии типов данных. Хочу перевести весь SDK и выложить тут. Насколько я понял, этого никто еще не делал.
Хотя очень актуальная вещь. Кто заинтересован добро пожаловать...

fun105, Насчет задачи: необходимо провести мониторинг рекламы на ТВ
Сейчас порядок такой: через тюнера и плату DS 4016-HCI записываю весь эфир.
Далее из IVMS 2000 делаю архивацию на файловый сервер, откуда операторы просматривают файлы с помощью любого плеера и DSFilter,
и вручную вводят данные о рекламном ролике в базу. Попробовал сам - чуть не посинел... blink

Решил максимально облегчить операторский труд...
Первые мысли:

1. Разбить файл на сцены или определение изменения сцены
2. По кадру начала и конца сцены сопоставить и определить рекламный блок
3. Предложить оператору принять решение на ввод в базу и т.д.

Что реализовано: функции open, play, pause, stop, close, seek, fast play, slow play
застрял на получении битмапа, функция PlayM4_SetDisplayCallBack
алгоритм сравнения кадров есть, а сам кадр получить немогу...
Прикрепления: PlayM4.rar(9Kb)
 
AlexandrДата: Вторник, 27.11.2012, 15:43 | Сообщение # 19
Группа: Администраторы
Сообщений: 5311
Репутация: 109
Статус: Offline
нз ) вроде китайцы что-то подобное делают, но там все примы в иероглифах )))
 
TimurДата: Вторник, 04.12.2012, 16:04 | Сообщение # 20
Группа: Проверенные
Сообщений: 7
Репутация: 0
Статус: Offline
Quote (saidumar)
Насчет задачи: необходимо провести мониторинг рекламы на ТВ
Сейчас порядок такой: через тюнера и плату DS 4016-HCI записываю весь эфир.
Далее из IVMS 2000 делаю архивацию на файловый сервер, откуда операторы просматривают файлы с помощью любого плеера и DSFilter,


Здравствуйте!
У меня стоит аналогичная задача, также ведем запись ТВ-эфира. smile
Что касается облегчения труда операторов оптимизма у меня маловато. Доверять программам определение начала сцен, рекламных роликов страшновато. Но очень интересно, если будут какие-то положительные результаты.
У меня вопрос - а архивацию на файловый сервер делаете вручную? А то мы пишем 16 каналов, и если архивировать вручную утром, то это занимает немало времени. Было бы хорошо автоматизировать этот процесс - архивация, конвертация в avi. И желательно склейка файлов в один файл - 1 канал в день.
 
saidumarДата: Среда, 05.12.2012, 14:40 | Сообщение # 21
Группа: Проверенные
Сообщений: 8
Репутация: 0
Статус: Offline
Quote (Timur)
а архивацию на файловый сервер делаете вручную?

да вручную, как автоматизировать не нашел.
Quote (Timur)
архивация, конвертация в avi

родной конвертер ужасный, конвертация занимает больше времени чем продолжительность конвертируемого видео...
попробуе конечно конвертер написать только времени нет, если что-то получится выложу здесь
 
UserMДата: Четверг, 06.12.2012, 23:26 | Сообщение # 22
Группа: Проверенные
Сообщений: 1766
Репутация: 108
Статус: Offline
Quote (saidumar)
Разбить файл на сцены или определение изменения сцены


Не уверен, что точно понимаю Ваши задачи, но некоторые мониторинговые программы позволяют анализировать архив на предмет активности в зоне поиска. Найденных данных в любом случае будет меньше чем просматривать весь архив. Например у Трассир эта функция названа AktiveSearch. Такая функция есть и в новых моделях DVR.



Не знаю как у Вас сейчас, но раньше на время рекламы, убирался логотип канала. Если это так , то можно попытаться искать только изменения на месте расположения логотипа компании.
Прикрепления: 9611198.jpg(30Kb)


Когда у общества нет цветовой дифференциации штанов, то нет цели!
 
MaxGomonovДата: Четверг, 21.02.2013, 17:30 | Сообщение # 23
Группа: Проверенные
Сообщений: 18
Репутация: 2
Статус: Offline
Здравствуйте saidumar, у Вам удалось получить видео в Delphi? Если да, то не могли бы Вы выложить примерчик, как у Вас это получилось?
Или давайте объединим усилия=)
 
saidumarДата: Понедельник, 25.02.2013, 16:00 | Сообщение # 24
Группа: Проверенные
Сообщений: 8
Репутация: 0
Статус: Offline
MaxGomonov, застрял на получении изображения (не разобрался с выделением памяти для кадра).
Потом другие проекты появились... и забыл.
Но если хотите всерьез заняться этим я постараюсь уделить на это время, и буду рад сотрудничеству.
Вот проект
Прикрепления: VideoFrame.rar(295Kb)
 
MaxGomonovДата: Вторник, 26.02.2013, 21:15 | Сообщение # 25
Группа: Проверенные
Сообщений: 18
Репутация: 2
Статус: Offline
Собственно за несколько дней работая с устройством DS 6101 HF_IP мне удалось:

- Авторизоваться
- Вывести изображение с камеры на форму
- Получить текущий фрейм (в jpeg) в буфер
- обрабатывать сообщения (движение и т.п.)
- сохранять скриншоты на диск

Все это на Delphi.
Если кому-нибудь интересно могу создать тему с описанием, текущим юнитом и примером работы.
 
saidumarДата: Среда, 27.02.2013, 11:32 | Сообщение # 26
Группа: Проверенные
Сообщений: 8
Репутация: 0
Статус: Offline
MaxGomonov, конечно интересно, пожалуйста выкладывайте все будем копать... и про жпег поподробней
 
MaxGomonovДата: Среда, 27.02.2013, 15:55 | Сообщение # 27
Группа: Проверенные
Сообщений: 18
Репутация: 2
Статус: Offline
Создал новую тему  - Hikvision SDK для DELPHI

Сообщение отредактировал MaxGomonov - Среда, 27.02.2013, 15:55
 
sercherДата: Среда, 27.02.2013, 15:55 | Сообщение # 28
Группа: Проверенные
Сообщений: 1
Репутация: 0
Статус: Offline
Добрый день!

Сервер ivms-2000 v2.0.2 + две платы по 4 канала
всё работает
возникла необходимость написать простенького клиента, скачал sdk с Вашего сайта EN-Network_Client_SDK_win_x32..

базовые функции работают, но некоторые функции, например:
- реверс просмотра из архива NET_DVR_PlayBackReverseByTime_V40
- установка времени NET_DVR_PLAYSETTIME функцией NET_DVR_PlayBackControl_V40
не работают(((

лог= Device does not support this function

ivms-2000 реально не поддерживает эти функции или можно обновить библиотеки??
очень нужен реверс просмотра!!
как быть?

..пробовал развернуть 4200, тоже не поддерживает эти функции..
 
nziminДата: Понедельник, 11.01.2016, 15:33 | Сообщение # 29
Группа: Проверенные
Сообщений: 1
Репутация: 0
Статус: Offline
Добрый день!
У меня возникли проблемы с Hikvision SDK, подскажите что я делаю не так.
Использую камеру DS-2CD2142FWD-IS.

1. С сайта Hikvision я взял Device Network SDK (x64), в его составе естьпример ClientDemo (как исходники, так и
готовый exe-файл). Под Windows 8.1 (x64 Рус) этот собранный файл не запускается, удалось выполнить под Windows 7 (x64). Отсюда первый вопрос – работает ли Device Network SDK (x64) под Windows 8.1 ?

2.  Далее использую Windows 7, попытался собрать и выполнить пример из документации (из Статьи «Alarm Module»). Не привожу весь код, т.к. он полностьюсовпадает с тем, что дан в документации (комментарии мои):

void main() {
 
 
NET_DVR_Init();    /* выполняется */
  NET_DVR_SetConnectTime(2000, 1); /* выполняется */
 
NET_DVR_SetReconnect(10000, true); /* выполняется */
 
 
LONG lUserID;
 
NET_DVR_DEVICEINFO_V30 struDeviceInfo;
  lUserID =
NET_DVR_Login_V30("192.0.0.64", 8000, "admin",
"12345", &struDeviceInfo); /* (использую здесь IP, login и password своей камеры) выполняется, в результате lUserID = 0 */
  if (lUserID < 0)
  {
      
printf("Login error, %d\n", NET_DVR_GetLastError());
      
NET_DVR_Cleanup();
       return;
  }
 
  NET_DVR_SetDVRMessageCallBack_V30(MessageCallback, NULL); /* выполняется */
  LONG lHandle =NET_DVR_SetupAlarmChan_V30(lUserID); /* не выполняется, lHandle = -1 */
  if (lHandle < 0)
  {
     
printf("NET_DVR_SetupAlarmChan_V30 error, %d\n",
NET_DVR_GetLastError()); /* NET_DVR_GetLastError возвращает код ошибки 17 */ 
      NET_DVR_Logout(lUserID);
     
NET_DVR_Cleanup();
      return;
  } 

}
 
3.      Далее попробовал запустить пример 2(Alarm listen), при выполнении NET_DVR_StartListen_V30 опять возникаетошибка 17. Более того, дальше я стал пробовать выполнять другие примеры из
документации  и везде ошибка 17.
   
При этом «родной» клиент iVMS-4200 работает. Подскажите, что я делаю не так?
 
YurDenДата: Пятница, 29.01.2016, 14:35 | Сообщение # 30
Группа: Проверенные
Сообщений: 2
Репутация: 0
Статус: Offline
Хочу изменить параметры камеры ip адрес, логин пароль и т.д.
Подскажите пожалуйста какую функцию лучше всего использовать и как.


fx-8300@4.3GHz&r9 280x

Сообщение отредактировал YurDen - Пятница, 29.01.2016, 14:43
 
PrometeiДата: Пятница, 29.01.2016, 15:25 | Сообщение # 31
Группа: Проверенные
Сообщений: 690
Репутация: 20
Статус: Offline
Функцию смены ip адреса, пароля, логина и т.д. smile чего спросить то хотел? Как это сделать? В браузере открой и сделай.
 
YurDenДата: Четверг, 03.03.2016, 14:01 | Сообщение # 32
Группа: Проверенные
Сообщений: 2
Репутация: 0
Статус: Offline
Цитата Prometei ()
В браузере открой и сделай.


Сейчас использую HCNetSDKV4.3.0.6_build20140722_win32_EN.
Пытаюсь написать приложение чтобы сменить
Цитата Prometei ()
ip адреса, пароля, логина и т.д.

Так вот с помощью NET_DVR_GetConfigFile я могу в бинарный файл загнать всю конфигурацию устройства. Проблема в том что я его не прочитаю и не знаю что менять. А с помощью NET_DVR_SetConfigFile я так понял что можно запихнуть настройки опять в устройство.
Но я просто уверен что должен быть способ попроще. Просто не вижу его.((

Добавлено (15.02.2016, 12:25)
---------------------------------------------
Как прочитать бинарный файл который я получу с помощью NET_DVR_GetConfigFile?

Добавлено (23.02.2016, 11:51)
---------------------------------------------
Так разобрался с получения конфигурации и установки. Вопрос другой.  Кто нибудь знает как заставить работать NET_DVR_GetDeviceAbility?

Добавлено (03.03.2016, 14:01)
---------------------------------------------
Разобрался!


fx-8300@4.3GHz&r9 280x
 
Неофициальный форум технической поддержки Hikvision » Оборудование и программное обеспечение Hikvision » Разное » SDK и все что связанно с программированием
Страница 1 из 11
Поиск: