45개 비디오테이프를 디지털화하기 위한 8년간의 여정 (1부)
원문은 Michael Lynch님이 에 게재했습니다. 이 블로그 구독하기
지난 8년 동안 나는 이 비디오테이프 상자를 네 곳의 아파트와 한 채의 집으로 옮겨 다니며 가지고 다녔다. 어릴 적 가족 홈비디오가 담긴 테이프들이다.
600시간이 넘는 작업 끝에 마침내 원본 테이프를 버려도 될 만큼 깔끔하게 디지털화하고 정리했다. 지금 그 영상들은 이렇게 보인다.


디지털화되어 비공개 미디어 공유 서버에서 시청할 수 있는 나의 모든 홈비디오
총 513개의 개별 클립이 있으며, 각 클립에는 제목, 설명, 촬영일, 등장인물 태그, 그리고 촬영 당시 각자의 나이가 기록되어 있다. 모든 영상은 가족만 접속할 수 있는 비공개 미디어 공유 웹사이트에서 호스팅하고 있으며, 유지 비용은 한 달에 1달러도 되지 않는다.
이 글에서는 내가 어떻게 해냈는지, 왜 8년이나 걸렸는지, 그리고 여러분은 어떻게 하면 조금 더 적은 노력으로 같은 결과를 얻을 수 있는지 설명하려 한다.
순진했던 첫 시도
2010년쯤 어머니는 VHS를 DVD로 변환해 주는 기기 같은 걸 사서 우리 홈비디오를 전부 변환하셨다.

어머니가 테이프를 복사해 만드신 원본 DVD들 (빠진 알파벳들은 어떻게 된 건지 모르겠다)
문제는 DVD가 단 한 세트뿐이었다는 것이다. 가족 모두가 서로 다른 주에 살고 있어 디스크를 돌려보는 것도 불편했다.
2012년에 누나가 그 DVD들을 내게 줬다. 나는 DVD를 리핑해 비디오 파일로 만든 뒤 전부 클라우드 스토리지에 올렸다. 문제 해결!

Google Cloud Storage에 공유한 가족 홈비디오 DVD 리핑 파일들
몇 주 뒤 다들 영상을 봤는지 물어봤다. 아무도 안 봤다고 했다. 나도 안 봤다. 유튜브 시대에 3시간짜리 정체불명의 파일을 내려받아 재미있는 장면을 찾는 일은 너무 지루하게 느껴졌다.
유일하게 신나 한 사람은 어머니였다. “좋아, 잘 됐다,” 하시더니 “이제 이 테이프들 드디어 버려도 되니?”라고 물으셨다.
아차 싶었다. 무서운 질문이었다. 혹시 놓친 테이프가 있으면 어떡하지? 더 높은 화질로 디지털화할 수 있다면? VHS 테이프 라벨에 흥미로운 정보가 적혀 있다면?
가능한 가장 높은 화질로 모든 영상을 빠짐없이 확보했다는 확신이 들기 전까지는 원본 테이프를 버리는 게 영 찜찜했다. 결국 직접 하기로 했다.
내가 무슨 일에 발을 들였는지 그때는 전혀 몰랐다.
그렇게 어려워 보이진 않는데
왜 이 작업에 8년과 수백 시간이 걸렸는지 궁금하다면 이해한다. 나도 처음엔 쉬운 프로젝트라고 생각했다.
디지털화 과정은 처음부터 끝까지 이렇게 진행된다.
아니, 정확히는 이론상으로는 그렇다는 얘기다. 실제로는 이렇게 진행됐다.
내가 쓴 시간 대부분은 재작업이었다. 한 단계를 끝내고 한두 단계 뒤에야 내 방식에 결함이 있다는 걸 깨닫곤 했다. 예를 들어 테이프 20개를 캡처하고 나서야 오디오가 살짝 어긋나 있다는 걸 알았다. 또 몇 주 동안 편집한 뒤에야 온라인 스트리밍을 지원하지 않는 형식으로 영상을 내보내고 있었다는 걸 깨닫기도 했다.
모두의 정신 건강을 위해, 독자들이 나와 함께 계속 뒤로 돌아가 다시 시작하게 만드는 대신 과정이 계속 앞으로만 진행된 것처럼 설명하려 한다.
1단계: 비디오 캡처
자, 다시 2012년으로 돌아가 보자. 어머니는 20년간 보관해 온 가족 홈비디오의 관리인 역할을 빨리 끝내고 싶어 하셨고, 다음에 만났을 때 내게 비디오테이프가 가득 든 커다란 박스를 건네주셨다. 그렇게 나의 디지털화 모험이 시작됐다.
가장 당연한 해결책은 전문가에게 맡기는 것이었다. 오래된 홈비디오 처리를 전문으로 하는 업체를 포함해 디지털화 업체는 많다.
나는 프라이버시에 꽤 민감한 편이라, 내가 배변 훈련하는 모습이 담긴 영상(적절한 나이 때다, 이상한 건 아니다!)을 모르는 사람에게 맡기는 게 꺼림칙했다. 게다가 ‘영상 디지털화가 얼마나 어렵겠어?’라고 생각했다.
스포일러: 정말 어렵다.
첫 번째 비디오 캡처 시도
오래된 가족용 VCR이 아직 아버지 지하실에 있어서, 다음에 점심을 함께 먹을 때 꺼내 달라고 부탁했다. 아마존에서 저렴한 RCA-USB 어댑터를 하나 샀고, 바로 작업에 들어갔다.

