[파이썬] moviepy로 게임 플레이 영상 편집하기

moviepy

온라인 게임 플레이 영상을 편집하고 다른 요소를 추가하여 프로모션 비디오나 유튜브 컨텐츠로 사용하고 싶은 적이 있으신가요? 그렇다면 파이썬의 moviepy 라이브러리를 사용하여 손쉽게 영상을 편집할 수 있습니다.

이번 포스트에서는 moviepy를 사용하여 게임 플레이 영상을 편집하는 방법을 알아보겠습니다.

moviepy 설치하기

먼저 moviepy를 설치하기 위해 아래 명령어를 사용합니다.

pip install moviepy

게임 영상 가져오기

게임 플레이 영상을 가져오기 위해 먼저 필요한 영상 파일을 준비해야 합니다. 예를 들어, gameplay.mp4라는 게임 플레이 영상 파일이 있다고 가정해보겠습니다.

from moviepy.editor import VideoFileClip

video = VideoFileClip("gameplay.mp4")

위 코드에서 VideoFileClip 클래스를 사용하여 gameplay.mp4 파일을 로드하고 변수 video에 저장합니다.

영상 편집하기

이제 가져온 게임 플레이 영상을 편집해보겠습니다. 예를 들어, 영상의 일부분만을 유지하고 나머지는 제거하거나, 추가적인 요소를 넣어줄 수 있습니다.

영상 자르기

게임 플레이 영상의 일부분만을 유지하고 싶을 때는 video.subclip() 메서드를 사용합니다.

subclip = video.subclip(10, 30)

위 코드에서는 video 변수에서 10초부터 30초까지의 영상을 자른 결과를 subclip 변수에 저장합니다.

요소 추가하기

편집한 영상에 추가적인 요소를 넣어주려면 video.set_position() 메서드를 사용합니다.

from moviepy.editor import TextClip

txt_clip = TextClip("My Gaming Video", fontsize=70, color='white')
txt_clip = txt_clip.set_pos('center').set_duration(10)

final_clip = moviepy.concatenate_videoclips([subclip, txt_clip])

위 코드에서는 TextClip 클래스를 사용하여 “My Gaming Video”라는 텍스트 요소를 만들고, 이를 가운데에 위치시킵니다. 그리고 해당 텍스트 요소의 지속시간을 10초로 설정한 후 final_clip 변수에 저장합니다. 이후 moviepy.concatenate_videoclips() 메서드를 사용하여 자른 영상과 텍스트 요소를 합쳐 최종 영상을 생성합니다.

영상 저장하기

마지막으로 편집한 영상을 저장하려면 final_clip.write_videofile() 메서드를 사용합니다.

final_clip.write_videofile("edited_gameplay.mp4", codec="libx264", fps=30)

위 코드에서는 edited_gameplay.mp4라는 파일로 편집한 영상을 저장합니다. 인코딩 코덱은 libx264를 사용하며, 초당 30 프레임으로 설정합니다.

결론

위의 예시 코드와 같이 moviepy를 사용하면 게임 플레이 영상을 손쉽게 편집할 수 있습니다. 자를 부분이나 추가적인 요소를 변경하여 여러 가지 효과를 적용할 수 있으며, 마지막으로 저장하여 다양한 용도로 사용할 수 있습니다.

참고로 moviepy는 영상 편집뿐만 아니라 오디오 처리, 이미지 처리 등 다양한 기능을 제공합니다. 관심이 있다면 공식 문서를 참고해보시기 바랍니다.