아래 darong님의 자막과 동영상 싱크 맞춰주는 오픈소스 설치방법

자유게시판

아래 darong님의 자막과 동영상 싱크 맞춰주는 오픈소스 설치방법

30 여보밥줘 19 2773 2

아래의 메가링크로 필요한 파일을 받아 압축을 푸세요. (아래 설명은 압축파일에 포함되어 있습니다)


https://mega.nz/#!aX53CKTY!Mh7Ddh2wciNfCy-Cf_dWkE1tuzO-FIynhVHABT5E664


여러개 시도해봤는데 어떤건 터무니 없이 안되고 어떤건 신기할 정도로 잘 되요
예를들어 BluRay 영상에 넷플릭스 자막을 싱크 맞추기위해 -40초 해야 한다면 기가 막히게 딱 맞게 나오는데
어떤 자막과 영상은 자막이 손실도 되고 기존 자막과 별반 다르지 않게 나오고 하네요
매 라인마다 싱크를 조절하는건 아닌것 같고, 아무튼 아직까지 어떤 규칙을 찾지 못했습니다
그냥 궁금하신 분이 계실까봐 설치 방법 올려드립니다.

* 영상은 mp4와 mkv 만 작동 확인 했고 자막 파일은 꼭 srt 이어야 하며 인코딩은 utf-8,ansi 로 작동 확인 했습니다
* srt 타임코드에 음수(-) 시간이 있는 경우 정상작동 안합니다.



아래는 원 게시글 작성자님이사 darong 님의 글입니다

----------------

자막과 동영상의 싱크를 맞춰주는 오픈소스가 있어서 소개할려고 합니다. 


https://github.com/smacke/subsync 


이 오픈소스를 사용할려면 프로그래밍에 대한 이해가 있어야 하며, python에 대해 기본적인 지식이 필요할 수 있습니다. 


오픈소스는 아래 명령어로 설치합니다. 


pip install git+https://github.com/smacke/subsync 


컴퓨터에 먼저 python pip가 설치되어 있어야 합니다. 


sunsync를 설치한 다음 아래와 같은 명령어로 싱크를 맞출 수 있습니다. 


subsync video.mp4 -i unsynchronized.srt > synchronized.srt 


video.mp4, unsynchronized.srt , synchronized.srt는 각각 동영상,싱크맞출 자막파일, 싱크처리된 자막파일입니다. 

그러니까 자막과 동영상이 video.mp4, unsynchronized.srt일 때 위 명령어를 실행하면 싱크를 맞춘 synchronized.srt 파일이 생성됩니다.




설치방법

--------------------

1.  "python-3.7.3.exe" 를 설치합니다 (꼭 아래 적은 방법으로 하세요. path 등록 안되면 고생해요)

   * 주의 : 설치 첫 화면에서 아래쪽의 "Add Python 3.7 to PATH" 를 체크하고

     "Customize installation" 클릭 하고 next 클릭 install 클릭 하여 설치합니다

   * 설치 마친 후 "Disable path length Limit" 클릭후 close 클릭하여 설치 종료하세요

   

2. "visualcppbuildtools_full.exe" 를 설치합니다

    (그냥 설치 버튼 눌러 설치합니다. 기존 설치된 프로그램에 따라 설치가 필요 없을 수 있습니다)


3. "ffmpeg.exe", "ffplay.exe", "ffprobe.exe" 세 파일을 "C:\windows" 폴더에 복사 (Path 걸린 아무 폴더나 상관없음)


4. subsync_setup.bat 실행합니다 (설치 끝입니다)


subsync video.mp4 -i unsynchronized.srt > synchronized.srt  또는

subsync video.mp4 -i unsynchronized.srt -o synchronized.srt  식으로 사용합니다

참고로 파일명에는 꼭 경로를 포함하여 적어야 하면

srt 파일에 내용중 마이너스 시간이 있으면 에러가 납니다

Facebook Twitter GooglePlus KakaoStory NaverBand 신고
 
