TDN-M commited on
Commit
51131c0
·
verified ·
1 Parent(s): aff5e42

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +14 -9
app.py CHANGED
@@ -9,16 +9,18 @@ def enhance_video(input_file):
9
  # Kiểm tra xem input_file có tồn tại không
10
  if not input_file:
11
  return "Không có file video nào được tải lên."
12
-
13
  # Sử dụng đường dẫn file do Gradio cung cấp
14
  input_path = input_file
15
  output_path = "enhanced_output.mp4"
16
-
17
  # Định nghĩa các bộ lọc ffmpeg
18
  filters = [
19
- "unsharp=5:5:1.0", # Làm sắc nét video
20
- "hqdn3d=4:3:6:4", # Giảm nhiễu
21
- "eq=contrast=1.2:brightness=0.1" # Điều chỉnh tương phản và độ sáng
 
 
22
  ]
23
 
24
  # Kết hợp các bộ lọc thành chuỗi
@@ -27,10 +29,13 @@ def enhance_video(input_file):
27
  # Xây dựng lệnh ffmpeg
28
  command = [
29
  "ffmpeg",
30
- "-i", input_path, # File đầu vào
31
- "-vf", filter_chain, # Áp dụng các bộ lọc
32
- "-c:a", "copy", # Sao chép âm thanh nguyên bản
33
- output_path # File đầu ra
 
 
 
34
  ]
35
 
36
  try:
 
9
  # Kiểm tra xem input_file có tồn tại không
10
  if not input_file:
11
  return "Không có file video nào được tải lên."
12
+
13
  # Sử dụng đường dẫn file do Gradio cung cấp
14
  input_path = input_file
15
  output_path = "enhanced_output.mp4"
16
+
17
  # Định nghĩa các bộ lọc ffmpeg
18
  filters = [
19
+ "scale=1920:1080", # Upscale lên Full HD
20
+ "nlmeans=s=3:p=3:r=3", # Giảm nhiễu
21
+ "unsharp=5:5:1.0", # Làm sắc nét
22
+ "eq=contrast=1.2:brightness=0.1",# Điều chỉnh tương phản/sáng
23
+ "yadif=mode=1" # Deinterlace
24
  ]
25
 
26
  # Kết hợp các bộ lọc thành chuỗi
 
29
  # Xây dựng lệnh ffmpeg
30
  command = [
31
  "ffmpeg",
32
+ "-i", input_path, # File đầu vào
33
+ "-vf", filter_chain, # Áp dụng các bộ lọc
34
+ "-c:v", "libx265", # Codec HEVC (hiệu quả hơn H.264)
35
+ "-crf", "23", # Chất lượng video (thấp hơn = tốt hơn)
36
+ "-preset", "medium", # Tốc độ mã hóa (medium là cân bằng)
37
+ "-c:a", "copy", # Sao chép âm thanh nguyên bản
38
+ output_path # File đầu ra
39
  ]
40
 
41
  try: