Преобразование текста в html в прямом эфире из Django

У меня есть функция на бэкенде в django, которая вычисляет и возвращает скорость кадров видео, переданного OpenCv.videoCapture() .Тип скорости - float .

class video_feed(object):
    def __init__(self, pathVideo):    
    self.cap = cv.VideoCapture(pathVideo) 
    #some code .....       
    
    def __del__(self):
        self.cap.release()

    def get_frames(self):
    #some code ...    
    return speed_list

продолжайте вызывать этот метод, пока работает видео :

def gen_speed(video_feed):
    print('this is spped generation method')
    while True:
        speed = video_feed.get_frames()        
        yield(speed)
@gzip.gzip_page
def speed_frame(request):
    try:
        pathVideo = "video_detection/statics/rl4_pb8-7.mp4"
        cam = model.video_feed(pathVideo)
        #return StreamingHttpResponse(model.gen_test(cam),content_type="text/csv")
        return HttpResponse({'speed':cam.get_frames()})
    except:
        print("speed_frame not working !!!!!!!!!!!!!!!!!!!!!!!!")

но этот код не работает. мне нужен способ сделать поток скорости на моей html странице, чтобы я мог использовать его в chartjs.

потоковое видео с помощью openCv работает нормально, но когда я меняю тип на float, оно не работает .

Я наконец-то нашел лучший способ. Это использование каналов Django для передачи данных в формате JSON.

Вернуться на верх