2016-03-30 3 views
1

Я пытаюсь захватить и записать в файл rtsp видеопоток (h.264) с IP-камеры с помощью командной строки VLC в Windows.Запись видеопотока h.264 rtsp в VLC

Я могу просматривать поток с помощью простой:

vlc -vvv rtsp://10.1.5.228:554/live.sdp 

И это работает каждый раз. Однако, когда я пытаюсь записать 30-секундное видео, используя

vlc -vvv rtsp://10.1.5.228:554/live.sdp --sout file/mp4:test.mp4 --run-time=30 vlc://quit 

результатов нестабильны - иногда это на самом деле записывает видео (тогда его размера составляет около 5 Мб), но чаще всего он просто создает почти пустой файл mp4 (он всегда имеет 713 байт).

Я думаю, что это может иметь что-то общее с компрессией между кадрами h.264 (закодировано камерой), но возникает вопрос: как решить эту проблему и записать поток каждый раз, когда я пытаюсь.

ответ

0

Похоже, вы просто сбрасываете поток rtsp в файл, который может быть подвержен ошибкам. Попробуйте изменить цепочку sout на что-то вроде этого. Замените X и путь к вашей среде.

vlc -vvv -I dummy rtsp://10.1.5.228:554/live.sdp --sout='#transcode{venc=x264{aud,profile=baseline,level=30,no-cabac},vcodec=h264,vb=800,width=XXX,height=XXX,fps=24.0}:std{mux=mp4,dst="/Your/Path/To/recordings/recording_XXX.mp4",access=file}' --network-caching=3000 

Просто демпинг потока в файл будет выглядеть следующим образом:

vlc -vvv -I dummy rtsp://10.1.5.228:554/live.sdp --sout='#standard{access=file,mux=mp4,dst=/Your/Path/recording.mp4}' 
+0

Спасибо за быстрый ответ! К сожалению, в такой форме он все еще не работает. Где я могу найти объяснения используемых вами параметров (например, профиль, уровень, cabac, vb) и как проверить, какие значения использовать? – paws

+0

(1) Можете ли вы опубликовать вывод журнала VLC, чтобы узнать, что происходит? (2) Вы можете найти объяснение для всех параметров, введя 'vlc -H' в командной строке - есть онлайн-версия, однако я сомневаюсь, что она актуальна: https://wiki.videolan.org/VLC_command -line_help/(например, 'profile' определяет профиль H.264, который будет использоваться, например, базовый, основной, высокий и т. д.) –

+0

есть две информации об ошибках в файле журнала: (1)' core error: ES_OUT_RESET_PCR called' (2) «ошибка ядра: не может продолжаться потоковая передача из-за ошибок». Я поместил весь файл журнала [здесь] (https://jpst.it/GDri) – paws

Смежные вопросы