1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/renkai721-jftech-camera

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.en.md

jftech-camera

Быстрое подключение к облачной платформе Jiefeng позволяет управлять камерой вверх-вниз, влево-вправо, а также изменять масштаб через интерфейс. Если ваша камера управляется через следующие приложения, вы можете использовать плагин для управления. Приложения включают [Super Look, XMEye, Jiefeng Development Assistant, Bee Cloud SaaS, Jiefeng Look, EYE-U, 5G Look, Xiongmai Look, JFEye; Иностранные названия: ICSee]. Если разработчик приложения в App Store — HANGZHOU JFTECH CO., LTD, вы можете использовать плагин. Адрес исходного кода

Содержание

  1. Введение в проект
    1. Какие преимущества имеет проект
    2. Адрес облачной платформы Jiefeng
    3. API Jiefeng
    4. Почему был запущен проект?
  2. Руководство по использованию

История изменений

Проверьте обновления здесь

Введение в проект

Какие преимущества имеет проект

  1. API-соединение официального сайта Jiefeng Cloud также очень ясно, но требуется передать слишком много параметров, что делает процесс более сложным. Конвенциональные RestTemplate или Http-коды требуют много времени для написания, поэтому интерфейс упакован в jar-пакет на основе официального SDK, чтобы избежать появления избыточного кода в вашем бизнесе.

Адрес облачной платформы Jiefeng

Облачная платформа Jiefeng### API Jiefeng Официальная документация

Почему был запущен проект?

Вы можете быстро подключиться к интерфейсу облачной платформы Jiefeng.

Руководство по использованию

  1. добавьте pom.xml
<dependency>
    <groupId>io.gitee.renkai721</groupId>
    <artifactId>jftech-camera</artifactId>
    <version>1.0.0</version>
</dependency>

