본문 바로가기

AviSynth

AVI 트레이싱을 이용한 MMD 영상 만들기 6

이번 부터는 AviSynth의 영역입니다. 사실 MMD 쪽과는 관련성이 없지만서도..;

이제 만들어둔 영상을 가공해서 하나로 모아야 겠죠.

만들어 둔 영상을 보면..



....

지금 보고 나니 느끼는게.. 전 왜 이런 쓸데없는 도식 같은 걸 만들려고 하는지 모르겠네요... 병인가? -_-;


암튼 대강 이런 느낌입니다. 2nd 라고 붙은건 마음에 안들어서 다시 인코딩 했다는 것이고.. 뭐 그러네요.

그럼 이걸 AviSynth 스크립트로 모으면




음...

상당히 조악한 코드군요 -_-;

그래도 간단히 설명은 해야겠죠.

1~16 라인
굳이 파일명을 밖으로 빼준건 나중에 파일명이 변경되었을때 편의성을 위한 부분이고

35~46 라인
MMD 에서 인코딩 할때 몇몇 클립은 웨이브를 넣은채로, 몇몇은 뺀 채로 인코딩 해 버려서 -_-;;
나중에 클립을 합칠때, 이렇게 웨이브가 있거나 없거나 하면 오류를 냅니다. 다 같이 있는걸로 통일을 해준거죠;

49~52 라인
4, 6, 7, 9 컷은 린위로 카메라가 왔다갔다 하는 장면인데, 원본도 그렇지만 모션블러가 들어가 있습니다.
모션블러는 컷 전환시에 전후 프레임이 뭉개지는 부작용이 있기 때문에, 컷을 따로 떼어서 모션블러를 적용시켰습니다.

54~55
Fade 계열 내부 필터는 금방 아실거라 생각 하지만..
FadeOut0 혹은 FadeIn2 처름 뒤에 0이나 2가 붙는 경우가 있는데
이건 페이드 적용시 프레임을 덧붙일 것인가 말것인가를 말합니다.
기본 페이드의 경우 1프레임을 덧붙이는데, 0는 덧붙이기 없음, 2는 두개를 덧붙이기 합니다.
상황에 따라 다르지만 여기에서는 프레임수를 바꾸는 것은 안좋아 보이니 FadeOUT0 , FadeIO0가 쓰였습니다.

Fade 필터의 경우, 음량 역시 영향을 받기 때문에 소리가 작아지거나 합니다.
이를 원하지 않는다면 추후에 다시 소리를 입혀주거나 해야합니다.


59~60
12번 비디오는 렌의 이퀄라이저 배경인데, 10분짜리 영상이라서 -_-; 383프레임 만큼만 잘라서 쓰기위해 적용되었습니다.

62~71
영상을 전부 취합하는 과정인데
솔직히 지저분하네요 -_-;;
자세한건 직접 보시면 될 듯 하고.. Overlay 필터에서 .ShowAlpha()가 쓰였는데
RGB32 이기 때문에, 비디오 클립의 알파값을 사용해 오버레이를 적용한다는 뜻입니다.

참고로, MMD에서 자주 쓰이는 Diffusion 효과의 경우, 이걸 사용하면 알파값을 쓰지를 못하더군요.
저도 왜 그런지는 파악하지 못했습니다. 때문에 오버레이 위로 올라가는 렌의 장면에서는 Diffusion 효과를 끄고 있죠.


같은 효과를 Bloom 함수로 구현해 사용하는 것도 가능 합니다.
92~110 라인을 참고하시면 될 것 같네요.











뭐 그래도 원하는 대로 오버레이도 적용되었네요. (삐질삐질)

AVS 스크립트 손댄지 얼마 안되었기 때문에 아직 모르는게 많으니;
뭔가 이상한 점이나 개선점이 있으면 지적해주시면 감사하겠습니다.

그리고 마지막으로 인코딩..

굳이 버츄얼 덥을 쓰지 않아도 AvsPmod에 내장된 인코딩 기능을 쓸 수도 있습니다.







결과는 버츄얼덥과 다르지 않네요.

하지만 궁극적으로는 x264를 써서 압축을 해야 하고, 그러려면 역시 MeGUI를 사용해야 합니다.









나머지는 음향 Mux 정도..

... 쓰고나니 왜 썻는지 모를 강좌였습니다..

대체 왜 썼을까. OTL


그럼 영상을 감상해 봅시다.




덧) AVS 스크립트를 참고하실 분이 있을까 싶지만... 파일로 첨부합니다.








'AviSynth' 카테고리의 다른 글

VirtualDub 1.9.11, 1.10.0  (0) 2010.12.31
SetMemoryMax  (0) 2010.12.12
Lagarith Lossless Codec 1.3.20  (0) 2010.12.12
Color Format, ConvertToRGB, ConvertToYUY2, ConvertToYV12  (0) 2010.12.12
FadeIn, FadeOut, FadeIO  (0) 2010.12.12
AssumeFps, ChangeFps, ConvertFps  (0) 2010.12.12
MixAudio()  (0) 2010.12.12
Loop()  (0) 2010.12.12
Trim()  (0) 2010.12.12
BlankClip()  (0) 2010.12.12