![]()
방송 시작 전 매번 같은 작업을 반복하고 있지 않나요? 장면 전환 순서 맞추고, 자막 텍스트 바꾸고, 타이머 설정하고. 하루 이틀이면 괜찮습니다. 그런데 매일 방송하는 BJ라면 이야기가 다릅니다. OBS 파이썬 스크립트 자동화를 활용하면 이런 반복 작업을 단 한 번의 설정으로 끝낼 수 있습니다.
OBS 파이썬 스크립트란 무엇인가
OBS Studio에는 스크립팅 기능이 내장되어 있습니다. 도구 메뉴 안에 '스크립트'라는 항목이 있는데, 여기에 파이썬(.py) 파일을 불러오면 OBS의 거의 모든 기능을 코드로 제어할 수 있습니다.
어떤 걸 자동화할 수 있나
- 장면 전환 - 특정 시간이 되면 자동으로 장면이 바뀝니다
- 텍스트 소스 변경 - 자막, 카운트다운, 공지사항을 코드로 업데이트합니다
- 소스 표시/숨기기 - 후원 알림, 이벤트 배너를 조건에 따라 켜고 끕니다
- 필터 조작 - 색보정, 크로마키 값을 상황별로 자동 변경합니다
코딩을 전혀 모르는 BJ도 걱정할 필요가 없습니다. 기본 스크립트를 복사해서 숫자 몇 개만 바꾸면 됩니다. 실제로 아래 사례의 BJ들도 프로그래밍 경험이 전무했습니다.
파이썬 스크립트 자동화 환경 세팅 3단계
처음 한 번만 제대로 세팅하면 이후로는 스크립트 파일만 추가하면 됩니다.
1단계: Python 설치 및 경로 연결
Python 공식 사이트에서 3.6.8 버전을 다운로드합니다. 설치할 때 'Add Python to PATH' 체크를 반드시 하세요. 설치가 끝나면 OBS를 열고 도구 > 스크립트 > Python 설정 탭에서 Python 설치 경로를 지정합니다.
2단계: 스크립트 폴더 구조 만들기
방송용 스크립트를 한 폴더에 모아두면 관리가 편합니다. 아래 구조를 추천합니다.
| 폴더 | 용도 | 예시 파일 |
|---|---|---|
| obs-scripts/timer/ | 카운트다운, 타이머 | countdown.py |
| obs-scripts/scene/ | 장면 자동 전환 | auto_switch.py |
| obs-scripts/text/ | 자막, 공지 변경 | notice_update.py |
| obs-scripts/alert/ | 알림 제어 | donation_alert.py |
3단계: 첫 스크립트 로드 및 테스트
OBS 도구 > 스크립트 > + 버튼으로 .py 파일을 추가합니다. 스크립트 로그 창에서 에러가 없는지 확인하세요. 테스트는 반드시 방송 전에 합니다. 녹화 모드로 먼저 돌려보는 습관이 사고를 막습니다.
실전 사례: 자동화로 방송 루틴 바꾼 BJ 3명
"매번 방송 시작할 때 15분씩 세팅하던 게 이제 버튼 한 번이에요. 이걸 왜 이제 알았는지 모르겠어요." - 게임 BJ K씨 (아프리카TV, 동접 평균 200명)
사례 1: 게임 BJ K씨 - 장면 전환 자동화
K씨는 게임 방송을 하면서 대기 화면, 게임 화면, 휴식 화면을 수동으로 전환했습니다. 문제는 게임에 집중하다 보면 장면 전환을 까먹는 일이 잦았다는 겁니다. 파이썬 스크립트로 핫키 조합 없이 타이머 기반 자동 전환을 설정한 뒤, 방송 시작 시 대기 화면 3분 후 자동으로 게임 화면으로 넘어가게 만들었습니다. 휴식 시간도 채팅에 '!휴식'을 입력하면 자동으로 휴식 장면으로 바뀌도록 연동했습니다.
결과는 확실했습니다. 방송 준비 시간이 15분에서 2분으로 줄었습니다.
사례 2: 토크 BJ M씨 - 실시간 자막 자동 갱신
M씨는 시청자 사연을 읽는 토크 방송을 합니다. 매 사연마다 화면 하단 자막을 수동으로 바꿔야 했는데, 파이썬 스크립트로 텍스트 파일을 모니터링하게 만들었습니다. 메모장에 사연 제목을 적으면 0.5초 안에 OBS 자막이 자동으로 갱신됩니다. M씨는 이 방법으로 사연 코너 진행 속도가 2배 빨라졌다고 합니다.
사례 3: 먹방 BJ Y씨 - 후원 목표 자동 업데이트
Y씨는 방송마다 후원 목표를 설정하고, 달성률을 화면에 표시합니다. 이전에는 후원이 들어올 때마다 수동으로 숫자를 바꿨습니다. 지금은 스크립트가 텍스트 파일에서 후원 누적값을 읽어 프로그레스 바 텍스트를 자동 갱신합니다. Y씨의 후원 목표 달성률이 시각적으로 실시간 반영되면서, 시청자들의 추가 후원 동기가 올라갔습니다. 도입 첫 달 후원 횟수가 기존 대비 35% 증가했습니다.
(K씨 기준)
(M씨 기준)
(Y씨 기준)
BJ가 바로 쓸 수 있는 OBS 자동화 스크립트 4가지
아래 스크립트들은 복사해서 바로 쓸 수 있는 수준으로 구성했습니다. 파일명만 맞추고 OBS에 로드하면 됩니다.
1. 카운트다운 타이머
방송 시작 전 대기 화면에 카운트다운을 자동으로 표시합니다. 설정한 시간이 끝나면 지정한 장면으로 자동 전환됩니다. 텍스트 소스 이름과 전환할 장면 이름만 스크립트 상단에서 수정하면 됩니다.
2. 텍스트 파일 모니터링
지정한 .txt 파일의 내용이 바뀌면 OBS 텍스트 소스를 자동으로 업데이트합니다. 사연 방송, 노래 제목 표시, 공지사항 변경에 활용도가 높습니다. 파일 감시 주기는 기본 1초이며, 0.3초까지 줄일 수 있습니다.
3. 시간대별 자동 장면 전환
방송 타임테이블에 맞춰 장면을 자동으로 바꿉니다. 예를 들어 8시에 오프닝, 8시 10분에 본방, 9시 30분에 엔딩 장면으로 자동 전환되는 식입니다. 스케줄이 정해진 BJ에게 특히 유용합니다.
4. 소스 토글 스크립트
특정 조건에서 소스를 보이거나 숨깁니다. 후원 이벤트 배너를 일정 시간만 표시하거나, 특정 시간대에만 로고 워터마크를 띄우는 데 활용합니다.
파이썬 스크립트 자동화 시 흔한 실수와 해결법
처음 스크립트를 적용할 때 대부분의 BJ가 비슷한 곳에서 막힙니다. 미리 알아두면 시행착오를 줄일 수 있습니다.
| 실수 | 증상 | 해결법 |
|---|---|---|
| Python 버전 불일치 | 스크립트 로드 시 에러 | OBS 버전에 맞는 Python 버전 확인 후 재설치 |
| 소스 이름 오타 | 스크립트 실행되나 변화 없음 | OBS 소스 이름과 스크립트 내 이름 정확히 일치시키기 |
| 인코딩 문제 | 한글 자막이 깨짐 | 파일 저장 시 UTF-8 인코딩 지정 |
| 경로에 한글 포함 | 파일을 못 찾음 | 스크립트 폴더 경로를 영문으로 변경 |
| 무한 루프 작성 | OBS 멈춤 | while True 대신 obs.timer_add() 사용 |
- 스크립트 수정 후에는 반드시 '스크립트 다시 불러오기' 버튼을 눌러야 합니다
- OBS 로그 파일(도움말 > 로그 파일)에서 에러 원인을 바로 확인할 수 있습니다
- 스크립트가 예상대로 작동하지 않으면 print() 함수로 스크립트 로그에 값을 출력해서 디버깅하세요
자동화 다음 단계: 방송 데이터와 연결하기
스크립트 자동화에 익숙해지면 다음 단계로 방송 데이터 연동을 시도해볼 만합니다. 예를 들어 큰손탐지기에서 확인한 핵심 후원자 데이터를 텍스트 파일로 내보내고, 파이썬 스크립트가 이를 읽어 OBS 화면에 실시간으로 반영하는 구조를 만들 수 있습니다.
실제로 BJ K씨는 큰손 시청자가 입장하면 특별 환영 자막이 자동으로 뜨는 스크립트를 만들어 사용하고 있습니다. 이런 후원자 분석 기능과 OBS 자동화를 결합하면 시청자 경험이 확실히 달라집니다.
- 후원자 입장 시 맞춤 환영 메시지 자동 표시
- 후원 랭킹 보드 실시간 갱신
- 방송 시간 경과에 따른 배경 자동 변경
자동화를 한 번 경험하면 수동으로 돌아가기 어렵습니다. 오늘 당장 할 수 있는 첫 단계는 이겁니다. Python 3.6을 설치하고, 카운트다운 타이머 스크립트 하나를 OBS에 로드해보세요. 5분이면 됩니다. 그 5분이 앞으로 매 방송마다 반복되는 30분을 돌려줄 겁니다.