지난 실험노트에서는 블로그의 AI 협업 사고일지를 YouTube Shorts로 바꾸는 방법을 살펴봤다. OpenAI API나 별도의 영상 생성 서비스를 쓰면 편하겠지만, 이미 내고 있는 ChatGPT 구독료에 추가 비용까지 얹을 생각은 없었다. 결국 대화형 ChatGPT에서 영상 제작 자료를 직접 만들어야 한다는 결론이었다.
ChatGPT Work 영상 생성 결과와 맥락 문제
첫 실험에서 Work는 약 20분 만에 38초짜리 숏츠를 만들어냈다. 로봇 캐릭터에 한국어 음성, 자막, BGM까지 붙은 MP4였다. 기술적으로는 성공인데... 너무 AI스럽고, 무엇보다 재미가 없었다. ㅡㅡ;;
그동안 ChatGPT를 갈구면서 쌓아온 AI 코딩 사고일지에는 황당한 상황과 그때의 판단이 녹아 있다. 그런데 Work 결과물은 그런 맥락을 살린 상황극이 아니라, 사건을 얌전하게 설명하는 발표 영상에 가까웠다. 이걸 유튜브에 올릴 생각은 전혀 들지 않았다.

내가 상대해 온 대화형 ChatGPT와 Work는 이름이 같아도 작업 환경이 달랐다. 실제 모델이 무엇인지를 떠나, 지금까지 주고받은 의도와 연출 방향이 결과물에 제대로 반영되지 않았다는 게 문제였다.
대화형 ChatGPT와 Work 사이의 파일 전달 문제
그래서 대본, 캐릭터 이미지, 모션과 카메라 연출은 모두 대화형에서 확정하고, Work에는 JavaScript 작성과 ZIP 패키징만 맡기기로 했다. 이미 쌓인 대화 맥락을 유지하면서 구현 작업만 분리하려던 것이다. 그런데 대화형에서 생성한 PNG 파일을 Work가 찾지 못했다. 텍스트 지시는 넘어가도 이미지 같은 실제 파일은 그대로 전달되지 않았다. ChatGPT는 Google Drive에 업로드한 뒤 Work에서 다시 내려받는 방법을 제안했다.
같은 ChatGPT 환경에서 파일 하나 전달하려고 Google Drive를 거쳐야 한다고? 이게 무슨 짓인가... 중간 저장소까지 만들어가며 영상 하나를 제작할 생각은 없었다.
TPublisher ZIP Package 경험과 MyGPT 실험
그때 TPublisher의 ZIP Package 전환과 이후 에필로그를 정리했던 경험이 떠올랐다. TPUB 발행 과정에서도 Work 전환 문제를 겪었지만, 웹브라우저에서는 대화형 ChatGPT가 직접 파일과 ZIP을 생성해 다운로드할 수 있었다.
회사에서 서로 다른 ChatGPT 계정을 분리해 쓰려고 급하게 만든 Chromium 기반 MyGPT에서도 TPUB 발행이 된다는 건 이미 알고 있었다. 그렇다면 영상 제작용 YPUB도 가능하지 않을까? 실제로 MyGPT에서 이미지와 모션 스크립트, JavaScript를 포함한 ZIP 생성을 시험했다. 결과는 성공. Work로 전환하지 않고 현재 대화에서 패키지를 만들 수 있었다...! Google Drive를 중간에 끼울 이유도 사라졌다.
JavaScript 로봇 애니메이션과 5초 모션 실험
패키지 생성은 해결했지만, 처음 만든 애니메이션은 PNG 세 장을 바꾸고 흔드는 수준이었다. 화면은 움직이는데 정작 로봇의 팔과 머리는 움직이지 않는 것이다. 내가 원한 건 통짜 이미지의 이동이 아니라 몸통, 머리, 팔, 표정을 분리한 파츠별 모션이었다. 방식을 고쳐 JavaScript로 각 파츠를 움직이는 5초짜리 영상을 만들었다. 관절이 어색한 부분은 있어도, 적어도 이제 로봇이 움직인다.

망할... 티스토리에서 mp4 영상 업로드 기능도 없어져서... ChatGPT에게 GIF 형식으로 결과물 출력해돌라고 요청했다... ㅡㅡ;;
MyShorts 구상: YPUB, FFmpeg, YouTube OAuth
그런데 블로그 글마다 이 작업을 반복할 생각을 하니 결국 또 프로그램이 필요해졌다. 이름은 MyShorts.
ChatGPT는 대본, 영상용 이미지와 애니메이션 JavaScript, 모션, BGM과 효과음 등 모든 제작 소스를 YPUB ZIP으로 제공한다. MyShorts는 그 ZIP을 받아 애니메이션을 실행하고, FFmpeg으로 숏츠 MP4를 생성한다. 마지막에는 사용자가 영상을 검토하고 승인하면 OAuth 인증으로 YouTube에 직접 게시하는 방식이다.
TPublisher는 티스토리 자동 발행을 포기하고 편집기로 옮기는 과정을 줄였지만, MyShorts에서는 승인 후 직접 게시까지 연결해 볼 생각이다. 물론 현재 0.0.1은 GUI만 구현한 상태이고, YPUB 로딩부터 영상 인코딩, YouTube 업로드까지는 앞으로 검증해야 한다.
블로그 글을 숏츠 하나로 만들어보려던 일이었는데... 결국 나는 또 프로그램을 만들고 있다...