• 목록
  • 아래로
  • 위로
from moviepy.editor import *
import glob, os

files = glob.glob('d:\\폴더명\\**\\*.*', recursive = True)

for f in files:
    if os.path.splitext(f)[1] == '.mp4':
        clip = VideoFileClip(f, audio=False)
        giffile = os.path.splitext(f)[0] + '.gif'
        clip.write_gif(giffile, fps=7, opt='nq')
        size = os.path.getsize(giffile)
        if size / (1024*1024) > 70:    
            clip2 = clip.resize(0.4)
            giffile = os.path.splitext(f)[0] + '.gif'
            clip2.write_gif(giffile, fps=4, fuzz=1, opt='nq')
            clip2.close()
        elif size / (1024*1024) > 20:    
            clip2 = clip.resize(0.5)
            giffile = os.path.splitext(f)[0] + '.gif'
            clip2.write_gif(giffile, fps=6, fuzz=1, opt='nq')
            clip2.close()
        clip.close()

 

 

특정 폴더 및 하위 폴더의 MP4 파일을 20MB가 넘지 않도록 GIF 파일로 일관 변환하는 스크립트에요!

 

※ 주의 : ImageMagick이 설치되어 있지 않으면 일부 옵션에서 에러가 발생할거에요

 

※ 주의2 : 폴더명이 .gif로 끝나면 에러가 발생하네요 ㅎㄷㄷ

 

작성자
이니스프리 119 Lv. (2%) 4185630/115200000EXP

Make StudyForUs Great Again!

 

CSVpuymXAAAVVpd.jpg

댓글 0

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 시스템 점검 작업 완료 안내 10 마스터 마스터 24.09.05.16:25 2559
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 마스터 23.01.14.02:23 9988
460 [Python] 리스트의 순서를 유지하되 중복되는 요소를 제거하기 이니스프리 이니스프리 20.11.15.14:54 441
459 [Python] 네이버 블로그 크롤링할 때 PostList.nhn 관련 팁 (문자열에서 첫번째 행을 제거하기) 이니스프리 이니스프리 20.11.08.18:16 284
458 [Python] 문자열에서 파일명 또는 폴더명으로 시스템상 지원되는 글자를 제외하고 삭제하기 이니스프리 이니스프리 20.11.01.14:37 147
457 [Python] Pytube를 이용하여 유튜브 영상을 간단히 다운받는 법에 대한 설명 이니스프리 이니스프리 20.11.01.14:25 537
456 [Python] 특정 단어가 들어가는 폴더 또는 파일을 옮기기 이니스프리 이니스프리 20.11.01.14:14 4070
455 [Python] 2개의 리스트를 딕셔너리로 변환하는 3가지 방법 이니스프리 이니스프리 20.10.25.15:34 1107
454 [Python] HWP 파일 읽기 6 이니스프리 이니스프리 20.10.18.12:19 2209
453 [Python] 디렉토리 내 0바이트 파일 찾기 이니스프리 이니스프리 20.10.11.11:19 268
452 [Python] 유튜브 영상을 PC에 다운받은 후 영상파일을 90도 rotation 하기 (youtube_dl + moviepy) 4 이니스프리 이니스프리 20.10.03.17:58 506
451 [Python] 폴더 및 하위 폴더 내의 파일에서 문자열을 일괄적으로 replace하는 스크립트 (ver 1.1) 이니스프리 이니스프리 20.10.02.11:58 476
450 [Amina] 그누보드 + 아미나 설치 방법 (처음 시작하는 분들을 위한 간단 매뉴얼) 이니스프리 이니스프리 20.10.01.16:48 493
449 JavaScript와 Canvas로 이미지의 배경값을 자동으로 산출하기 Seia Seia 20.09.12.06:37 444
448 React 그리고 Redux 쉽게 이해하기 image Seia Seia 20.09.12.06:31 277
447 [Python] 폴더의 모든 파일명을 랜덤하게 변경하기 이니스프리 이니스프리 20.08.30.15:06 1154
446 [Selenium] 요소가 완전히 로드될 때까지 기다리기 이니스프리 이니스프리 20.08.23.20:22 529
445 [Selenium] 크롬 익스텐션 사용하기 1 이니스프리 이니스프리 20.08.23.19:35 1623
[MoviePy] 폴더의 모든 MP4 파일을 적절한 크기의 GIF 파일로 변환하기 이니스프리 이니스프리 20.08.23.14:18 430
443 [Python] 확장자 확인 및 변경 이니스프리 이니스프리 20.08.23.12:17 2861
442 [Python] 폴더 내 이미지의 height를 측정하여 height < n 미만인 파일을 삭제하기 이니스프리 이니스프리 20.08.13.20:08 293
441 glob.glob()를 이용하여 recursive하게 하위 폴더까지 모든 파일과 디렉토리를 검색하기 이니스프리 이니스프리 20.08.12.16:22 1822