이 과정에서 내가 구입한 수많은 A/V 장비 중 첫 번째인 TOTMC 비디오 캡처 장치
USB 캡처 장치에서 들어오는 영상을 처리하기 위해 VirtualDub을 사용했다. 2012년 기준으로도 좀 오래된 프로그램이었지만, 그렇다고 그렇게 오래된 건 아니었다.

4살 때 아빠에게 책을 읽어 드리던 모습을 VirtualDub으로 원본 영상을 캡처하는 중
고질적인 오디오 싱크 어긋남
편집을 시작하면서 오디오와 비디오가 살짝 어긋나 있다는 걸 깨달았다. 괜찮아, 오디오를 조금 옮기면 되지.
10분 뒤, 또 싱크가 어긋났다. 처음에 충분히 옮기지 않은 건가?
서서히 깨달았다. 오디오와 비디오가 단순히 어긋난 게 아니라 서로 다른 속도로 캡처되고 있었다는 걸. 테이프가 진행될수록 둘 사이의 간격은 점점 더 벌어졌다. 싱크를 맞추려면 몇 분마다 수동으로 오디오를 계속 조정해야 했다.

비디오 장비가 오디오와 비디오를 서로 다른 속도로 캡처한다면, 유일한 해결책은 몇 분마다 수동으로 오디오를 보정하는 것이다.
10밀리초 빨리 들리는 소리와 10밀리초 늦게 들리는 소리를 구분하는 게 얼마나 어려운지 아는가? 정말 어렵다! 직접 판단해 보라.
불쌍할 정도로 참을성 많은 내 새끼 고양이 Black Magic과 놀고 있는 영상이다. 오디오가 비디오와 살짝 어긋나 있다. 오디오가 비디오보다 빠른가, 느린가?
오디오와 비디오 싱크가 어긋난 비디오 클립 예시
Magic이 점프하는 부분을 1/5 속도로 느리게 재생한 영상이다.
오디오와 비디오 싱크가 어긋난 영상, 1/5 속도로 재생
수백 시간을 낭비하느니 100달러를 더 쓸걸
오디오 보정만으로도 지루하고 미칠 노릇인 작업에 몇 시간이 걸렸다. 아마존에서 가장 싼 비디오 캡처 장치가 아닌 다른 걸 골랐다면 이런 골칫거리를 피할 수 있지 않았을까 하는 생각이 마침내 들었다. 좀 더 찾아본 끝에 새 장치를 하나 샀다.

