본문 바로가기

MikuMikuDance/Tutorial

MikuMikuDance x64 에서 인코딩 방법

MMD는 영상을 출력할때 vfw를 사용합니다.


32비트용으로는 여러 코덱이 나와있어서 x264 같은것도 사용 가능하지만,

64비트에서는 제대로 지원이 되지 않는다는 점이 문제입니다.


게다가 vfw는 윈도우 95 시절의 물건인지라 상당히 구식이죠.

지금은 DirectShow를 지나 미디어 파운데이션으로 넘어가고 있는 판에 말이죠.


MMD에서 지원되는 64비트용 코덱은 제가 알기로 두개가 있습니다.

(더 있을수도 있는데 일단 이정도로 만족중 )


※ 주의 : 코덱 설치는 시스템을 건드리게 되므로 잘 모른다면 안하는게 만수무강에 좋습니다. 혹시 하실분은 백업 필수.




Ut Video Codec Suite


다운로드 : http://www.videohelp.com/software/Ut-Video-Codec-Suite


Ut Video는 무손실 압축 코덱입니다.

화질 손상이 없어 영상 편집에 좋지만 용량이 무지막지하게 나온다는 단점이 있습니다.

32비트용으로는 Lagarith Lossless 코덱이 일세를 풍미했는데, 지금은 지원이 중단된 모양이더군요.

그에 비해 Ut Video는 업데이트가 계속되고 있어서 유용합니다.


RGB, RGBA, YUV420, YUV422, YUV422 10bit 칼라 포맷을 지원하고 각각 Rec 709, Rec 601 매트릭스를 지원합니다.

(위에 적힌 말이 궁금한 분은 이쪽)




A DirectShow and Video for Windows codec (VFW)


다운로드 : https://sourceforge.net/projects/ffdshow-tryout/files/SVN%20builds%20by%20clsid/64-bit%20builds%20%28old%29/


무손실이 편집에는 좋지만 아무래도 용량이 문제가 되기 때문에, 다른 대안이 필요할 때가 있습니다.

그럴때는 ffdshow를 쓰는 방법이 있습니다.


링크에서 rev3572 버전을 다운받고 설치한 다음, VFW Configuration x64로 들어갑니다.




인코더 탭에서 Xvid를 선택하고 FOURCC XVID, One-Pass Quality, Quality 100%를 지정해 줍니다.




구 버전의 ffdshow를 사용하는 이유는 대략 2010년 즈음에 ffdshow에서 상당수의 인코딩용 코덱이 빠져버렸기 때문입니다.


버그가 많고 더이상 지원되지 않아 삭제했다고는 하는데, 사실 그 보다는 라이센스 관련 문제가 아니었을까 추측해 봅니다.


이 방법은 한가지 문제가 더 있는데.. 윈도우 8이나 10에서는 제대로 지원이 안된다는 점입니다.


윈7에서 ffdshow를 설치하고 설정을 마친다음, 레지스트리를 보관한 채로 윈8이나 윈10으로 업그레이드 할 경우에는

여전히 사용이 가능하다고 합니다만, 위에서처럼 설정 파일에 접근할 수가 없기 때문에 곤란하죠.


그래서 제가 윈도우 7에서 업그레이드를 못하고 있어요 -,.-;;




설치가 제대로 다 되었다면 MMD에서 뽑고자 하는 영상을 세팅하고, Avi 출력 메뉴로 들어갑니다.




avi 파일 경로와 이름을 지정해 주고 나면 다음과 같은 avi 출력 설정 윈도우가 나옵니다.





여러 Ut Video와 ffdshow Video Encoder가 보인다면 제대로 설치가 된 겁니다.


안 보인다면... 윈도우 재설치하고 코덱 재설치하면 보일지도 ;;


완전 무손실로 하고 싶다면 RGB나 RGBA로 하면 되고, 보통은 YUV422나 YUV420 BT 709를 씁니다. 601은 방송 TV용이므로 주의.




좀더 살펴보면.. 출력 해상도의 경우 미리 MMD에서 표시 -> 출력 사이즈에 지정된 값이 들어갑니다.





초당 프레임은 보통 30 고정인데, 잘 모른다면 건드리지 않는게 좋습니다.


최대 120까지 지원된다고 알고있는데, 물리엔진이 60까지밖에 지원을 못하는 고로 특수 목적이 아니라면 손대지 않는게 좋죠.



인코딩 범위는 MMD에서 지정한 재생 범위가 프레임 단위 기본값으로 들어갑니다.



음성 출력을 체크할 경우, MMD에서 불러온 .wav 파일이 함께 인코딩 되는데

인코딩 범위를 0부터 시작하는게 아니라 특정 구간별로 따로 할 경우에는 음성이 인코딩이 되지 않습니다.



3D 출력은 해본적이 없는 관계로 패스




대략 이정도면 MMD x64에서 인코딩이 가능합니다.


모두 즐거운 MMD 라이프 -_-/