버미육

버미육 도전일기... - 5부

K66Google 2022. 10. 20. 19:57

 

나는 TTS에 입력하는 대사를 어떻게 하면 OBS에 출력시킬 수 있을지 연구해보기로 하였다.

먼저 TTS 페이지의 어느 부분에 내가 입력한 대사가 들어가는지 확인해봐야 한다. 온갖 삽질의 결과로 0번 배열의 value에 들어간다는 것을 확인할 수 있었다.

 

 

addeventlistener라는 자바스크립트 기능을 통해 input이 감지될 시 콘솔 로그에 대사 입력 창의 문장을 출력시키도록 해보았다.

이러면 내가 타이핑을 칠 때마다 감지가 되서 출력이 된다. 좋아. 여기까지는 잘 됐다.

이제 대사 입력 창의 문장을 내 컴퓨터 클립보드에 복사하는 것까지 해본다. 자바스크립트의 클립보드 복사는 두 가지 방식이 있는데...

 

document.execCommand("copy"); 같은 방식과

 

navigator.clipboard.writeText(text1).then(() => {  ...이런 방식이 있다.

 

execCommand 방식으로 복사하려고 하니까 자꾸만 대사 입력 창에서 커서가 포커스를 잃는 문제가 발생하여, 아래쪽의 navigator.clipboard 방식을 적용하는 것으로 해결했다.

 

 

지금까지는 테스트를 위해 F12의 콘솔에서 일일이 명령어를 입력하여 확인했다.

매번 그럴 수는 없으므로 자동화를 위해 Tampermonkey용 스크립트로 만든다. 스크립트는 페이지 로딩때 동시에 불러오면 작동하지 않으므로 페이지가 다 로딩되고 난 뒤 0.2초 후에 실행되도록 한다.

 

이렇게 성공적으로 클립보드에 입력 문장을 복사하는 기능을 구현했으니 이제 VB.Net으로 대사를 보여주는 프로그램을 만든다.

 

 

프로그램명은 그냥 클립보드 뷰어라고 정했다. 어차피 나 혼자만 쓰게 될 거니까.

하지만 모든 복사된 문장을 가져와서는 안 되고, TTS 대사 창에서 복사된 문장만 보여줘야 된다.

그래서 나는 Tampermonkey 스크립트에서 입력 문장을 복사할때 맨 앞에 식별자 (asdf$@! 이런 식으로...) 같은 걸 붙여서 클립보드에 복사하게 구현했다.

그리고 클립보드 뷰어에서 클립보드 변화가 감지되면 먼저 식별자가 포함되어 있는지 확인하고, 식별자가 있으면 TTS 대사 창에서 온 걸로 간주하고 클립보드 뷰어에 출력. 아닐 경우 출력하지 않는 식으로 하였다.

클립보드 뷰어의 배경 색은 녹색을 사용했다. 이러면 OBS에서 크로마키 기능을 적용하여 대사가 출력되지 않을때 뷰어 화면을 가릴 수 있다. (대사 출력 때만 흰색 배경으로 바뀌도록 한다.)

 

이 프로그램을 완성하는데에는 대략 사흘 가까이 걸렸다.

이제 방송에서 확인해보는 일만 남았다.

 

 

- 7일차 방송 (2022.10.17)

 

데뷔한 지 벌써 일주일이 지났다.

위에서 개발한 클립보드 뷰어도 정상적으로 잘 작동되고 있다. 폰트 크기는 조금 증가시켜야 할 것 같다.

다만 심즈3가 예전에 출시된 게임이라서 그런지 게임 진행 중에 렉이 심하게 걸리는 현상이 있었다. 방송 종료 후 검색을 통해 신형 그래픽 카드 인식 조치, 수직 동기화 및 60프레임 제한, 메모리 할당 최대 2GB에서 8GB로 변경, Overwatch 같은 정리 플러그인 등을 적용하였다.

이제 내일 8일차 방송만 하면 휴방이다. 조금만 더 힘내자.

 

 

- 8일차 방송 (2022.10.18)

 

역사의 시대2 (舊 문명의 시대2) 는 패러독스 사 전략시뮬레이션과 비슷한 게임이다.

그러나 게임 과정이 단순하므로 간단하게 즐기기에는 나쁘지 않다고 본다.

 

이런 식으로 6일간의 방송 정주행을 마치고, 트위치 통계를 한 번 분석해본다.

이 글에는 생방송 시청수만 인용한다. 나머지는 솔직히 인용하기에도 빈약한 수치라서...

 

일자 프로그램명 생방송 시청수
2022-10-11 (1일차) 데뷔 방송 - 한자공부Q 7
2022-10-12 (2일차) (휴방) -
2022-10-13 (3일차) 원신 6
2022-10-14 (4일차) 유로트럭2 21
2022-10-15 (5일차) 삼국지13 12
2022-10-16 (6일차) 시티즈 스카이라인 9
2022-10-17 (7일차) 심즈3 9
2022-10-18 (8일차) 역사의 시대2 3

 

가장 흥한 것은 유로트럭2 였다. 가장 시청 수요가 많아서 그런가?

가장 망한 것은 역사의 시대2 였다. 그러한 종류의 게임은 하는 사람만 즐거운 건가...

 

 

- 9일차 휴방 (2022.10.19)

휴방일이 되었으므로 방송 전반에 대한 재검토를 실시한다.

 

1. 지금까지는 오후 4시 정각에 방송을 시작하였다. 미리 3시 50분 정도되면 준비하고 대기하고 있는 식으로 했는데, 이러니까 강박관념에 휩싸일 것 같다. 그래서 방송 시간은 이제 불규칙하게 하기로 한다.

 

2. 트위치 일정 기능은 이제 쓰지 않는다. 제휴나 파트너 스트리머가 아니면 '몇 월 며칠에 이거 한다!' 라고 명확하게 일정을 지정할 수 없고 '매주 무슨 요일에 이거 한다!' 이런 식으로 두루뭉술하게만 지정할 수 있다. 번거로우니까 이제 안 쓴다. 프로그램 일정이나 공지사항은 트위치 정보 창을 확인하는 식으로 유도한다.

 

과연 내가 6개월을 다 채울 수 있을지도 모르겠다.

이쪽 분야는 멀리서 봤을때는 뭔가 재미있고 즐거운 분위기였다. 시청자 입장에서는 그랬다. 그런데 막상 버미육에 도전하면서 스트리밍 쪽에 깊숙하게 들어오니 막막하고 눈앞이 깜깜하기만 하다.

시청자 수나 팔로우/구독자 수 같은 것에 연연하지 않으려고 해도 사람인지라 그런 것에 눈길이 가는 건 어쩔 수가 없다.

그럴때마다 내가 왜 버미육에 도전하는 것인지 나 자신에게 되물어본다.

내가 버미육에 도전하는 건 그저 블로그 소재 창출, 선호하는 게임에 대한 스트리밍 저조, 게임 녹화 시의 추가 요소 희망때문에 그런 게 아니던가.

나는 지금까지 돈이 안되는 일만 해왔다. 이번 버미육 도전도 마찬가지일 것이다. 아무리 투네이션 링크를 달아놓는다 해도 그 또한 현재로서는 장식에 불과하다는 걸 나는 잘 알고 있다.

그럼에도 나는 하고 싶었다. 위에서 언급한 3가지 이유도 있지만, 더 나이를 먹으면 아예 도전할 엄두조차도 내지 못할 것 같으니까...

 

아무튼, 이런 식으로 계속 진행하도록 하자.

그리고 앞으로의 방송 내용은 일기에 구체적으로 서술하지 않고, 휴방일에 통계 분석 할 때 짤막하게 언급하는 식으로 해야겠다.

 

- 6부에서 계속

 

'버미육' 카테고리의 다른 글

버미육 도전일기... - 7부  (0) 2022.11.02
버미육 도전일기... - 6부  (0) 2022.10.26
버미육 도전일기... - 4부  (0) 2022.10.13
버미육 도전일기... - 3부  (0) 2022.10.12
버미육 도전일기... - 2부  (0) 2022.10.10