업무 시스템 · 2025
실시간 다국어 자막 송출 프로그램
입력자가 친 자막을 여러 언어로 번역해 행사 화면에 동시에 띄우는 데스크톱 앱
행사·강연 현장에서 입력자가 친 자막을 어절 단위로 바로 내보내고, 완성된 문장은 여러 언어로 번역해 언어별 자막 창에 동시에 띄우도록 했습니다. 두 입력자가 송출 권한을 주고받아 장시간 행사에서도 자막이 끊기지 않습니다.
- 고객
- 비공개 고객
- 분야
- 업무 시스템

개요
- 행사·강연 현장에서 발표 내용을 실시간 자막으로 내보내는 데스크톱 프로그램
- 사용 대상은 자막을 치는 입력자와 현장 운영자, 자막을 받아 보는 참석자
- 전체 동선은 호스트 개설 → 입력자·관전자 접속 → 자막 입력과 송출 → 언어별 자막 창 표시 → 기록 파일 저장
- 호스트 한 대에 입력자 1명, 관전자 최대 10명 접속
- 관전자는 송출된 자막만 받아 보며, 각자 자기 화면에 자막 창 배치
과제
- 긴 행사를 한 사람이 끝까지 입력하면 속도와 정확도 유지가 어려움 → 입력자 교대 필요
- 교대 지점에서 자막이 끊기거나 같은 문장이 두 번 나가는 문제
- 외국어 참석자를 위한 자막은 언어마다 인력을 따로 세워야 가능
- 문장이 끝나야 자막이 나가면 발표 속도를 따라가지 못함
- 행사마다 화면 크기, 배경 밝기, 좌석 거리가 달라 자막 크기와 위치를 매번 다시 맞춰야 함
해결 방법
- 어절 단위 송출 → 문장이 끝나기 전에도 자막이 발표 속도를 따라감
- 자동 송출 모드에서 마지막 세 어절만 남기고 자동 송출 → 오타를 고칠 여유 확보
- 기능키로 송출과 삭제를 제어(첫 어절 송출, 마지막·첫 어절 삭제, 전체 송출 후 입력창 비우기)
- 이미 송출한 부분은 배경색으로 구분하고 수정 불가 → 중복 송출과 누락 차단
- 송출 권한 넘기기로 두 입력자가 번갈아 입력 → 교대 지점에서도 자막이 이어짐
- 상대 입력자가 치고 있는 문장을 실시간으로 함께 표시 → 교대 시점과 다음 문장 판단
- 자주 쓰는 긴 표현은 짧은 예약어로 등록해 입력 중 바로 치환

시스템 구조
구성
- 호스트 한 대에 입력자와 관전자가 같은 네트워크로 접속
- 자막 창은 언어별로 따로 열리며, 테두리 없이 발표 화면 위에 올려 두는 방식
- 자막 창, 기록 창, 설정 창, 상용구 창을 따로 띄워 현장에서 동시에 운용
작업 흐름
- 입력 → 어절 송출 → 문장 완성 감지 → 언어별 번역 → 자막 창 표시와 기록 파일 저장
- 원문 자막은 번역을 기다리지 않고 먼저 나가고, 번역 자막은 문장 단위로 뒤따라 붙음

구현
- 마침표·물음표·느낌표와 줄바꿈으로 문장 끝을 판정해 완성된 문장만 번역 대상으로 넘김 → 토막난 문장 번역 방지
- 직전 문장과 그 번역 결과를 함께 넘겨 번역 → 앞뒤 맥락과 용어 표기가 이어짐
- 언어별 번역을 동시에 처리 → 언어 수가 늘어도 자막이 밀리지 않음
- 번역 결과를 다듬는 규칙을 운영자가 직접 작성해 적용 가능(외부 코드 불러오기는 차단)
- 자막 창은 마우스로 위치와 크기를 바로 조절하고, 배경 불투명도를 0~255로 조절해 발표 화면 위에 겹쳐 사용
- 창 높이와 폰트에서 표시 줄 수를 자동 계산하고, 띄어쓰기가 없는 중국어·일본어는 글자 단위로 줄바꿈

결과
- 두 입력자가 교대하며 장시간 행사에서도 자막이 끊기지 않게 됨
- 원문 자막과 번역 자막을 같은 구성으로 동시 송출 → 언어별 인력 없이 다국어 자막 운용
- 영어, 중국어, 일본어, 태국어, 스페인어, 아랍어, 포르투갈어, 프랑스어 자막 지원
- 행사 현장에서 자막 크기·색·위치·투명도를 그 자리에서 조정
- 송출 내용이 언어별 텍스트 파일로 남아 행사 후 기록으로 사용 가능
사용 기술
- Python
- wxPython
- OpenAI API
- TCP Socket
- Win32 API
화면





해결이 필요한 문제가 있으신가요?
소프트웨어 개발부터 장비 연동과 엔지니어링까지, 프로젝트의 요구사항에 적합한 해결 방안을 함께 검토합니다.
프로젝트 문의하기