idx/sub를 srt로 자동변환 가이드

자막제작자포럼

idx/sub를 srt로 자동변환 가이드

1 notnrwk 3 736 3

앞서서 영상에 하드코딩된 내장 자막을 자동으로 추출하는

방법과 프로그램 설정을 설명드렸습니다.


이제 idx/sub 파일을 자동으로 srt로 변환하는 프로그램

Google Docs OCR V3 BATCH CONVERT MULTI IDX/SUB TO SRT

에 관해서 설명하겠습니다.


전체적인 활용방법은 아래 링크로 들어가서 영상을 참고하시면 

될 될 겁니다. 6분 정도의 짧은 영상입니다.


https://www.youtube.com/watch?v=p4g48i1kMfg


이 프로그램을 사용하면 1시즌 전체 수십개의 idx/sub 파일들을

한번에 srt 파일로 변환할 수 있습니다. 물론 한개만 변환할 때도

사용할 수 있습니다. 


다만 idx/sub 파일의 이름은 동일해야 하며, 각각의 idx/sub쌍은

다른 이름을 가져야 합니다. 뭐 당연한 이야기죠.


BATCH CONVERT MULTI IDX/SUB TO SRT 다운로드 링크

https://mega.nz/file/roJUTRpZ#22syhyP2dH4BmirPRqGHq5obcdetN4Iqv0VWGha09MI 


0. 역시 Credentials.json, token.json 두개의 파일이 필요합니다.

이것에 관해서는 앞서 제가 쓴글 <가이드 2 - 설치 상세설명>을 참고하셔서 

파일을 생성하시면 됩니다.


https://cineaste.co.kr/bbs/board.php?bo_table=psd_capmakef&wr_id=31011 


1. 먼저 Python 3.8 이상 버전을 다운로드해서 설치합니다

python 다운로드 페이지. 윈도우 버전에 따라서 32/64bit 중에서 다운로드 합니다.

https://controlc.com/36e3febc


2. 설치 완료 후

C:\Users\사용자계정\AppData\Local\Programs\Python\Python39\Scripts

폴더에 들어가서 폴더 주소창에서 cmd를 실행합니다.


42838a794bae8f9cbd6a0d9ffee77fc3_1695616451_6564.jpg

3. cmd를 실행한 후 아래의 4가지 스크립트 명령을 각각 실행합니다.


pip install --upgrade google-api-python-client google-auth-httplib2 google-auth-oauthlib

pip install  opencv-python

pip install  matplotlib

pip install oauth2client


그러니까 4번 명령을 복사하고 4번 엔터를 쳐서 4가지 스크립트를 모두 설치해야 합니다 .


4. Credentials.json, token.json을 폴더 안에 복사했다면 


5. 준비한 idx/sub파일들을 Paste_Here_Multi-IDX_SUB 폴더 안에 

   복사해 넣어줍니다.


6. RUN-BATCH.bat를 실행하면 여러개의 idx/sub파일들이 자동으로 

   srt로 변환되기 시작합니다.


프로그램이 구글 드라이브에 로그인하고, 작업을 준비하는데 시간이 걸립니다.
명령 프롬프트 창이 실행되고 잠깐 뜸들이는 시간이 있으니 작업이 시작되는걸 
기다리면서 보시면 됩니다. 

RUN-BATCH.bat 를 클릭하고 실제 작업 시작까지 30초 정도 걸린다고 생각하시면 됩니다.


e17df5e9ecc110cc52a8279274b4a5e6_1695020327_3555.jpg

1시간 30분짜리 영화 한편 기준 약 20분 정도 소요될 겁니다.


여러 편의 영화라면 20분에 영화 갯수를 곱하면 소요시간이 계산될 겁니다.

그 시간동안 할일 하시면서 완료되길 기다리면 됩니다. 자막 제작자의

시간은 소중하니까요.


CPU 사용량은 1-2% 정도로 아주 가볍기 때문에, 컴으로 게임이나 다른 걸 

하시면서 기다려도 자막 작업에 지장을 주지 않습니다. 


7. 작업이 끝나면 완료된 srt 파일을 열어서 확인해 봅니다.


e17df5e9ecc110cc52a8279274b4a5e6_1695019552_4145.jpg

영어는 거의 손댈 필요도 없이 정확하게 나오고


