Windows에서 ZLMediaKit 컴파일 및 실행

요약

이 문서에서는 Windows에서 ZLMediaKIt을 컴파일하고 실행하는 방법을 설명합니다 .

실험실 환경

操作系统:Windows 10 (22H2 19045.2251)
开发工具:Visual Studio 2022

배경 지식

Windows에서 ZLMediaKit을 컴파일하는 것은 Ubuntu에서 ZLMediaKit을 컴파일하는 것 보다 약간 더 어렵습니다 .

ZLMediaKit의 대기 시간이 가장 짧은 WebRTC 기능을 경험하려면 다음 오픈 소스 라이브러리를 사전 컴파일해야 합니다.

FFmpeg: 用于拉流、转码、编码、推流。
OpenSSL: 加密库、TLS库。
libsrtp:SRTP(安全实时传输协议),用于WebRTC音视频数据的安全传输。
usrsctp: 一个采用C语言开发的SCTP协议栈,用于WebRTC数据通道的安全传输。

FFmpeg 컴파일

방법 1: FFmpeg 공식 웹사이트에서 미리 컴파일된 개발 패키지를 직접 다운로드합니다.

방법 2: "Windows에서 FFmpeg 컴파일"을 참조하세요.

OpenSSL 컴파일

OpenSSL 3.1.1 개발 패키지를 설치하려면 vcpkg를 사용하는 것이 좋습니다. 명령은 다음과 같습니다.

vcpkg install openssl --triplet x64-windows

환경 변수 CMAKE_TOOLCHAIN_FILE을 vcpkg.cmake 파일 경로로 설정합니다. 예는 다음과 같습니다.

rem 请将环境变量值替换成你的vcpkg的实际安装路径。
环境变量名:CMAKE_TOOLCHAIN_FILE
环境变量值:G:\vcpkg\scripts\buildsystems\vcpkg.cmake

libsrtp 컴파일

cmd.exe를 실행하고 명령줄 인터페이스에서 다음 작업을 수행합니다.

#获取源码
git clone https://github.com/cisco/libsrtp.git

#进入libsrtp的源码仓库目录,用git命令查看标签,创建分支:
cd libsrtp
git tag
git checkout v2.5.0

#创建构建目录,用cmake构建。
mkdir build_x64
cd build_x64
cmake -S .. -B . -A x64 -DBUILD_SHARED_LIBS=on -DENABLE_OPENSSL=on
rem 如下命令会构建所有项目(project),包括测试项目。
cmake --build . --config Debug --target ALL_BUILD
rem 如果你只想构建srtp2项目,可以将上一行命令替换为如下命令:
cmake --build . --config Debug --target srtp2

#安装编译结果
#注意:将YOU_SRTP_INTALL_DIR替换为实际的安装目录。
cmake --install . --config Debug --prefix YOU_SRTP_INTALL_DIR

#修改PATH环境变量
#为了让cmake的find_package命令能找到已安装的librtcp开发包,
#请将libsrtp开发包的实际安装目录添加到PATH环境变量中。

usrsctp 컴파일

폴더를 저장할 소스 코드 웨어하우스를 찾아 cmd.exe를 실행하고 다음 작업을 수행합니다.

git clone https://github.com/sctplab/usrsctp.git
cd usrsctp
git tag
git checkout 0.9.5.0
mkdir build_x64
cd build_x64
rem 注意:用你本地工作路径替换“--install-prefix=”参数的值。
cmake -S .. -B . -A x64 --install-prefix=%YOUR_WORK_DIR%\usrsctp\output -Dsctp_werror=off
rem 用VS 2022打开生成的解决方案,修改usrsctp项目的Debug配置的运行库选项,
rem 改为与ZLMediaKit的MediaServer项目的配置一致,比如:/MTd。
rem 编译usrsctp项目和INSTALL项目。
rem 将output目录的全路径添加到PATH环境变量中,
rem 或者将安装包内容复制到任何cmake能查找到的目录。

ZLMediaKit 소스 코드 받기

ZLMediaKit은 공식적으로 git을 사용하여 ZLMediaKit 코드를 복제할 것을 권장합니다. 예는 다음과 같습니다.

#国内用户推荐从同步镜像网站gitee下载 
git clone --depth 1 https://gitee.com/xia-chu/ZLMediaKit
cd ZLMediaKit
#千万不要忘记执行这句命令
git submodule update --init

Visual Studio 솔루션 구성 및 빌드

cmake-gui 프로그램을 실행하고 ZLMediaKit 소스 코드 디렉터리와 출력 디렉터리를 선택한 후 먼저 구성 버튼을 클릭한 후 생성 버튼을 클릭합니다.예제는 다음과 같습니다.

ZLMediaKit 컴파일 및 실행

打开ZLMediaKit\release\windows\Debug\Debug目录下的config.ini,修改secret密钥。
打开上一节的生成目录(例如:build_x64),双击打开ZLMediaKit.sln解决方案。
将MediaServer设为启动项目,按F5自动编译和运行。

요약하다

Windows에서는 ZLMediaKit의 종속 라이브러리를 컴파일하는 것이 상대적으로 번거롭고 컴파일하는 방법이 많기 때문에 더 많은 실습이 필요하고 문제가 발생하면 문제를 해결합니다. ZLMediaKit의 종속성 라이브러리를 준비하고 나면 Visual Studio 2022와 같은 강력한 IDE를 사용하여 ZLMediaKit 소스 코드를 컴파일하고 디버깅할 때 "새로운 마을에는 밝은 미래가 있습니다"라는 편안한 느낌을 갖게 될 것입니다.

추천

출처blog.csdn.net/bigwave2000/article/details/132295190