|
|
7 months ago | |
|---|---|---|
| .idea | 7 months ago | |
| cmake | 11 months ago | |
| cmake-build-debug | 7 months ago | |
| patch | 2 years ago | |
| src | 2 years ago | |
| start_scripts | 8 years ago | |
| wsdl | 9 years ago | |
| .gitignore | 2 years ago | |
| CHANGELOG.md | 2 years ago | |
| CMakeLists.txt | 7 months ago | |
| LICENSE | 3 years ago | |
| README.md | 7 months ago | |
README.md
WSDD - ONVIF WS-Discovery 서버
설명
wsdd는 ONVIF WS-Discovery 서비스를 위한 Linux 데몬(서버 측)입니다. ONVIF 공식 웹사이트: https://www.onvif.org 그리고 그들의 GitHub 페이지도 참고하세요. 웹 서비스 데이터 바인딩은 gSOAP을 사용하여 생성되었습니다. 이에 대한 자세한 내용은 gSOAP WS-Discovery 플러그인 공식 매뉴얼을 참조하세요.
빌드
의존성
이 프로젝트를 빌드하기 위해 대부분의 Linux 시스템에서는 다음 패키지의 설치가 필요합니다:
make m4 flex bison byacc yacc
암호화 및 WS-Security 지원이 필요한 경우에는 추가적으로 다음이 필요합니다:
openssl zlib libcrypto
예를 들어, Ubuntu 22.04에서는 아래 명령으로 설치할 수 있습니다:
sudo apt install flex bison byacc make cmake m4
# 암호화 및 WS-Security 지원을 위한 패키지
sudo apt install openssl libssl-dev zlib1g-dev libcrypto++8
CMakeLists.txt를 기반으로 CMake를 사용하여 빌드하는 방법은 다음과 같습니다: 4가지 빌드 방식이 있습니다:
- 기본적으로 빌드는 이전 스타일(
Makefile)로 진행됩니다. 독립적인gSOAP버전을 직접 빌드하여 사용하며(build_gsoap.cmake 참조), 이와 동시에 필요한gSOAP기능을 프로젝트와 함께 컴파일합니다.
cd repo_dir
cmake -B build .
cmake --build build
- 첫 번째 방법과 유사하지만, 정적 라이브러리
gSOAP을 사용하여 빌드(링크)합니다.
cd repo_dir
cmake -B build . -DUSE_GSOAP_STATIC_LIB=1
cmake --build build
- 시스템에 설치된
gSOAP을 사용합니다. 이를 위해 검색 모듈(FindgSOAP.cmake)을 사용하여 시스템 내gSOAP을 검색 및 활용합니다.
cd repo_dir
cmake -B build . -DUSE_SYSTEM_GSOAP=1
cmake --build build
예를 들어, Ubuntu 22.04에서 gSOAP을 설치하려면 다음 패키지를 설치해야 합니다:
sudo apt install gsoap libgsoap-dev
- 세 번째 방법과 유사하지만, FindgSOAP.cmake 검색 모듈에 정적 라이브러리를 검색하도록 지시합니다.
이를 통해
gSOAP시스템 라이브러리에 의존하지 않게 됩니다.
cd repo_dir
cmake -B build . -DUSE_SYSTEM_GSOAP=1 -DUSE_GSOAP_STATIC_LIB=1
cmake --build build
사용법
데몬을 시작하려면 작업에 필요한 매개변수를 전달해야 합니다:
./wsdd --if_name eth0 --type tdn:NetworkVideoTransmitter --xaddr http://%s:1000/onvif/device_service --scope "onvif://www.onvif.org/name/Unknown onvif://www.onvif.org/Profile/Streaming"
더 자세한 내용은 도움말을 확인하세요:
./wsdd --help
또는 S90wsdd 스크립트를 사용하여 데몬을 시작할 수 있습니다(구형 init.d 스크립트 스타일):
./start_scripts/S90wsdd start
시스템에서 systemd를 사용하는 경우: [wsdd.service]를 참고하세요.(./start_scripts/wsdd.service)
테스트
이 데몬을 테스트하려면 클라이언트 애플리케이션이 필요합니다.
Linux:
참고: ONVIF Device Tool은 자체
wsdd데몬을 포함하고 있으며, 애플리케이션 시작 및 종료 시killall wsdd명령을 호출합니다. 이는 이 데몬에도 영향을 미칩니다.
Windows:
라이선스
Copyright
Copyright (C) 2016 Koynov Stas - skojnov@yandex.ru