한글도 마찬가지로 띄어쓰기 정도만 몇군데 눈에 띄고

글자 인식, 문장기호 등등 완벽하네요.


e17df5e9ecc110cc52a8279274b4a5e6_1695019584_1676.jpg

심지어 노래를 표시하는 콩나물 대가리 기호까지

아주 잘 인식되었습니다.


다만 여기에서 콩나물 대가리랑 텍스트 사이에 한칸씩

띄워야 되는데 한칸이 띄워졌다 안띄워졌다 하네요.


전체적으로 수정에 10분 이내면 충분할 정도로 아주

잘 수행 되었습니다.


작업이 완료된 후에는 구글 드라이브를 청소해 주어야 합니다.


왜냐하면 자막 파일의 모든 대사라인 하나하나를 뜯어서 이미지 파일화 하고

그것을 구글 드라이브에 업로드 한 후에, OCR 작업을 진행했기 때문에

수백, 수천개의 자막 이미지들이 구글 드라이브에 쌓이기 때문이죠.


이걸 수동으로 삭제하려고 하면 아주 오래 걸리고 귀찮습니다. 10개 정도

자막을 작업했다면 1만개가 넘을 수 있습니다. 그거 손으로 일일이 지우려면

사람이 할 짓이 못됩니다.


구글 드라이브 자동 일괄 청소 삭제 Delete_All_Files_Google_Drive 다운로드 페이지

https://mega.nz/file/20BClQaR#4W3jm9bLdx56LNX7ecYAleYS3oak7clOr-tRZ8LaezY


01. 다운로드해서 압축을 풀고 폴더안에 credentials.json과 token.json 두개의 파일을 

복사해서 넣어 줍니다.


02. 그리고 앞서 스크립트를 설치했던

C:\Users\사용자계정\AppData\Local\Programs\Python\Python39\Scripts 로 이동한 후

앞서 했던 것처럼 폴더 주소창에서 cmd 를 입력하고 실행합니다. 명령프롬프트가 실행되면


pip install pandas 


이 명령어를 복사해서 붙여놓고 엔터를 쳐서 스크립트를 설치합니다.

이제 구글 드라이브 일괄삭제 작업의 준비가 끝났습니다.


03. 이제 앞선 글에서 설명한 Delete_All_Files_Google_Drive 프로그램 폴더 안에 

4-Delete_All_Files_One-By-One-Forever.py를 실행하여 자동으로

구글 드라이브에 남은 작업파일들을 모두 삭제/청소해 줍니다.


<<<<<<<<<< 주의!!!! >>>>>>>>>>>>>>>>>>>>>>>>>>>>


앞선 글에서도 설명했듯이 이 작업을 하면 srt 작업과정에 남은 파일 뿐만 아니라

구글 드라이브에 업로드 해두었던 모든 파일들이 삭제됩니다. 그래서 구글 드라이브에 

개인적으로 필요해서 업로드 했던 파일이 있다면 모두 자신의 컴퓨터에 백업한 이후에 

실행해야 합니다.


구글 드라이브 안에 있는 파일들이 모두 삭제됩니다!!!


구글 계정 이메일 첨부파일이나 구글 포토 등등, 구글 드라이브 이외의 파일들은

삭제되지 않으니 걱정하지 않아도 됩니다.


구글 드라이브에서 파일 삭제는 원래 좀 느리게 진행됩니다. 

삭제도 srt 변환과 비슷한 정도로 시간이 소요될 겁니다.

마찬가지로 자동으로 청소되기에 실행만 시켜놓고 할일 하시면 됩니다.


Delete_All_Files_Google_Drive 프로그램의 다른 여러가지 기능들을 보다 자세히 

알고 싶다면 아래 링크 동영상을 보시면 됩니다.


https://youtu.be/5TOAPQBTwLw 


04. 그리고 작업을 위한 image 파일과 구글 드라이브에서 OCR 작업을 완료하고 

다운로드 된 텍스트 파일들이 수백, 수천, 영상 갯수에 따라서는, 만개가 넘게  

하드디스크 내에 BATCH IDX-SUB TO SRT 폴더에 쌓이게 됩니다. 


어차피 설치는 필요없고 Credentials.json, token.json 두개의 파일만 있으면

즉시 실행이 가능하기 때문에, BATCH IDX-SUB TO SRT 폴더에 두 파일을