19 Comments
2 darong  
싱크가 잘 맞을 때도 있고 아닐 때도 있는 것은 아마도 음성 구간 추출 성능 때문일 겁니다.
음성 구간 추출을 위해 VAD(Voice Activity Detect)를 사용하는데 오프닝,음악,배경잡음,외국어 등과 같은 음성 탐지에 오류가 발생하는 영상은 싱크가
잘 되지 않을 가능성이 큽니다.
나중에 여유가 되면 소스를 fork에서 개선할 수 있는지 한번 살펴봐야겠네요.
30 여보밥줘  
헐,, 역시 전문가시네요...(전 무슨 말씀인지 몰라요 ㅠㅠ)
근데 신기한게 어떤 영상은 이전이야기가 있어 대사가 많이 나오고 자막에는 이전이야기 부분이 없는데
자막이 정확한 위치에 딱 맞게 나와요
자막 맨 앞에 대사와 상관없는 라인이 한개 있는데도 정확히 자막이 맞아요
이건 정말 신기하더라고요 ㅎㅎㅎㅎ
17 Enter  
이거 영상 음성으로 자막 싱크를 맞춰준다는 프로그램인가요?
30 여보밥줘  
예!! 이 프로그램의 목적이 그거에요!!
16 o지온o  
나름 고생 하셨네요.
필요할 때가 있으면 참고 하도록 하겠습니다.
30 여보밥줘  
네!!! 말씀 고맙습니다!!!
18 자막줭  
좋은 정보 감사합니다 ^.^
17 Enter  
제작자포럼에 글 올리셨으면 좋겠네요^^
30 여보밥줘  
darong 님이 자게에 올리셔서 저도 여기에 올렸는데ㅠㅠ
1 강율  
C:\python> subsync.py c:\python\1.mp4 -i c:\python\11.srt > 2.srt
Traceback (most recent call last):
  File "C:\python\subsync.py", line 8, in <module>
    from .aligners import FFTAligner, MaxScoreAligner
ModuleNotFoundError: No module named '__main__.aligners'; '__main__' is not a package


위에 처럼 에러가 나는데 어떻게 해야하나요?ㅜㅜ
30 여보밥줘  
전 그저 설치 방법만 알아낸거라 잘모르고요
darong 님께 여쭤보시면 혹시 아실지 모르겠네요
1 나에게  
안녕하세요 여보밥줘님!
subsync_setup.bat 설치를 끝으로 이제 명령어만 입력하는 단계에 와 있습니다
c드라이브에 파일 이름이 1인 1.mp4
싱크조절 전 파일 이름이 1.srt 이렇게 세팅을 해놨는데.
정말 여기서 파이썬에 어떤 명령어를 입력해야 하는지만 알려주시면 안 될까요.
윗분들의 저런 에러 메시지라도 보고 싶은 심정입니다...
문외한에게 희망을 주십쇼...ㅜ..ㅜ

IDLE에서의 화면입니다...

Python 3.8.1 (tags/v3.8.1:1b293b6, Dec 18 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> C:\>subsync.py c:\1.mp4 -i c:\1.srt -o 2.srt
SyntaxError: unexpected character after line continuation character
30 여보밥줘  
"C:\>subsync.py c:\1.mp4 -i c:\1.srt -o 2.srt" 을 보니 명령어는 정상적으로 입력하신거 같고요
자막 내용중에 srt 형식에 안 맞는 부분이 있는거 같아요. 음수로 되어있는 시간이 있어도 에러가 나더라고요
섭타이틀에디터에서 다른이름으로저장 srt 형식으로 다시 저장해서 시도해 보시거나
아래 링크에 있는 프로그램으로 srt 저장 해서 해 보세요.
설치를 못 하시는 분이 계셔서 설치방법만 알려드린거라 저는 잘 알지 못해요 ㅠㅠ
https://cineaste.co.kr/bbs/board.php?bo_table=psd_capmakef&wr_id=27562&sca=%EC%9E%90%EB%A7%89%EC%A0%9C%EC%9E%91%EA%B0%80%EC%9D%B4%EB%93%9C
1 나에게  
그래도 댓글 주셔서 정말 감사드립니다!!
언젠가는 되겠죠!!!
12 밥오  
고맙습니다...신세계네요...
30 여보밥줘  
안녕하세요 밥오님!!! 해 보셨어요?? 잘 되는건 엄청 잘 되요
12 밥오  
이상하게 싱크가 안 맞아서, 일일히 하나하나 맞춰줘야 할 법한 영화 자막을 한 번 돌려봤는데, 완벽하게 맞는 건 아니고, 손이 가긴 하는 것 같지만, 전반적으로 안 맞던 싱크가, 어느 정도 맞는 부분이 많아져서 싱크 맞추기가 그나마 수월해진 것 같아요. 다른데도 계속 쓰게 될 것 같습니다. ssd에서 돌리니 속도도 괜찮고요.
좋은 정보 고맙습니다!
30 여보밥줘  
아... 영화를 해 보셨네요. 전 드라마만 해봤는데 드라마들은 신기하게 잘 맞더라고요
16 momaraine  
다 설치했는데 ...
오픈소스는 아래 명령어로 설치합니다.
pip install git+https://github.com/smacke/subsync 이것도 해줘야하나요? 지정된 파일을 찾을 수 없다고 나옵니다.