파이썬으로 동영상을 GiF 파일로 변환하는 프로그램 만들기(업그레이드)
본문 바로가기
파이썬(Python)/파이썬 개발

파이썬으로 동영상을 GiF 파일로 변환하는 프로그램 만들기(업그레이드)

by Squat Lee 2024. 1. 16.

지난번에 만든 동영상(MP4)를 GIF로 변환하는 파이썬 코드를 업그레이드 해 보겠습니다.

 

전체 코드는 아래와 같습니다.

 

from moviepy.editor import VideoFileClip
import sys
from PyQt5.QtWidgets import *
import os

class MovieToGif(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setWindowTitle('Movie_To_GIF')
        self.setGeometry(600, 200, 400, 200)

        lbl1 = QLabel('GIF로 변환할 동영상을 선택하세요', self)
        lbl1.setGeometry(20, 20, 300, 20)

        self.btn = QPushButton('파일찾기', self)
        self.btn.move(150, 100)

        self.btn.clicked.connect(self.BtnClicked)

    def BtnClicked(self):
        try:
            file_path = QFileDialog.getOpenFileName(self)
            MP4_path = file_path[0].split('/')
            path = os.path.join(*MP4_path[:-1])
            file_name = MP4_path[-1].split('.')[0]

            mymovie = VideoFileClip(file_path[0])
            myclip = mymovie.subclip(1, 2) #1초에서 2초 길이로 자르기
            gif_path = os.path.join(path, file_name) + '.gif'
            print(gif_path)
            myclip.write_gif(gif_path)
            QMessageBox.about(self, '변환완료', '동영상이 GIF로 변환 완료되었습니다.')

        except:
            pass

if __name__=='__main__':
    app = QApplication(sys.argv)
    myWindow = MovieToGif()
    myWindow.show()
    app.exec_()

 

PyQt5를 사용해서 UI를 만들었습니다.

 

어차피 어디다 내다 팔게 아니기 때문에 대충 만들었어요.

 

파일찾기 버튼을 누르면 

 

 

이렇게 파일을 고를 수 있는 창이 나오고,  gif 파일로 변환할 동영상을 선택하면

 

변환 과정이 보여집니다.

 

변환이 완료되면 아래와 같이 메세지 창이 나옵니다.

 

라이브러리는 구글링해서 찾은 moviepy를 사용했습니다. 

 

동영상을 gif로 변환하는 기능 외에도 많은 기능을 지원하는 라이브러리입니다. 


 

 

실행파일까지 만들려고 했는데, 계속 에러가 나네요.(아래그림 참고)

 

한 3시간을 삽질하다가 결국 만들지 않기로 하였습니다.

728x90
반응형

댓글