비디오 캡처 장치를 구입하려는 두 번째 시도
새 장치로도 오디오 스큐는 여전했다.
슈퍼로 가보자
혹시 VCR 문제일까. 디지털화 포럼에서는 “타임베이스 보정기”(TBC)가 있는 VCR에서는 오디오 스큐가 발생하지 않는다고 했다. TBC는 Super VHS(S-VHS) VCR의 일반적인 기능이다.
그렇지! 문제를 해결해 줄 슈퍼 VCR이 있는데, 내가 왜 멍청한 일반 VCR로 낑낑대고 있었던 거지?
더 이상 S-VHS VCR을 만드는 곳은 없지만, eBay에서는 아직 구할 수 있다. 나는 VHS 디지털화에 적합하다고 알려진 JVC SR-V10U 모델에 179달러를 썼다.

eBay에서 179달러에 구입한 빈티지 JVC SR-V10U VCR
슈퍼 VCR이 우편으로 도착했다. 몇 달 동안 엇나간 소리와 씨름한 끝에, 모든 문제를 해결해 줄 것 같은 장비를 손에 넣으니 너무나 기뻤다.
상자를 열어 모든 걸 연결했는데, 오디오는 여전히 어긋나 있었다. 한숨이 나왔다.
지루한 문제 해결과 수년간의 슬럼프
하드웨어 문제를 해결하는 과정은 비참했다. 옷장에서 장비를 죄다 꺼내고, 데스크톱 뒤로 기어 들어가 모든 걸 연결한 뒤 캡처를 시도하면, 또 안 되는 걸 확인하는 식이었다.
오, 2008년에 올라온 어떤 포럼 글에서는 출처 불명의 서명되지 않은 중국산 장치 드라이버를 설치하라고? 끔찍한 생각이지만, 지푸라기라도 잡는 심정이었다. 그래도 문제는 해결되지 않았다.
다른 캡처 소프트웨어도 써 봤다. VCR의 자기 헤드를 청소하는 특수 VHS 테이프도 샀다. 세 번째 캡처 장치도 샀다. 결과는 항상 똑같았다.
결국에는 포기하고 모든 걸 분리해 장비를 다시 옷장 속으로 몇 달 동안 추방하곤 했다.
전문 디지털화 업체에 항복하다
시간을 빨리 감아 2018년. 나는 이 비디오테이프들과 수많은 장비를 네 곳의 아파트로 끌고 다녔고, 이제 뉴욕시에서 매사추세츠로 이사를 준비하고 있었다. 혼자서는 절대 이 프로젝트를 끝낼 수 없다는 게 분명해진 상황에서, 이 짐들을 또다시 옮길 명분을 찾을 수 없었다.
가족에게 테이프를 디지털화 업체에 맡겨도 괜찮겠냐고 물었다. 다행히 아무도 개의치 않았다. 모두 다시 영상을 보는 데 훨씬 더 관심이 많았다.
나: 그래도 그러면 어떤 회사가 우리 홈비디오 전부에 접근하게 되는 건데. 괜찮아?
여동생: 응, 상관없어. 그런 거 신경 쓰는 건 너뿐이야. 잠깐, 처음부터 그냥 돈 주고 맡길 수도 있었던 거야?
나: 어…
45개 테이프를 디지털화하는 데 750달러가 들었다. 비싸게 들릴 수도 있지만, 그 시점에는 비디오 장비를 또 1분이라도 만지작거리는 일을 피할 수 있다면 어떤 돈이든 낼 참이었다.
파일이 돌아왔을 때 화질은 논쟁의 여지 없이 더 좋았다. 내가 캡처한 영상은 항상 가장자리에 “티어링” 현상이 있었지만, 전문가들은 왜곡 없이 모든 걸 디지털화해 줬다. 무엇보다 오디오와 비디오 싱크가 완벽하게 맞았다.
업체가 캡처한 영상과 내가 직접 캡처한 영상을 비교한 영상이다.
엄마가 내가 처음으로 코딩하던 모습을 촬영한 테이프에서, 전문가의 비디오 캡처와 내 캡처를 비교한 영상
2단계: 편집
홈비디오의 경우, 영상의 약 90%는 지루하고, 8%는 재미있으며, 2%는 정말 놀랍다. 테이프를 디지털화한 뒤에도 할 일은 여전히 많다.
Adobe Premiere로 편집하기
VHS 테이프에는 빈 구간이 섞인 긴 비디오 클립 스트림이 담겨 있다. 테이프를 편집하려면 각 클립이 어디서 시작하고 어디서 끝나는지 파악해야 한다.
편집에는 Adobe Premiere Elements를 사용했는데, 평생 라이선스가 100달러도 안 한다. VHS 테이프 편집에 있어 핵심 기능은 확대 가능한 타임라인이다. 이를 통해 대략적인 장면 경계를 빠르게 찾은 뒤 확대해서 클립이 시작하거나 끝나는 정확한 프레임을 찾을 수 있다.

