Исходный проект этого запроса на слияние был удален
Версия 2.1: приложение больше не использует HCNetSDK (libhcnetsdk.so) и другие нативные библиотеки — общение с камерами идёт только по открытым протоколам (ISAPI поверх HTTP с Digest-авторизацией + RTSP). Бинарных компонентов нет, архитектура процессора сервера не важна.
- isapi_client.py — ISAPI-клиент на чистой stdlib: deviceInfo, снимки, поиск архива (пагинация searchID); семафор на камеру, т.к. встроенный веб-сервер камеры не обрабатывает запросы параллельно
- port8000.py — репликация закрытого протокола порта 8000 на чистом Python (вместо библиотеки libHCCore.so): побитово идентичная SDK выгрузка архива со скоростью ~26× realtime; нужен пакет cryptography
- скачивание архива: быстрый путь через порт 8000; если порт закрыт или cryptography не установлен — автоматический fallback на RTSP-playback (~1× realtime, двухстадийно RTSP → MPEG-TS → MP4 с вотчдогом); HIK_DISABLE_PORT8000 принудительно выключает быстрый путь
- порты камер мигрированы 8000 → 80 (UPDATE в init_db), скан и форма добавления камеры теперь по HTTP-порту
- убран значок «Защищено» у записей архива — у is_locked нет эквивалента в ISAPI
- README переписан под новую архитектуру
Каталог lib/ (нативные библиотеки SDK) кодом больше не используется.