넣어두고, 필요할때마다 이 폴더를 복사해서 작업하고, 작업이 끝나면 

폴더째로 삭제해 버리는게 편합니다.


05. 다른 방법으로 폴더 내에 Cleaning_All_Folder.py 를 실행하면 작업에 사용됐던 
파일들을 하드디스크에서 몇 초만에 삭제해 줍니다. 이 방법으로 프로그램 폴더를 
그냥 놔두고 계속 쓸지, 그냥 1회용으로 그때그때 프로그램 폴더를 복사해서 쓸지
각자 편한대로 하시면 됩니다.

BATCH CONVERT MULTI IDX/SUB TO SRT 프로그램이 작업하는 과정을 살펴보면

1. idx/sub 파일의 자막라인을 하나하나 뜯어서 이미지 파일로 만들고
2. 이것을 하나하나 구글 드라이브에 업로드 한 후
3. 파일 하나하나마다 구글이 OCR 작업으로 텍스트로 변환
4. 그 텍스트들을 하나하나 컴퓨터에 다운로드
5. 다운로드한 텍스트들을 하나의 자막으로 합치기

이런 프로세스가 되겠네요. 이걸 자동으로 해주니까 편한거죠. 

다만 각 단계마다 수백 수천개의 작업파일이 생성되므로 삭제 청소하는게 
약간 귀찮게 느껴질 수 있겠지만, 클릭 한번에 삭제하거나, 자동으로 삭제할 
수 있거나, 아니면 폴더째로 삭제할 수 있거나 하기 때문에 삭제를 하기위해 
손을 움직이는 시간은 1분 이내로 충분하다로 생각합니다.

전체적으로 자동으로 진행되게끔 프로세스가 짜여져 있어서, 추출된 자막을
원본과 비교하면서 수정할때만 신경써주면 됩니다. 

다음 글에서는 추출된 자막을 원본과 100% 동일하게 수정하고 다듬는 노하우에
관해서 공유합니다. 구글은 99%까지만 하고, 1% 부족합니다. 그것은 사람이
직접 채워야 하겠죠.

내장 추출자막 및 Sub 변환자막 완벽수정 가이드

Facebook Twitter GooglePlus KakaoStory NaverBand 신고
3 Comments
테스트 해보니 idx/sub파일을 srt변환은 비교적 잘되네요 자막대사가 네 경우
 02:07:18,291--> 02:07:18,915

In  대부분 처리 하고
 02:06:49,957--> 02:06:51,582
응-
|
대사  처리하는 경우도 있네요  직접수동으로 수정 하면 될것 같네요
문제점 파이쎤 언어 3.8버전 이상  설치  필수 입니다
최소 37x 메가 사용 
파이썬 설치시 배치 체크 해야 합니다
모르는 사람도 있어요  설치뒤 수동으로 환경설정을 해야 합니다
pip install  몇개의 묘듈 설치 필수
credentials.json token.json 필수
idx/sub 자막이 멀티 자막일 경우 1번째 스트림만 처리하네요
한번 작업 하면 생성된파일 필요한거만 다른데 옮기고 나머지 파일은 삭제 해야 합니다
 자체자막이미지 추출할려면 VideoSubFinder 필수 입니다
Subtitle Edit 에서 idx/sub파일 오픈시 타임코드랑 Google Docs OCR V3 BATCH CONVERT MULTI IDX/SUB TO SRT 으로 생성된 srt파일 타임코드랑 달라요
1 notnrwk  
멀티자막에 대한 부분은 어쩔 수 없을 겁니다. OCR을 사용하는 이상, 원하는 언어 하나만 단일언어로 idx/Sub를 추출해서
작업하는 수 밖에 없습니다. 물론 앞으로 더 발전된 프로그램이 나온다면 가능한 부분이겠지만, 현재까지는 아직 없을 겁니다.
그리고 타임코드에 대한 부분은 아마도 미세한 차이는 있겠지만, 감상에 어색함이 느껴질 차이는 아니라고 생각합니다.
이부분에 대한 다른 제작자님의 의견을 기다립니다.
기타 내용들은 제가 쓴 글들에 설명되어 있으니 잘 읽어보시면 될 것이라 생각합니다..
1 만수라드  
좋은 팁 감사드립니다. 한번 해봐야겠네요!