Reolink RTSP -> ffmpeg, RTP: PT = xx: bad cseq, если остановлен / перезапущен быстро

787
Steven Kan

My BeeCam - это Raspberry Pi3 / Raspbian Stretch со свежекомпилированной версией ffmpeg N-89882-g4dbae00bac, работающей в качестве сервиса:

#!/bin/bash cd /usr/local/bin/ while true do ./ffmpeg -re -thread_queue_size 512 -rtsp_transport tcp -i \ "rtsp://anonymous:password@192.168.1.11:554" -i WilliamTellOverture.mp3 \ -vcodec copy -acodec copy -t 00:11:51 -f flv \ "rtmp://a.rtmp.youtube.com/live2/my-youtube-streaming-key" sleep 10s done 

где 192.168.1.11 - мой новый элегантный Reolink RLC-423S, а -t 00:11:51 - длина моего бесплатного MP3. Это обычно работает довольно хорошо:

https://www.youtube.com/user/IAmTheWaterbug/live

и это постоянно. Поток YT будет глючить при перезапуске, но поток возобновляется только с потерей примерно 15 секунд видео. Он работал непрерывно в течение ночи, по крайней мере, 8 часов (например, много петель), прежде чем я начал возиться с ним.

Я изменил сон на 5 секунд, и это, кажется, не беспокоит.

Но иногда я делал остановку sudo systemctl StreamToYouTube с последующим запуском sudo systemctl запуска StreamToYouTube, в течение 1-2 секунд (например, так быстро, как я могу набрать Up Up Up и Enter ), и иногда, когда я делаю это, поток завершается неудачно, и ffmpeg начинает сбрасывать:

[rtsp @ 0x302c2f0] RTP: PT=60: bad cseq e680 expected=0b49 [rtsp @ 0x302c2f0] RTP: PT=60: bad cseq 93ab expected=0b49 [rtsp @ 0x302c2f0] RTP: PT=60: bad cseq 93ac expected=0b49 [rtsp @ 0x302c2f0] RTP: PT=60: bad cseq e682 expected=0b49 

бесконечно.

Перезагрузка Pi не исправляет это (например, поток YT все еще терпит неудачу, и статус sudo systemctl StreamToYouTube возвращает тот же поток ошибок "bad cseq"), но перезагрузка камеры это исправляет. Мне интересно, что именно означает эта ошибка, и как сообщить об этом в Reolink.

В состоянии «сбой» камера работает нормально с других клиентов, например, я могу запустить Reolink.app на моем Mac или просмотреть веб-страницу камеры из любого браузера, и видео выглядит нормально.

Но по какой-то причине поток RTSP выглядит так, что ffmpeg не может его разрешить.

Это вполне повторяется, если я быстро останавливаю / запускаю службу, но перезапуск с 5-секундной паузой в моем скрипте, кажется, не беспокоит.

Спасибо!

1
Похоже, ошибка с камерами ffmpeg и Reolink, поскольку я получаю ту же ошибку при использовании Reolink C1 Pro при использовании ffplay или opencv с бэкэндом ffmpeg Crigges 5 лет назад 0

0 ответов на вопрос

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