OBS Studio
Macro Deck에 포함장면을 전환하고, 방송·녹화·오디오를 제어하고, OBS Studio에서 일어나는 일에 반응하세요.
구성 이름, 호스트, 포트, 비밀번호가 있는 OBS Studio 연결 대화 상자
- 장면, 프로필, 장면 컬렉션 전환
- 방송, 녹화, 리플레이 버퍼, 가상 카메라 시작과 중지
- 입력 음소거, 볼륨 설정, 소스와 필터 전환
- 장면, 타임코드, FPS, 드롭된 프레임에 대한 실시간 변수
- 여러 OBS 인스턴스에 동시 연결
OBS Studio 연동은 OBS에 내장된 WebSocket 서버(obs-websocket 5)를 통해 Macro Deck을 OBS에 연결합니다. 연결되면 방송 중에 OBS에서 하는 거의 모든 작업을 버튼으로 제어할 수 있고, OBS가 바뀐 내용을 알려 주므로 덱은 항상 현재 상태를 보여 줍니다.
할 수 있는 일
- 프로그램 장면, 스튜디오 모드 미리 보기 장면, 프로필 또는 장면 컬렉션을 전환합니다.
- 방송, 녹화, 리플레이 버퍼, 가상 카메라를 시작, 중지 또는 전환하고, 리플레이를 저장하고, 녹화를 일시 정지하고, 녹화 파일을 나누거나 챕터 마커를 추가합니다.
- 장면의 소스를 표시하거나 숨기고, 필터를 켜거나 끄고, 입력을 음소거하거나 볼륨을 퍼센트나 dB로 바꿉니다.
- 소스의 설정을 바꿉니다. 예를 들어 텍스트 소스의 텍스트, 이미지 또는 미디어 소스의 파일, 브라우저 소스의 URL을 바꿀 수 있습니다.
- 플러그인이 추가한 출력을 포함해 어떤 OBS 출력이든 이름으로 시작하고 중지합니다.
활용 예:
- BRB 장면으로 전환하고 마이크를 음소거하는 BRB 버튼.
- 녹화를 전환하고 OBS가 녹화 중인지, 일시 정지되었는지, 정지되었는지 보여 주는 녹화 버튼.
- 음악 입력의
obs_<input>_volume변수에 연결되어, 움직이면 OBS의 볼륨이 바뀌는 슬라이더. - OBS가 스트리밍 시작됨을 알리면 실행되어 알림을 보내는 흐름.
동작 방식
Macro Deck은 OBS가 보내는 이벤트를 수신하므로 현재 장면, 음소거 상태, 필터 상태 같은 변수는 OBS에서 바꾼 뒤 1초도 안 되어 업데이트됩니다. 토글 버튼은 상태가 활성인 동안 켜지며, OBS 자체에서 바꾼 경우에도 마찬가지입니다. FPS, CPU 사용량, 비트레이트, 드롭된 프레임 같은 통계는 1~2초마다 읽어 옵니다.
고정 변수 외에도 변수 선택기에는 연결된 OBS의 각 입력, 장면, 장면 항목, 필터가 볼륨, 음소거 상태, 표시 여부, 활성 상태와 함께 나열됩니다. 트리거는 장면 변경, 녹화 및 방송 변경, 저장된 리플레이와 스크린샷, 활성화된 입력, 직접 만든 OBS 스크립트가 브로드캐스트하는 사용자 지정 이벤트에 반응합니다.
구성을 여러 개 추가할 수 있습니다. 예를 들어 방송용 PC와 게임용 PC에 하나씩 둘 수 있습니다. 각 구성은 고유한 변수 세트를 가지며, 모든 액션에는 제어할 OBS를 고르는 구성 필드가 있습니다. OBS가 닫히거나 네트워크가 끊기면 Macro Deck은 계속 다시 연결을 시도하고 연결 끊김 및 연결됨 트리거를 실행합니다.
준비물
- Windows, macOS 또는 Linux의 Macro Deck 3
- OBS Studio 28 이상 (obs-websocket 5 포함)
- OBS의 Tools > WebSocket Server Settings에서 켠 WebSocket 서버
- 출력을 이름으로 시작하고 중지하려면 obs-websocket 5.7 이상이 필요함
설정하기
1단계: OBS에서 WebSocket 서버 켜기
OBS에서 Tools > WebSocket Server Settings를 열고 Enable WebSocket server를 체크하세요. Server Port(기본값
4455)를 적어 두세요. Enable Authentication이 체크되어 있으면 Show Connect Info를 클릭해 비밀번호를 확인하세요.2단계: Macro Deck에서 OBS Studio 열기
Macro Deck의 사이드바에서 연동을 클릭하고 OBS Studio를 클릭하세요. 개요 탭의 구성 섹션에서 구성 추가를 클릭하세요. 오른쪽 위의 스위치를 켜도 같은 대화 상자가 열리며, 설정을 마치면 연동이 켜집니다.
3단계: 연결 정보 입력
OBS Studio 연결 대화 상자를 채우세요.
- 구성 이름: 직접 정하는 이름, 예:
Streaming PC. - 호스트: OBS가 같은 컴퓨터에서 실행 중이면
127.0.0.1, 아니면 OBS가 실행 중인 컴퓨터의 IP 주소. - 포트: OBS의 서버 포트, 기본값은
4455. - 비밀번호: OBS의 비밀번호. 인증이 꺼져 있으면 비워 두세요.
계속을 클릭하세요. Macro Deck은 구성을 저장하기 전에 연결을 테스트합니다.
- 구성 이름: 직접 정하는 이름, 예:
4단계: 버튼에 OBS 액션 추가
덱 페이지에서 사용할 버튼을 클릭하세요. 덱의 잠금이 해제되어 있어야 하며, 오른쪽 위 버튼에 잠금이라고 표시되어 있으면 해제된 상태입니다. 짧게 누르기가 선택된 상태로 편집기가 열립니다. + 액션 추가를 클릭하고 액션 추가 대화 상자 왼쪽에서 OBS Studio를 선택한 다음 장면 설정 같은 액션을 고르세요. 구성과 장면을 선택한 다음 저장을 클릭하세요.
5단계: 버튼 누르기
스마트폰, 태블릿 또는 웹 클라이언트에서 버튼을 누르세요. OBS가 고른 장면으로 전환됩니다. 아무 일도 일어나지 않으면 OBS가 실행 중인지, 연동 아래 OBS Studio 페이지에서 구성이 연결됨으로 표시되는지 확인하세요.
액션35
버튼에 넣거나 흐름에서 실행하세요.
- 장면 설정
- 활성 프로그램 장면을 전환합니다.
- 미리 보기 장면 설정
- 스튜디오 모드 미리 보기 장면을 전환합니다.
- 프로필 설정
- OBS를 다른 프로필로 전환합니다.
- 장면 컬렉션 설정
- OBS를 다른 장면 컬렉션으로 전환합니다.
- 녹화 시작
- 녹화를 시작합니다.
- 녹화 중지
- 녹화를 중지합니다.
- 녹화 토글
- 녹화를 시작하거나 중지하고, OBS가 녹화 중인지, 일시 정지되었는지, 정지되었는지 표시합니다.
- 녹화 일시 정지/재개
- 현재 녹화를 일시 정지하거나 재개합니다.
- 스트리밍 시작
- 방송을 시작합니다.
- 스트리밍 중지
- 방송을 중지합니다.
- 스트리밍 토글
- 방송을 시작하거나 중지합니다.
- 가상 카메라 시작
- 가상 카메라를 시작합니다.
- 가상 카메라 중지
- 가상 카메라를 중지합니다.
- 가상 카메라 토글
- 가상 카메라를 시작하거나 중지합니다.
- 리플레이 버퍼 시작
- 리플레이 버퍼를 시작합니다.
- 리플레이 버퍼 중지
- 리플레이 버퍼를 중지합니다.
- 리플레이 버퍼 토글
- 리플레이 버퍼를 시작하거나 중지합니다.
- 리플레이 버퍼 저장
- 현재 리플레이 버퍼를 디스크에 저장합니다.
- 녹화 파일 나누기
- 녹화를 계속하면서 새 녹화 파일을 시작합니다.
- 녹화 챕터 만들기
- 녹화 중인 파일에 챕터 마커를 추가합니다(Hybrid MP4 형식만 해당).
- 녹화 폴더 설정
- OBS가 새 녹화를 저장할 폴더를 설정합니다.
- 출력 시작
- 플러그인이 추가한 출력을 포함해 OBS 출력을 이름으로 시작합니다.
- 출력 중지
- 플러그인이 추가한 출력을 포함해 OBS 출력을 이름으로 중지합니다.
- 출력 전환
- 플러그인이 추가한 출력을 포함해 OBS 출력을 이름으로 시작하거나 중지합니다.
- 출력 상태 가져오기
- OBS 출력이 활성인지 여부를 변수로 읽습니다.
- 소스 표시 설정
- 장면의 소스를 표시하거나, 숨기거나, 전환합니다.
- 입력 음소거
- 오디오 입력을 음소거하거나, 음소거를 해제하거나, 전환합니다.
- 입력 볼륨 설정
- 오디오 입력의 볼륨을 퍼센트나 dB로 설정하거나 높이거나 낮춥니다.
- 소스 필터 설정
- 소스의 필터를 켜거나, 끄거나, 전환합니다.
- OBS 입력 설정 변경
- 소스의 설정 하나를 바꿉니다. 예를 들어 텍스트 소스의 텍스트나 브라우저 소스의 URL입니다.
- 입력 볼륨 가져오기
- 오디오 입력의 볼륨 퍼센트를 변수로 읽습니다.
- 필터 상태 가져오기
- 소스 필터가 켜져 있는지 여부를 변수로 읽습니다.
- 입력 음소거 상태 가져오기
- 오디오 입력이 음소거되었는지 여부를 변수로 읽습니다.
- 소스 표시 상태 가져오기
- 장면에서 소스가 표시되는지 여부를 변수로 읽습니다.
- 스튜디오 모드 토글
- 스튜디오 모드를 켜거나 끕니다.
트리거24
버튼이나 흐름이 이 이벤트에 반응할 수 있습니다.
- 장면 변경됨
- 프로그램(라이브) 장면이 바뀌었습니다. 특정 장면으로 한정할 수도 있습니다.
- 미리 보기 장면 변경됨
- 스튜디오 모드 미리 보기 장면이 바뀌었습니다.
- 녹화 시작됨
- OBS가 녹화를 시작했습니다.
- 녹화 중지됨
- OBS가 녹화를 중지했습니다.
- 녹화 일시 정지됨
- 녹화가 일시 정지되었습니다.
- 녹화 재개됨
- 녹화가 재개되었습니다.
- 녹화 파일 변경됨
- 녹화가 시작되었거나, 새 파일로 넘어갔거나, 중지되었으며, 파일 경로를 함께 제공합니다.
- 스트리밍 시작됨
- OBS가 방송을 시작했습니다.
- 스트리밍 중지됨
- OBS가 방송을 중지했습니다.
- 리플레이 버퍼 시작됨
- 리플레이 버퍼가 시작되었습니다.
- 리플레이 버퍼 중지됨
- 리플레이 버퍼가 중지되었습니다.
- 리플레이 버퍼 저장됨
- 리플레이 클립이 디스크에 저장되었으며, 파일 경로를 함께 제공합니다.
- 스크린샷 저장됨
- OBS가 스크린샷을 디스크에 저장했으며, 파일 경로를 함께 제공합니다.
- 가상 카메라 시작됨
- 가상 카메라가 시작되었습니다.
- 가상 카메라 중지됨
- 가상 카메라가 중지되었습니다.
- 스튜디오 모드 변경됨
- 스튜디오 모드가 켜지거나 꺼졌습니다.
- 입력 음소거 변경됨
- 오디오 입력이 음소거되었거나 음소거가 해제되었습니다. 특정 입력으로 한정할 수도 있습니다.
- 입력 활성화됨
- 입력이 프로그램 출력에 렌더링되기 시작했습니다. 예를 들어 웹캠이 송출되기 시작한 경우입니다.
- 입력 비활성화됨
- 입력이 프로그램 출력에 더 이상 렌더링되지 않습니다.
- 입력 표시 시작됨
- 입력이 프로그램 또는 미리 보기 출력에 렌더링되기 시작했습니다.
- 입력 표시 중지됨
- 입력이 프로그램 또는 미리 보기 출력에 더 이상 렌더링되지 않습니다.
- 사용자 지정 이벤트
- OBS 스크립트나 플러그인이 사용자 지정 이벤트를 브로드캐스트했습니다. 특정 이벤트 이름으로 한정할 수도 있습니다.
- 연결됨
- Macro Deck이 OBS에 연결되었고 OBS가 로딩을 마쳤습니다.
- 연결 끊김
- OBS와의 연결이 끊어졌습니다.
변수14
버튼과 위젯에 이 값을 표시하거나 조건에 사용하세요.
obs_<configuration>_is_connected- Macro Deck이 이 OBS에 연결되어 있는지 여부입니다.
obs_<configuration>_current_scene- 활성 프로그램 장면입니다.
obs_<configuration>_preview_scene- 스튜디오 모드의 미리 보기 장면입니다.
obs_<configuration>_current_profile- 활성 프로필입니다.
obs_<configuration>_current_scene_collection- 활성 장면 컬렉션입니다.
obs_<configuration>_is_recording,obs_<configuration>_recording_paused,obs_<configuration>_recording_timecode- OBS가 녹화 중인지, 일시 정지되었는지, 녹화가 얼마나 진행되었는지 나타냅니다.
obs_<configuration>_is_streaming,obs_<configuration>_streaming_timecode- OBS가 방송 중인지와 방송 시간입니다.
obs_<configuration>_virtual_camera_active,obs_<configuration>_replay_buffer_active,obs_<configuration>_studio_mode_active- 가상 카메라, 리플레이 버퍼, 스튜디오 모드가 켜져 있는지 여부입니다.
obs_<configuration>_fps,obs_<configuration>_max_fps,obs_<configuration>_cpu_usage- OBS가 보고하는 성능 수치입니다.
obs_<configuration>_streaming_bitrate,obs_<configuration>_recording_bitrate- 현재 출력 비트레이트(kbps)입니다.
obs_<configuration>_dropped_frames,obs_<configuration>_dropped_frames_percent,obs_<configuration>_skipped_frames,obs_<configuration>_skipped_frames_percent- 스트림에서 누락된 프레임과 인코더가 건너뛴 프레임의 개수와 비율(퍼센트)입니다.
obs_<configuration>_last_recording_file,obs_<configuration>_last_screenshot- 가장 최근 녹화 파일과 스크린샷의 경로입니다.
obs_<input>_volume,obs_<input>_muted등- 선택한 각 입력의 값입니다. 볼륨(dB, 쓸 수 있으므로 슬라이더로 설정 가능), 음소거, 활성, 표시 중, 오디오 트랙(
obs_<input>_track_1부터_6까지), 모니터 유형, 동기화 오프셋과 입력 설정입니다. 선택기가 이 이름을 제안하며, 바꿀 수 있습니다. obs_<scene>_<source>_visible,obs_<source>_<filter>_enabled- 장면에서 소스가 보이는지, 필터가 사용 중인지 여부입니다. 선택기가 이 이름을 제안하며, 바꿀 수 있습니다.
자주 묻는 질문
OBS가 다른 컴퓨터에서 실행 중이어도 동작하나요?
네. OBS가 실행 중인 컴퓨터의 IP 주소를 호스트에 입력하고, 그 컴퓨터의 방화벽에서 포트(기본값 4455)를 허용하세요. 녹화 폴더 설정이나 OBS 입력 설정 변경 같은 액션의 경로는 OBS가 실행 중인 컴퓨터의 경로입니다.
OBS를 여러 개 제어할 수 있나요?
네. 구성 추가로 OBS 인스턴스마다 구성을 하나씩 추가하세요. 각 구성은 고유한 변수를 가지며, 각 액션에는 제어할 OBS를 고르는 구성 필드가 있습니다.
OBS가 닫히거나 연결이 끊기면 어떻게 되나요?
Macro Deck은 백그라운드에서 계속 다시 연결을 시도하며, OBS가 돌아오면 다시 연결됩니다. 그때까지 액션은 OBS가 연결되어 있지 않습니다. 메시지와 함께 실패하고, 연결 끊김 및 연결됨 트리거가 실행되어 흐름이 반응할 수 있습니다.
액션이 실패하는 이유는 무엇인가요?
액션이 이유를 보여 줍니다. 예를 들어 장면이나 소스가 더 이상 없거나, OBS가 아직 장면 컬렉션을 불러오는 중이거나, OBS가 녹화 중이 아닌 경우(녹화 파일 나누기와 녹화 챕터 만들기)입니다. OBS에서 이름을 바꿨다면 액션에서 다시 고르세요.
WebSocket 비밀번호는 어디에 저장되나요?
Macro Deck은 비밀번호를 Macro Deck이 실행 중인 컴퓨터에 암호화하여 저장하며 OBS에 연결할 때만 사용합니다.
스트리밍의 다른 연동
Meld Studio
Macro Deck에 포함Meld Studio에서 장면을 전환하고 준비하며, 레이어, 효과, 오디오 트랙을 제어하고, 라이브를 시작하세요.
Streamlabs Desktop
Macro Deck에 포함Streamlabs Desktop에서 장면을 전환하고 방송, 녹화, 오디오 소스를 제어하세요.
Streamer.bot
Macro Deck에 포함Streamer.bot 액션을 실행하고, 채팅 메시지를 보내고, Streamer.bot이 보고하는 모든 이벤트에 반응하세요.
Twitch
Macro Deck에 포함Twitch 채팅과 방송 통계를 표시하고, 채팅을 관리하고, 투표와 광고를 실행하고, 팔로우·구독·레이드에 반응하세요.
YouTube
Macro Deck에 포함YouTube 실시간 채팅과 방송 통계를 표시하고, 제목과 태그를 바꾸고, 슈퍼 챗과 멤버에 반응하세요.