Adobe Premiere Elements의 귀중한 확대 가능한 편집 타임라인
Premiere의 문제는 시작과 중지를 자주 해야 한다는 것이다. 내 작업 과정은 이랬다.
- 30~120분 분량의 원본 캡처 파일을 연다.
- 개별 클립의 경계를 표시한다.
- 클립을 내보낸다.
- 내보내기가 완료될 때까지 2~15분 기다린다.
- 테이프가 끝날 때까지 2~4단계를 반복한다.
긴 대기 시간 때문에 나는 비디오 편집과 다른 작업 사이를 끊임없이 오가며 몇 시간 동안 집중력이 흐트러졌다.
또 다른 단점은 재현 불가능성이다. 사소한 오류 하나를 고치는 것이 거의 처음부터 다시 하는 것만큼 어려웠다. 이 문제가 비디오 공유 단계에 이르렀을 때 크게 발목을 잡았다. 그때서야 웹 브라우저가 네이티브로 스트리밍할 수 있는 형식으로 영상을 내보냈어야 했다는 걸 깨달았다. 선택지는 수백 개 클립을 내보내는 지루한 과정을 다시 시작하거나, 이미 내보낸 영상을 다른 형식으로 재인코딩해 화질을 떨어뜨리는 것뿐이었다.
자동 편집
부끄러울 정도로 많은 시간을 수작업으로 보낸 뒤, 인공지능을 동원하면 문제를 간단히 해결할 수 있지 않을까 하는 생각이 들었다. 클립 경계를 식별하는 것은 머신러닝에 적합한 작업처럼 보였다. 정확도가 완벽하지는 않겠지만, 80%는 AI가 하고 나머지 20%는 내가 수동으로 고치면 되지 않을까 싶었다.
pyscenedetect라는 도구로 실험해 봤는데, 이 도구는 비디오 파일을 분석해 장면 전환이 일어나는 타임코드를 출력해 준다.
$ docker run
--volume "/videos:/opt"
handflucht/pyscenedetect
--input /opt/test.mp4
--output /opt
detect-content --threshold 80
list-scenes
[PySceneDetect] Output directory set:
/opt
[PySceneDetect] Loaded 1 video, framerate: 29.97 FPS, resolution: 720 x 480
[PySceneDetect] Downscale factor set to 3, effective resolution: 240 x 160
[PySceneDetect] Scene list CSV file name format:
$VIDEO_NAME-Scenes.csv
[PySceneDetect] Detecting scenes...
[PySceneDetect] Processed 55135 frames in 117.6 seconds (average 468.96 FPS).
[PySceneDetect] Detected 33 scenes, average shot length 55.7 seconds.
[PySceneDetect] Writing scene list to CSV file:
/opt/test-Scenes.csv
[PySceneDetect] Scene List:
-----------------------------------------------------------------------
| Scene # | Start Frame | Start Time | End Frame | End Time |
-----------------------------------------------------------------------
| 1 | 0 | 00:00:00.000 | 1011 | 00:00:33.734 |
| 2 | 1011 | 00:00:33.734 | 1292 | 00:00:43.110 |
| 3 | 1292 | 00:00:43.110 | 1878 | 00:01:02.663 |
| 4 | 1878 | 00:01:02.663 | 2027 | 00:01:07.634 |
...
정확도는 실제로 약 80% 정도였지만, 도구가 한 작업을 검수하는 데 오히려 절약한 시간보다 더 많은 시간이 들었다. 그럼에도 pyscenedetect는 이 프로젝트 전체에서 가장 중요한 깨달음 중 하나를 안겨줬다. 장면 경계를 식별하는 것과 클립을 내보내는 것은 별개의 작업이라는 것이다.
내가 프로그래머라는 걸 떠올렸다
그때까지 나는 “편집”이라는 걸 Adobe Premiere에서 하던 모든 작업이라고 생각했다. Premiere가 그렇게 구성되어 있었기 때문에, 원본 영상에서 서브클립을 잘라내는 작업은 클립 경계를 찾는 것과 떼려야 뗄 수 없는 일처럼 느껴졌다. pyscenedetect가 메타데이터 테이블을 출력했을 때, 장면 찾기와 비디오 내보내기를 분리할 수 있다는 걸 깨달았다. 게임 체인저였다.
편집이 그토록 지루하고 오래 걸렸던 이유는 Premiere가 각 클립을 내보낼 때까지 계속 기다려야 했기 때문이다. 메타데이터를 스프레드시트에 기록하고 비디오를 자동으로 내보내는 스크립트를 작성한다면, 편집 과정은 훨씬 빠르게 진행될 것이다.
게다가 스프레드시트 덕분에 수집할 수 있는 정보의 종류가 크게 확장됐다. 처음에는 메타데이터를 파일 이름에 욱여넣었지만, 그건 제한적이고 유연하지 못했다. 스프레드시트 전체를 활용하니 누가 등장하는지, 언제 촬영됐는지, 그리고 사람들이 영상을 볼 때 함께 보여주고 싶은 다른 데이터 등 클립에 대해 훨씬 더 많은 정보를 체계적으로 정리할 수 있었다.