Пример функции демонстрации


  1. инициализация
    JLinkClient jClient = new JLinkClient(
    "e0534f3240274897821a126be19b6d46",
    "5b027c14d371332e88a9cbae30375ee7",
    "fd664d5fa6974ec09023818f68b23212",
    5);
    // Инициализация устройства
    JLinkDevice jDevice = new JLinkDevice(jClient, "1234567890123457", "device Username", "device password");
  1. Привязка устройства
    String url = String.format("%s/%s", JLinkDomain.OPENAPI_DOMAIN.get(), JLinkDeviceRequestUrl.DEVICE_BIND.get());
    Map<String, String> bodyParam = new HashMap<>();
    bodyParam.put("sn", "1234567890123457");
    JLinkHttpUtil.httpsRequest(url, "POST", JLinkHeaderUtil.map(jClient), new Gson().toJson(bodyParam));
  1. Получение токена устройства
    String deviceToken = jDevice.getDeviceToken();
  1. Получение статуса устройства
    DeviceStatusData statusResponse = jDevice.deviceStatus();
  1. Получение адреса прямого эфира устройства
    // Этот метод возвращает видео в формате H265
    JLinkUser jUser = new JLinkUser(jClient);
    String liveStream = jDevice.deviceLivestream(DeviceLiveStreamEnum.STREAM_EXTRA.get(), DeviceLiveStreamEnum.MEDIATYPE_HLS.get(), DeviceLiveStreamEnum.PROTOCOL_TS.get(), jUser);
  1. Получение адреса прямого эфира устройства в формате H264``` // Обратите внимание, что vue-video-player в VUE может воспроизводить только m3u8 в формате h264 Calendar calendar = Calendar.getInstance(); calendar.setTime(new Date()); calendar.add(Calendar.DAY_OF_MONTH, 2); Date futureTime = calendar.getTime(); try { JLinkClient jClient = new JLinkClient(uuid, appKey, appSecret, moveCard); JLinkDevice jDevice = new JLinkDevice(jClient, sn, username, password); JLinkUser jUser = new JLinkUser(jClient); String liveStream = jDevice.deviceLivestream( "0", "1", "hls", "ts", String.valueOf(futureTime.getTime()), "h264", "aac", jUser); log.info("liveStream={}", liveStream); } catch (Exception e) { e.printStackTrace(); }
jDevice.login();

> 8. Получение набора возможностей системы устройства
jDevice.deviceAbility(JLinkDeviceAbilityEnum.SYSTEMFUNCTION);

> 9. Настройка устройства (например, для получения конфигурации DAS устройства)
try {
    NetWorkDasConfig dasConfig;
    dasConfig = (NetWorkDasConfig) jDevice.getConfig(JLinkDeviceConfigTypeEnum.NETWORKDAS);
    JLinkLog.i(new Gson().toJson(dasConfig));
    /**
     * Установка конфигурации устройства Пример с NetWorkDasConfig
     * Получение dasConfig из запроса GetConfig
     */
    try {
        dasConfig.getNetWorkDAS().setServerAddr("127.0.0.1");
        jDevice.setConfig(dasConfig);
    } catch (JLinkDeviceSetConfigException e) {
        JLinkLog.e("Ошибка установки конфигурации: " + e);
    }
} catch (JLinkDeviceGetConfigException e) {
    JLinkLog.e("Ошибка получения конфигурации: " + e);
}

> 10. Управление работой устройства (управление ориентацией подвеса)
try {
    PtzDirectionControlDTO ptzDirectionControlDTO = new PtzDirectionControlDTO();
    
    // DirectionUp=, DirectionDown=, DirectionLeft=, DirectionRight=
    // DirectionLeftUp=, DirectionLeftDown=, DirectionRightUp=, DirectionRightDown=
    // FocusNear=Zoom in, FocusFar=zoom out
    ptzDirectionControlDTO.getOpptzControl().setCommand(PTZControlEnum.DirectionRight);
    // канал 1
    ptzDirectionControlDTO.getOpptzControl().getParameter().setChannel(0);
    // 0~65535: начать упражнение -1: остановить упражнение
    ptzDirectionControlDTO.getOpptzControl().getParameter().setPreset(1);
    // скорость вращения
    ptzDirectionControlDTO.getOpptzControl().getParameter().setStep(1);
    jDevice.deviceOperate(ptzDirectionControlDTO);
} catch (JLinkDeviceOperateException e) {
    JLinkLog.e("Ошибка выполнения: " + e);
}
try {
    String picUrl = jDevice.capture(0);
    JLinkLog.i(picUrl);
} catch (JLinkDeviceCaptureException e) {
    JLinkLog.e(e.toString());
}


> 12. Настройка Wi-Fi
try {
    JLinkClient jClient = new JLinkClient(uuid, appKey, appSecret, moveCard);
    JLinkDevice jDevice = new JLinkDevice(jClient, sn, username, password);
    NetWorkWifiConfig dasConfig = (NetWorkWifiConfig) jDevice.getConfig(JLinkDeviceConfigTypeEnum.NETWORKWIFI);
    dasConfig.getNetWorkWifiDTO().setSsid("Имя вашего Wi-Fi");
    dasConfig.getNetWorkWifiDTO().setKeys("Пароль вашего Wi-Fi");
    jDevice.setConfig(dasConfig);
} catch (Exception e) {
    log.error("Ошибка настройки Wi-Fi");
    e.printStackTrace();
    throw new Exception("Ошибка настройки Wi-Fi");
}

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Быстрое подключение к платформе JFCloud позволяет управлять камерами посредством интерфейсов, обеспечивая возможность перемещения камеры вверх, вниз, влево и вправо, а также увеличения и уменьшения изображения. Если ваша камера управляется с помощью следующих приложений, вы можете использовать этот плагин для управления: [SuperKankan, XMEye, JFD... Развернуть Свернуть
Apache-2.0
Отмена

Обновления (1)

все

Участники

все

Язык

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/renkai721-jftech-camera.git
git@api.gitlife.ru:oschina-mirror/renkai721-jftech-camera.git
oschina-mirror
renkai721-jftech-camera
renkai721-jftech-camera
master