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()