Задать вопрос
kay
@kay

Конвертация онлйн трансляции rtsp h264 -> http mjpeg?

Никак не могу сконвертировать видео с камеры в mjpeg, чтобы его понял motion.


Вот что пытался сделать.


Конфиг ffserver
Port            8090
BindAddress     0.0.0.0
MaxClients      1000
MaxBandWidth    50000
CustomLog       -
NoDaemon


<Feed cam.ffm>
File            /tmp/cam.ffm
FileMaxSize     100M
</Feed>

<Stream cam.mjpeg>
Feed cam.ffm
Format mpjpeg
VideoFrameRate 30
#VideoBitRate 2048
#VideoBufferSize 4096
VideoSize 1280x720
VideoQMin 3
VideoQMax 31
NoAudio
Strict -1
</Stream>



Команды для трансляции видео, которые пробовал:
openRTSP -v -c &quot;rtsp://192.168.1.3/11&quot; | ffmpeg -f h264 -i - -f mjpeg -an http://localhost:8090/cam.ffm
openRTSP -v -c &quot;rtsp://192.168.1.3/11&quot; | ffmpeg -i - -f flv -an http://localhost:8090/cam.ffm



На выходе постоянно получаю ошибки и при попутке просмотра localhost:8090/cam.mjpeg ничего нет.


Как правильно сконвертировать видео?
  • Вопрос задан
  • 19918 просмотров
Подписаться 2 Оценить 1 комментарий
Решения вопроса 1
kay
@kay Автор вопроса
Вот этой командой удалось затранскодить поток с rtsp:

/usr/bin/vlc -I dummy -d rtsp://192.168.1.3/11 --no-sout-audio --sout #transcode{vcodec=MJPG,vb=1000,fps=15}:standard{access=http{mime=multart/x-mix-replace;boundary=myboundary},mux=mpjpeg,dst=:8090/cam.mjpg}
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@tresher
А какая у вас система?
В самой системе(если есть GUI), например, в vlc, работает, если просто открыть «rtsp://192.168.1.3/11»?

У вас в Feed-e, не прописан источник потока.
Может попробовать другой конфиг? Поправлю ваш конфиг под тот, что у нас на продакшене работает:

Port            8090
BindAddress     0.0.0.0
MaxClients      1000
MaxBandWidth    50000
CustomLog       -
NoDaemon


<Feed cam.ffm>
File            /tmp/cam.ffm
FileMaxSize     100M
Launch ffmpeg -i rtsp://192.168.1.3/11
</Feed>

<Stream cam.mjpeg>
Feed cam.ffm
Format mpjpeg
VideoFrameRate 30
#VideoBitRate 2048
#VideoBufferSize 4096
VideoSize 1280x720
VideoQMin 3
VideoQMax 31
NoAudio
Strict -1
</Stream>



Дальше нужно просто запустить ffserver
Ответ написан
Комментировать
@Calc
размер картинки нужно уменьшить, тогда всё заработает
для mjpeg 1280 многовато, буферы переполняются. 640 в ширину делай и 368 в высоту
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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