โค้ด: เลือกทั้งหมด
# -*- coding=utf-8 -*-
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from moviepy.editor import VideoFileClip
from flask import Flask, render_template,request,send_file
from werkzeug.utils import secure_filename
import os
app = Flask(__name__)
@app.route("/")
def index():
return render_template('test.html')
@app.route("/addgif" , methods=['GET', 'POST'])
def edit():
time1 = int(request.form['time1'])
time2 = int(request.form['time2'])
time3 = int(request.form['time3'])
time4 = int(request.form['time4'])
file = request.files['file']
filename = secure_filename(file.filename)
filename2 = filename.split(".")
lastname1 = filename2[1]
name1 = filename2[0]
file.save(os.path.join(filename))
num1 = (60*time1)+time2
num2 = (60*time3)+time4
clip = (VideoFileClip(name1+".mp4").subclip(num1, num2))
clip.write_gif(name1+".gif")
print ('เพิ่มข้อมูล เรียบร้อยแล้ว')
return send_file(name1+'.gif', attachment_filename=name1+'.gif',mimetype='image/gif')
if __name__ == '__main__':
app.run(debug=True)
คำสั่งภาษา HTML
โค้ด: เลือกทั้งหมด
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="/addgif" method="POST" enctype="multipart/form-data">
<label>ไฟล์วีดีโอ</label><br>
<input type="file" name="file" autocomplete="off" placeholder="" value="" required>
<br>
<label>เวลาเริ่ม</label><br>
<span>นาที: </span>
<input type="text" name="time1" autocomplete="off" placeholder="" value="" required>
<span class="" id="basic-addon1">วินาที: </span>
<input type="text" name="time2" class="form-control" autocomplete="off" placeholder="" value="" required>
<br>
<label>เวลาสิ้นสุด</label><br>
<span >นาที: </span>
<input type="text" name="time3" autocomplete="off" placeholder="" value="" required>
<span class="">วินาที: </span>
<input type="text" name="time4" autocomplete="off" placeholder="" value="" required>
<br>
<input type = "submit" value = "บันทึก" />
</form>
</body>
</html>
เมื่อทำการกรอกข้อมูลต่างๆครบแล้วให้บันทึกแล้วรอสักครู่ จะได้ไฟล์รูปภาพ gif ขึ้นมาครับสามารถ download ไปใช้งานได้
ก็เป็นอันที่เรียบร้อยครับ
อ้างอิง
https://zulko.github.io/moviepy/getting_started/videoclips.html
https://pypi.org/project/moviepy/
https://awesomeopensource.com/project/Zulko/moviepy