이 라이브러리는 노드 런타임에서 사용할 목적으로 libobs라는 이름의 obs-studio 내부 라이브러리에 바인딩을 제공할 예정입니다. 현재는 Windows와 MacOS만 지원됩니다.
다음이 설치되어 있어야 합니다.
Windows에서 빌드하려면 추가 소프트웨어가 필요합니다.
우리는 맞춤형 사용을 위해 cmake 스크립트를 지속적으로 관리할 필요성을 방지하는 동시에 정상적인 기본값을 제공하기 위해 가능한 한 광범위하고 일반적인 유연한 cmake 스크립트를 사용합니다. 이것은 꽤 표준적인 cmake 레이아웃을 따르며 원하는 대로 실행할 수 있습니다.
예:
yarn install
git submodule update --init --recursive
mkdir build
cd build
cmake .. -G"Visual Studio 17 2022" -A x64 -DCMAKE_PREFIX_PATH=%CD%/libobs-src/cmake/
cmake --build . --target install --config RelWithDebInfo
그러면 필요한 종속성을 다운로드하고, 모듈을 빌드한 다음, 해당 package.json에서 지정할 수 있는 npm 또는 Yarn과 호환되는 아카이브에 배치합니다.
기본적으로 아무것도 지정되지 않은 경우 미리 빌드된 libobs 버전을 다운로드합니다. 그러나 이 사전 구축된 버전은 귀하가 사용하려는 버전이 아닐 수도 있고 새로운 obs 기능을 테스트하고 있을 수도 있습니다.
자신만의 사용자 정의 아카이브를 지정할 수 있습니다. 그러나 빌드하기 전에 obs-studio의 기본 구성을 일부 변경해야 합니다.
ENABLE_SCRIPTING
false
로 설정해야 합니다.ENABLE_UI
false
로 설정해야 합니다.QTDIR
사용되지 않으므로 지정하면 안 됩니다.소스에서 obs-studio를 빌드하는 방법을 모르는 경우 여기에서 지침을 찾을 수 있습니다.
http://cppcheck.sourceforge.net/에서 cppcheck를 설치하고 PATH에 cppcheck 폴더를 추가하십시오. 명령줄에서 확인을 실행하려면:
cd build
cmake --build . --target CPPCHECK
또한 Visula Studio에서 타겟을 구축할 수도 있습니다. 보고서 출력 형식이 호환 가능으로 설정되고 빌드 결과 패널에서 파일:라인으로의 탐색이 가능합니다.
obs-studio-client/cppcheck_suppressions_list.txt
및 obs-studio-server/cppcheck_suppressions_list.txt
파일에서 일부 경고가 표시되지 않습니다.
Ninja
와 LLVM
시스템에 설치되어 있어야 합니다. 경고: depot_tool이 닌자를 망가뜨렸습니다.
빌드를 열려면 cmd.exe
실행하세요.
mkdir build_clang
cd build_clang
"c:Program Files (x86)Microsoft Visual Studio 14.0VCbinamd64vcvars64.bat"
set CCC_CC=clang-cl
set CCC_CXX=clang-cl
set CC=ccc-analyzer.bat
set CXX=c++-analyzer.bat
#set CCC_ANALYZER_VERBOSE=1
#make ninja project
cmake -G "Ninja" -DCLANG_ANALYZE_CONFIG=1 -DCMAKE_INSTALL_PREFIX:PATH="" -DCMAKE_LINKER=lld-link -DCMAKE_BUILD_TYPE="Debug" -DCMAKE_SYSTEM_NAME="Generic" -DCMAKE_MAKE_PROGRAM=ninja.exe ..
#try to build and "fix" errors
ninja.exe
#clean build to scan
ninja.exe clean
scan-build --keep-empty -internal-stats -stats -v -v -v -o check ninja.exe
코드 기반, 특히 타사 코드는 clang을 사용하여 빌드할 준비가 되어 있지 않으므로 오류를 "fixing"
단계가 중요합니다. 그리고 컴파일에 실패한 파일은 오류가 있는지 검사하지 않습니다.
Obs 스튜디오 노드에 대한 테스트는 Typescript로 작성되었으며 Mocha를 테스트 프레임워크로 사용하고 Electron에서 Mocha를 실행하기 위한 Electron-Mocha 패키지와 어설션 프레임워크로 Chai를 사용합니다.
테스트를 실행하려면 obs-studio-node를 빌드해야 합니다. 원하는 방식으로 빌드할 수 있습니다. 단, CMAKE_INSTALL_PREFIX
사용하여 선택한 폴더에 obs-studio-node를 설치하세요. 테스트에서는 이 변수를 사용하여 obs-studio-node 모듈이 어디에 있는지 확인합니다. 우리는 Electron의 자체 포크를 사용하므로, yarn install
실행한 후 Electron 바이너리가 node_modules 폴더에 있는 위치를 가리키는 ELECTRON_PATH
라는 환경 변수도 생성해야 합니다. 다음은 obs-studio-node를 구축하는 세 가지 방법입니다.
obs-studio-node 루트 폴더에서:
yarn install
git submodule update --init --recursive --force
mkdir build
cmake -Bbuild -H. -G"Visual Studio 16 2019" -A x64 -DCMAKE_INSTALL_PREFIX="path_of_your_choosing"
cmake --build build --target install
obs-studio-node 루트 폴더에서:
mkdir build
yarn local:config
yarn local:build
yarn local:clean
수행하세요. yarn install
Where is the source code:
상자에 obs-studio-node 프로젝트 경로를 입력하세요.Where to build the binaries:
상자에 빌드 폴더의 경로를 입력합니다.Configure
클릭하세요Generate
을 클릭하세요Open Project
클릭하여 Visual Studio를 열고 거기에서 프로젝트를 빌드합니다. 일부 테스트는 Twitch와 상호 작용하며 사용자 풀 서비스를 사용하여 사용자를 가져오지만, 여기에서 사용자를 가져올 수 없는 경우 환경 변수에서 제공하는 스트림 키를 사용합니다. 선택한 Twitch 계정의 스트림 키를 사용하여 SLOBS_BE_STREAMKEY라는 환경 변수를 만듭니다.
yarn run test
수행하세요.yarn run test --grep describe_name_value
실행하십시오. 여기서 describe_name_value
각 테스트 파일의 explain 호출에 전달된 테스트의 이름입니다. 예: yarn run test --grep nodeobs_api
또는 yarn run test -g "Start streaming"