Fataj commited on
Commit
2da79a4
Β·
verified Β·
1 Parent(s): 49efbe2

Upload app.py

Browse files
Files changed (1) hide show
  1. app.py +53 -0
app.py ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ import gradio as gr
3
+ from extractor import process_video, RESOLUTIONS
4
+
5
+ with gr.Blocks() as demo:
6
+ gr.Markdown("""
7
+ # 🎬 Vid-Take PRO
8
+
9
+ 🚨 **Access Required:**
10
+ To use this app, please purchase the access password here:
11
+ πŸ‘‰ [**Buy for $15 on Gumroad**](https://franciscoel.gumroad.com/l/hpgcv)
12
+
13
+ This tool extracts up to **10,000 HD frames** from any movie or TV show.
14
+ Password is sent instantly after payment.
15
+
16
+ πŸ“§ Contact: [email protected]
17
+
18
+ ---
19
+ βš–οΈ **Legal Notice:**
20
+ This tool is for educational, personal, and parody use only.
21
+ Commercial use of extracted frames is prohibited unless it complies with [U.S. Fair Use Law](https://www.law.cornell.edu/uscode/text/17/107).
22
+ """)
23
+
24
+ password = gr.Textbox(label="Enter Access Password", type="password")
25
+ status = gr.Textbox(label="Access Status", interactive=False)
26
+
27
+ with gr.Column(visible=False) as tool_ui:
28
+ with gr.Row():
29
+ video_input = gr.File(label="Upload Video File", file_types=[".mp4", ".mov", ".webm"])
30
+ fps_input = gr.Number(value=1, label="Frames Per Second (FPS)")
31
+ resolution_input = gr.Dropdown(choices=list(RESOLUTIONS.keys()), value="Original", label="Export Resolution")
32
+
33
+ with gr.Row():
34
+ extract_button = gr.Button("Extract Frames & Download")
35
+ output_file = gr.File(label="Download .zip of Frames")
36
+
37
+ extract_button.click(
38
+ fn=process_video,
39
+ inputs=[video_input, fps_input, resolution_input],
40
+ outputs=output_file
41
+ )
42
+
43
+ def check_pw(pw):
44
+ if pw == "frame123":
45
+ return "βœ… Access Granted", gr.update(visible=True)
46
+ else:
47
+ return "❌ Incorrect Password", gr.update(visible=False)
48
+
49
+ unlock_button = gr.Button("Unlock Tool")
50
+ unlock_button.click(fn=check_pw, inputs=password, outputs=[status, tool_ui])
51
+
52
+ if __name__ == "__main__":
53
+ demo.launch()