거대한 스프레드시트에 홈비디오 메타데이터를 기록하는 모습
나중에는 그 메타데이터를 활용해 우리 모두가 당시 몇 살이었는지, 클립에서 무슨 일이 일어나고 있는지에 대한 자세한 설명 같은 정보를 클립에 추가할 수 있었다.

스프레드시트의 유연성 덕분에 클립에 대한 더 많은 정보를 제공하고 탐색을 더 쉽게 만드는 메타데이터를 기록할 수 있다.
자동화된 솔루션의 영광
스프레드시트를 손에 넣은 뒤, 나는 CSV 입력을 기반으로 원본 비디오를 더 작은 클립으로 자르는 스크립트를 작성했다.
이 시점까지 나는 Premiere에서 지루하게 클립 경계를 선택하고, 내보내기를 누르고, 몇 분간 완료되기를 기다렸다가 다시 시작하는 과정을 수백 시간 동안 반복해 왔다. 게다가 나중에 화질 문제를 발견하고 같은 영상에 대해 이 과정을 여러 번 반복하기도 했다.
클립 자르기 부분을 자동화하고 나니 어깨에서 무거운 짐이 내려간 기분이었다. 메타데이터를 빠뜨리거나 잘못된 출력 형식을 고를 걱정을 할 필요가 없었다. 나중에 실수를 발견하더라도 스크립트를 살짝 수정해 다시 실행하면 됐다.
2부
클립을 캡처하고 편집하는 것은 전투의 절반에 불과했다. 여전히 남은 과제는 이 모든 것을 재미있고, 안전하며, 저렴한 방식으로 가족과 공유할 방법을 찾는 것이었다.
이 글의 2부에서는 이 클립들을 월 0.77달러로 가족과 공유하기 위해 사용한 오픈소스 미디어 서버에 대해 설명한다.
일러스트: Loraine Yow.
이 클립과 스틸 일부를 공유하도록 허락해 주고, 애초에 모든 것을 기록해 주었으며, 이 과정 내내 큰 힘이 되어준 가족에게 특별히 감사드립니다.
글을 무작위로 읽기



댓글
로그인하고 댓글 남기기