Spaces:
Sleeping
Sleeping
File size: 1,702 Bytes
662bc01 0f3ae5f ef13e0a 21a4d29 0f3ae5f ef13e0a 2b67bc1 ef13e0a 2b67bc1 ef13e0a 5d6d140 662bc01 ef13e0a 030f68e | 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 | import streamlit as st
import io
import cv2
st.title("Play Uploaded File")
uploaded_file = st.file_uploader("Choose a video...", type=["mp4"])
temporary_location = False
def capture_video_frames():
video_file = st.file_uploader('video', type = ['mp4'])
cap = cv2.VideoCapture(video_file)
while cap.isOpened():
ret, frame = cap.read()
yield frame
def display_video_frames():
st.title("Live Video Stream")
frame_generator = capture_video_frames()
for frame in frame_generator:
# Convert the frame from OpenCV's BGR format to RGB format
frame_rgb = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
# Display the frame using Streamlit
st.image(frame_rgb, channels="RGB", use_column_width=True)
# if uploaded_file is not None:
# video_file = st.file_uploader('video', type = ['mp4'])
# cap = cv2.VideoCapture(video_file)
# output = cv2.VideoWriter('output.mp4',cv2.VideoWriter_fourcc(*'MPEG'),30,(1080,1920))
# while cap.isOpened():
# # Capture frame-by-frame
# ret, frame = cap.read()
# # if frame is read correctly ret is True
# if not ret:
# print("Can't receive frame (stream end?). Exiting ...")
# break
# # Our operations on the frame come here
# gray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)
# output.write(frame)
# # Display the resulting frame
# cv.imshow('frame', gray)
# if cv.waitKey(1) == ord('q'):
# break
# cv2.destroyAllWindows()
# output.release()
# cap.release()
# display_video_frames()
if uploaded_file is not None:
display_video_frames()
|