Omnibus commited on
Commit
929d706
·
1 Parent(s): 9b332c3

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +13 -7
app.py CHANGED
@@ -133,19 +133,18 @@ def dl(inp):
133
  out = None
134
  return out,out,out,out,out
135
 
136
- def trim_vid(vid,start_time,end_time,clip_speed):
137
  print (vid)
138
  start_hr=int(start_time.split(":",2)[0])*360
139
  start_min=int(start_time.split(":",2)[1])*60
140
- start_sec=float(start_time.split(":",2)[2])
141
  end_hr=int(end_time.split(":",2)[0])*360
142
  end_min=int(end_time.split(":",2)[1])*60
143
- end_sec=float(end_time.split(":",2)[2])
144
  start=start_hr+start_min+start_sec
145
  end=end_hr+end_min+end_sec
146
  #vid = f"{inp_out}.mp4"
147
  ffmpeg_extract_subclip(vid, start, end, targetname=f"{uid}-clip.mp4")
148
- final = clip.fx( vfx.speedx, float(clip_speed))
149
  out= f"{uid}-clip.mp4"
150
  capture = cv2.VideoCapture(out)
151
  frame_count = int(capture.get(cv2.CAP_PROP_FRAME_COUNT))
@@ -176,8 +175,13 @@ def make_gif():
176
  clip = VideoFileClip(f"{uid}-clip.mp4")
177
  clip.write_gif(f"{uid}/clip_gif.gif")
178
  out = f"{uid}/clip_gif.gif"
179
- return out,out
180
 
 
 
 
 
 
 
181
  with gr.Blocks() as app:
182
  with gr.Tab("Load"):
183
  with gr.Row():
@@ -190,11 +194,12 @@ with gr.Blocks() as app:
190
  frame_count=gr.Textbox(label="Frame Count",interactive = False)
191
  fps=gr.Textbox(label="FPS",interactive = False)
192
  outp_file=gr.Files()
 
 
193
  with gr.Row():
194
  start_f = gr.Textbox(label = "Start", value = "0:00:00", placeholder = "0:00:23",interactive = True)
195
  end_f = gr.Textbox(label = "End", value = "0:00:05", placeholder = "0:00:54",interactive = True)
196
  trim_count = gr.Textbox(label="Trimmed Frames")
197
- clip_speed = gr.Slider(label="Speed", min=0.1, max=2, value=1, step=0.1)
198
  trim_btn=gr.Button("Trim")
199
  out_trim=gr.Video(format="mp4")
200
  hid_box = gr.Textbox(visible=True)
@@ -239,8 +244,9 @@ with gr.Blocks() as app:
239
  def echo_fn(inp):
240
  return inp
241
  #outp_vid.change(echo_fn,outp_vid,[out_trim])
 
242
  gif_btn.click(make_gif,None,[gif_show,gif_file])
243
- trim_btn.click(trim_vid,[hid_box,start_f,end_f,clip_speed],[out_trim,in_vid,trim_count])
244
  outp_vid.change(load_video,outp_vid,[frame_count,fps,end_f]).then(trim_vid,[hid_box,start_f,end_f],[out_trim,in_vid,trim_count])
245
  frame_btn.click(capture_function,[out_trim],[frame_gal,frame_file,frame_stat])
246
  rem_btn.click(rem_bg,[out_trim],[rem_vid,frame_num,rem_bg_vid])
 
133
  out = None
134
  return out,out,out,out,out
135
 
136
+ def trim_vid(vid,start_time,end_time):
137
  print (vid)
138
  start_hr=int(start_time.split(":",2)[0])*360
139
  start_min=int(start_time.split(":",2)[1])*60
140
+ start_sec=int(start_time.split(":",2)[2])
141
  end_hr=int(end_time.split(":",2)[0])*360
142
  end_min=int(end_time.split(":",2)[1])*60
143
+ end_sec=int(end_time.split(":",2)[2])
144
  start=start_hr+start_min+start_sec
145
  end=end_hr+end_min+end_sec
146
  #vid = f"{inp_out}.mp4"
147
  ffmpeg_extract_subclip(vid, start, end, targetname=f"{uid}-clip.mp4")
 
148
  out= f"{uid}-clip.mp4"
149
  capture = cv2.VideoCapture(out)
150
  frame_count = int(capture.get(cv2.CAP_PROP_FRAME_COUNT))
 
175
  clip = VideoFileClip(f"{uid}-clip.mp4")
176
  clip.write_gif(f"{uid}/clip_gif.gif")
177
  out = f"{uid}/clip_gif.gif"
 
178
 
179
+ return out,out
180
+ def update_speed(inp,clip_speed):
181
+ clip = VideoFileClip(inp)
182
+ final = clip.fx( vfx.speedx, float(clip_speed))
183
+ final.write_videofile(f'{inp}')
184
+ return f'{inp}'
185
  with gr.Blocks() as app:
186
  with gr.Tab("Load"):
187
  with gr.Row():
 
194
  frame_count=gr.Textbox(label="Frame Count",interactive = False)
195
  fps=gr.Textbox(label="FPS",interactive = False)
196
  outp_file=gr.Files()
197
+ clip_speed = gr.Slider(label="Speed", min=0.01, max=2, value=1, step=0.01)
198
+ speed_btn = gr.Button("Update Speed")
199
  with gr.Row():
200
  start_f = gr.Textbox(label = "Start", value = "0:00:00", placeholder = "0:00:23",interactive = True)
201
  end_f = gr.Textbox(label = "End", value = "0:00:05", placeholder = "0:00:54",interactive = True)
202
  trim_count = gr.Textbox(label="Trimmed Frames")
 
203
  trim_btn=gr.Button("Trim")
204
  out_trim=gr.Video(format="mp4")
205
  hid_box = gr.Textbox(visible=True)
 
244
  def echo_fn(inp):
245
  return inp
246
  #outp_vid.change(echo_fn,outp_vid,[out_trim])
247
+ speed_btn.click(update_speed,[hid_box,clip_speed],outp_vid)
248
  gif_btn.click(make_gif,None,[gif_show,gif_file])
249
+ trim_btn.click(trim_vid,[hid_box,start_f,end_f],[out_trim,in_vid,trim_count])
250
  outp_vid.change(load_video,outp_vid,[frame_count,fps,end_f]).then(trim_vid,[hid_box,start_f,end_f],[out_trim,in_vid,trim_count])
251
  frame_btn.click(capture_function,[out_trim],[frame_gal,frame_file,frame_stat])
252
  rem_btn.click(rem_bg,[out_trim],[rem_vid,frame_num,rem_bg_vid])