Raspberry Pi 4에서 OBS Studio의 NDI 플러그인 (obs-ndi)을 사용해 보았습니다.
5788 단어 NDIRaspberryPi4OBSobs-ndi
소개
라즈파이(ARM 디바이스)에서 NDI 수신을 할 수 있게 되었으므로, OBS Studio 을 위한 NDI 플러그인 obs-ndi 를 시도해 보았습니다.
※ obs-ndi는 Windows, macOS, Linux(x86, x64)용으로 라즈파이(ARM 디바이스)로 동작하기 위해서는 코드의 수정과 빌드가 필요했습니다. 또한 OBS Studio의 헤더 파일을 변경해야했습니다.
(참고) 라즈파이에서 NDI 수신을 할 수있게되었습니다.
htps : // 코 m / 키타자키 / ms / 669f65774d77b2f9b82d
도입 절차
1. OBS Studio 소스 코드를 다운로드하여 빌드 및 설치합니다.
(참고) 라즈파이로 OBS Studio를 움직입니다.
htps : // 코 m/키타자키/있어 ms/후037d195f497에 b54427
htps : // 코 m / 키타자키 / ms / 36b9f9 80 세 c12164f9
※ make 와 make install 가 끝난 후부터의 순서
obs-ndi 빌드에 필요한 헤더 파일을 복사합니다.
$ cd
$ sudo cp obs-studio/UI/obs-frontend-api/obs-frontend-api.h /usr/include/obs/
obs-ndi 빌드를 통과시키기 위해 헤더 파일을 수정합니다.
/usr/include/obs/obs.h#include "graphics/vec3.h"
↓
/* #include "graphics/vec3.h" */
/usr/include/obs/graphics/graphics.hEXPORT void gs_clear(uint32_t clear_flags, const struct vec4 *color,
↓
EXPORT void gs_clear(uint32_t clear_flags, const struct vec2 *color,
2. obs-ndi 소스 코드를 다운로드하여 소스 코드를 수정합니다.
$ git clone https://github.com/Palakis/obs-ndi.git
$ cd obs-ndi
CMakeLists.txtset(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -mtune=core2 -Ofast")
↓
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
src/obs-ndi-filter.cppstruct vec4 background;
vec4_zero(&background);
↓
struct vec2 background;
vec2_zero(&background);
src/preview-output.cppstruct vec4 background;
vec4_zero(&background);
↓
struct vec2 background;
vec2_zero(&background);
3. obs-ndi 빌드를 실행합니다.
$ mkdir build && cd build
$ cmake -DLIBOBS_INCLUDE_DIR="../../obs-studio/libobs" -DCMAKE_INSTALL_PREFIX=/usr ..
$ make -j4
4. 빌드된 라이브러리를 OBS Studio의 플러그인 폴더에 복사합니다.
$ sudo cp obs-ndi.so /usr/lib/obs-plugins/
※ 라이브러리 (바이너리)를 github에 두십시오. (빌드가 번거롭다면 다운로드하여 OBS Studio 플러그인 폴더에 저장하십시오)
htps : // 기주 b. 코 m / 키타 자키 / 오 bs - ぢ_ 아 rm
동작 확인
환경
$ cd
$ sudo cp obs-studio/UI/obs-frontend-api/obs-frontend-api.h /usr/include/obs/
#include "graphics/vec3.h"
↓
/* #include "graphics/vec3.h" */
EXPORT void gs_clear(uint32_t clear_flags, const struct vec4 *color,
↓
EXPORT void gs_clear(uint32_t clear_flags, const struct vec2 *color,
$ git clone https://github.com/Palakis/obs-ndi.git
$ cd obs-ndi
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -mtune=core2 -Ofast")
↓
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
struct vec4 background;
vec4_zero(&background);
↓
struct vec2 background;
vec2_zero(&background);
struct vec4 background;
vec4_zero(&background);
↓
struct vec2 background;
vec2_zero(&background);
$ mkdir build && cd build
$ cmake -DLIBOBS_INCLUDE_DIR="../../obs-studio/libobs" -DCMAKE_INSTALL_PREFIX=/usr ..
$ make -j4
$ sudo cp obs-ndi.so /usr/lib/obs-plugins/
2020-05-27-raspios-buster-armhf.zip (OS 이미지 파일)
NDI 소스를 받고 YouTubeLive에 전달
NDI output을 활성화하고 NDI 모니터(macOS)에서 확인
Reference
이 문제에 관하여(Raspberry Pi 4에서 OBS Studio의 NDI 플러그인 (obs-ndi)을 사용해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kitazaki/items/12b309624536f886d026텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)