@Vladosio

Какой видеокодек нужно использовать, чтобы записывать видео с IP-камеры?

Какой видеокодек лучше использовать, чтобы получить возможность записи с IP-камеры?
Формат видео можно .avi, можно и .mp4, только нужно подобрать видеокодек, т. к. не работает видео.
Файл видео создается, но имеет размер 1, 0 или 6 КБ(для .avi). Несколько разных пробовал, но не получилось. Пробовал XVID, DIVX и др.
cap = cv2.VideoCapture('http://IP:Port/video')
fourcc = cv2.VideoWriter_fourcc(*'XVID')

6076ca99b3294721705740.png
  • Вопрос задан
  • 228 просмотров
Решения вопроса 1
@Vladosio Автор вопроса
Разобрался самостоятельно, когда искал такие же примерно проблемы у других.
Оказалось, что нужно было, чтобы размер кадра высчитывался из возможности камеры, чтобы записывать видео с сохранением, а не задан в коде.
Только пришлось изменить количество кадров, т.к. видео ускорялось во много раз, то есть, например, я снимаю видео 10 секунд, а файл получается на 1 секунду из-за большой цифры в fps(так было, когда fps = 20.0).

w = cap.get(cv2.CAP_PROP_FRAME_WIDTH)
h = cap.get(cv2.CAP_PROP_FRAME_HEIGHT) 
fps = 6
out = cv2.VideoWriter(video1, fourcc, fps, (int(w),int(h)))
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@12rbah
Попробуйте так сделать вопрос на стаке
import cv2

stream = cv2.VideoCapture('protocol://IP:port/1')

# Use the next line if your camera has a username and password
# stream = cv2.VideoCapture('protocol://username:password@IP:port/1')  

while True:

    r, f = stream.read()
    cv2.imshow('IP Camera stream',f)

    if cv2.waitKey(1) & 0xFF == ord('q'):
        break

cv2.destroyAllWindows()
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы