File size: 2,795 Bytes
e60ea96
4a979a6
 
 
 
e60ea96
 
4a979a6
e60ea96
 
4a979a6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
---
title: Kompres
emoji: 🎬
colorFrom: purple
colorTo: indigo
sdk: docker
pinned: false
license: gpl-3.0
---

# Kompres

Kompresi video profesional untuk WhatsApp, Instagram, Telegram, dan platform media sosial lainnya.

## ✨ Fitur

### Kompresi & Encoding
- **Platform Presets** β€” Konfigurasi otomatis untuk WhatsApp, Instagram Feed, Instagram Story, Telegram, dan Email
- **Smart Compression** β€” Tentukan target ukuran file (MB), bitrate dihitung otomatis
- **H.264 High Profile** β€” Encoding efisien dengan kualitas visual tinggi
- **Kalibrasi Warna BT.709** β€” Warna akurat, tidak pucat saat dikirim lewat chat
- **Estimasi Ukuran** β€” Lihat perkiraan ukuran output sebelum kompresi dimulai

### Format Output
- **MP4 (H.264)** β€” Format universal, kompatibel semua platform
- **WebM (VP9)** β€” Format terbuka, efisien untuk web
- **GIF Animasi** β€” Konversi video ke GIF berkualitas tinggi dengan palettegen

### Editing
- **Video Trimming** β€” Potong video ke durasi yang diinginkan
- **Frame Rate Control** β€” Ubah FPS output (24, 30, 60)
- **Aspect Ratio Crop** β€” Crop otomatis ke 16:9, 9:16, 1:1, atau 4:3

### Perbandingan Hasil
- **Before/After Slider** β€” Geser untuk membandingkan frame asli dan hasil kompresi
- **Detail Teknis** β€” Tabel perbandingan resolusi, codec, FPS, dan bitrate
- **Progress Realtime** β€” Pantau encoding dengan kecepatan (x) dan estimasi waktu sisa

### User Experience
- **Session Recovery** β€” Refresh browser? File tidak hilang, klik "Lanjutkan" untuk melanjutkan
- **Dark/Light Mode** β€” Toggle tema di sidebar sesuai preferensi
- **Riwayat Kompresi** β€” Lihat 10 kompresi terakhir di sidebar
- **Drag & Drop** β€” Area upload yang besar dan responsif
- **Tanpa Watermark** β€” Hasil kompresi bersih tanpa tanda air
- **Format Input Lengkap** β€” Mendukung MP4, MOV, MKV, AVI, dan WebM

## πŸš€ Cara Penggunaan

1. Upload video (drag & drop atau klik browse)
2. Pilih platform target atau atur parameter manual
3. Pilih format output (MP4/WebM/GIF)
4. *Opsional:* Aktifkan **Smart Compression** dan masukkan target ukuran
5. Klik **Mulai Kompresi**
6. Lihat perbandingan before/after
7. Download hasil

## πŸ› οΈ Menjalankan Secara Lokal

```bash
pip install -r requirements.txt
streamlit run app.py
```

## 🐳 Menjalankan dengan Docker

```bash
docker build -t kompres .
docker run -p 7860:7860 kompres
```

## πŸ“¦ Teknologi

| Komponen | Teknologi |
|----------|-----------|
| Frontend | Streamlit |
| Video Engine | FFmpeg (H.264, VP9, GIF palettegen) |
| Runtime | Python 3.11 |
| Deploy | Docker / Hugging Face Spaces |

## πŸ“„ Lisensi

Proyek ini dilisensikan di bawah **GNU General Public License v3.0**.
Lihat file [LICENSE](LICENSE) untuk detail lengkap.

## πŸ‘€ Kredit

Dibuat dan dikembangkan oleh **Garden**.