โปรแกรม Python สำหรับการตัดและบีบอัดวิดีโอโดยใช้ FFmpeg พร้อมการควบคุมขนาดไฟล์
- ✂️ ตัดวิดีโอ: แบ่งวิดีโอยาวเป็นช่วงๆ ตามเวลาที่กำหนด
- 📦 บีบอัดขนาด: ลดขนาดไฟล์ให้ไม่เกินที่กำหนด (MB)
- 🔍 หาไฟล์อัตโนมัติ: ค้นหาไฟล์วิดีโอทุกรูปแบบในโฟลเดอร์
- 📊 แสดงความคืบหน้า: ติดตามสถานะการประมวลผลแบบ real-time
- 🎚️ ปรับคุณภาพได้: เลือกระดับคุณภาพและความเร็วการเข้ารหัส
- 📝 บันทึกสรุปผล: สร้างรายงานการประมวลผลเป็นไฟล์ JSON
⚡ จำเป็นต้องติดตั้ง FFmpeg ก่อนใช้งาน!
- Windows: ดาวน์โหลดจาก ffmpeg.org
- การติดตั้ง:
- แตกไฟล์ zip ไปที่
C:\ffmpeg - เพิ่ม
C:\ffmpeg\binใน System PATH - รีสตาร์ท Command Prompt/PowerShell
- ทดสอบด้วย:
ffmpeg -version
- แตกไฟล์ zip ไปที่
python --versionpip install -r requirements.txt📌 หมายเหตุ: ต้องติดตั้ง FFmpeg ก่อนทำตามขั้นตอนด้านล่าง
# ตรวจสอบ FFmpeg ก่อน
ffmpeg -version
# หาก FFmpeg พร้อมใช้งาน ดับเบิลคลิกที่ไฟล์
run_video_processor.batffmpeg -version
ffprobe -versionpython -m venv venv
venv\Scripts\activate # Windows
# หรือ source venv/bin/activate # Linux/Macpip install -r requirements.txt# โหมดโต้ตอบ (Interactive)
python video_processor.py --interactive
# โหมด Command Line
python video_processor.py -d 300 -s 25 -q mediumproject/
├── input_vdo/ # วางไฟล์วิดีโอต้นฉบับที่นี่
│ ├── video1.mp4
│ ├── video2.avi
│ └── ...
├── output_vdo/ # ไฟล์ที่ประมวลผลแล้ว (สร้างอัตโนมัติ)
│ ├── video1_part001.mp4
│ ├── video1_part002.mp4
│ └── processing_summary.json
├── venv/ # Virtual Environment
├── video_processor.py # โปรแกรมหลัก
├── requirements.txt # รายการไลบรารี
└── README.md # ไฟล์นี้
python video_processor.py [options]
Options:
-d, --duration ระยะเวลาการตัด (วินาที) [default: 300]
-s, --size ขนาดไฟล์สูงสุด (MB) [default: 25]
-q, --quality คุณภาพการเข้ารหัส [default: medium]
-i, --input โฟลเดอร์ input [default: input_vdo]
-o, --output โฟลเดอร์ output [default: output_vdo]
--interactive โหมดโต้ตอบultrafast- เร็วที่สุด, ขนาดไฟล์ใหญ่fast- เร็วmedium- ปกติ (แนะนำ)slow- ช้า, คุณภาพดีveryslow- ช้าที่สุด, คุณภาพดีที่สุด
- MP4 (
.mp4) - AVI (
.avi) - MOV (
.mov) - MKV (
.mkv) - WMV (
.wmv) - FLV (
.flv) - WebM (
.webm) - M4V (
.m4v)
# ตัดวิดีโอทุก 5 นาที (300 วินาที) ขนาดไฟล์ไม่เกิน 25 MB
python video_processor.py --interactive# ตัดทุก 10 นาที, ขนาดไม่เกิน 50 MB, คุณภาพสูง
python video_processor.py -d 600 -s 50 -q slowpython video_processor.py -i "my_videos" -o "processed_videos" -d 180 -s 15โปรแกรมจะสร้างไฟล์สรุปผลการประมวลผลใน output_vdo/processing_summary.json:
{
"timestamp": "2025-06-01 14:30:00",
"settings": {
"segment_duration": 300,
"max_size_mb": 25,
"quality_preset": "medium"
},
"results": {
"processed": 2,
"failed": 0,
"total": 2,
"time_taken": 145.6
}
}❌ ข้อผิดพลาด: ไม่พบ FFmpeg หรือ FFprobe
วิธีแก้:
- ตรวจสอบว่าติดตั้ง FFmpeg แล้ว:
ffmpeg -version - หากไม่มี ให้ดาวน์โหลดจาก ffmpeg.org
- แตกไฟล์ไปที่
C:\ffmpeg - เพิ่ม
C:\ffmpeg\binใน System PATH - รีสตาร์ท Command Prompt แล้วทดสอบใหม่
# ทดสอบ FFmpeg
ffmpeg -version
ffprobe -version
# หากแสดง "command not found" หรือ "is not recognized"
# ให้เพิ่ม FFmpeg ใน System PATH- ลดค่า
max_size_mb - เปลี่ยน
quality_presetเป็นfastหรือultrafast - ลดค่า
segment_duration
- เพิ่มค่า
max_size_mb - เปลี่ยน
quality_presetเป็นslowหรือveryslow
หากพบปัญหาหรือต้องการคำแนะนำ:
- ตรวจสอบไฟล์
processing_summary.json - ตรวจสอบ System Requirements
- ลองใช้ค่าเริ่มต้นก่อน
โปรแกรมนี้เป็น Open Source สามารถใช้งานได้อย่างอิสระ
🎬 Happy Video Processing! 🎬