Read the statement by Michael Teeuw here.
[MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras
-
@evroom said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
after every mm restart
There was a problem with the steams not stopping on a restart, so the module sends a stop command first whenever it starts, do you have
autoStart: true
in your config? -
@cr4z33 said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
With omxplayer (and autoStart: false) I see stream labels changing when giving a voice command, but then no stream is starting.
OK. I’ll check this later today, the notification RTSP-PLAY should switch and start the stream so that’s an issue.
-
-
@shbatm said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
There was a problem with the steams not stopping on a restart, so the module sends a stop command first whenever it starts, do you have
autoStart: true
in your config?Yes, I have.
Just to understand, when you start fresh, there is no omx_stream1 under pm2 list.
When you start your first stream, it is first visible under pm2 list, right?Till now I was able to start the stream with pm2 start, but after removing the stream (pm2 remove omx_stream1), I cannot get it to work anymore.
MM restart, reboot, nothing helps.
And pm2 start now says:pi@MagicPi:~ $ pm2 start omx_stream1 [PM2][ERROR] script not found : /home/pi/omx_stream1 script not found : /home/pi/omx_stream1 ┌──────────┬────┬─────────┬──────┬─────┬────────┬─────────┬────────┬─────┬──────────┬──────┬──────────┐ │ App name │ id │ version │ mode │ pid │ status │ restart │ uptime │ cpu │ mem │ user │ watching │ ├──────────┼────┼─────────┼──────┼─────┼────────┼─────────┼────────┼─────┼──────────┼──────┼──────────┤ │ mm │ 0 │ 2.5.0 │ fork │ 811 │ online │ 0 │ 4m │ 0% │ 2.5 MB │ pi │ disabled │ └──────────┴────┴─────────┴──────┴─────┴────────┴─────────┴────────┴─────┴──────────┴──────┴──────────┘
Which makes sort of sense.
After MM restart, pm2 logs shows:
0|mm | Connecting socket for: MMM-RTSPStream 0|mm | PM2: Stopping all OMXPlayer Streams... 0|mm | Sockets connected & modules started ... 0|mm | Launching application.
Will revert back to the master branch and try again.
-
@evroom said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
Will revert back to the master branch and try again.
Yes, the omx_stream1 is created the first time you play a stream with the module.
Please use the develop branch with omxplayer. It was working on my machine the last time I started.
-
@shbatm things are doing waaaay better now! :grinning_face_with_smiling_eyes:
With omxplayer stream switching is almost OK if it wasn’t that it doesn’t select the wanted stream.
Ie. I want stream3 therefore I give the voice command, but then it starts playing the wrong stream (and always random).
Voice recognition is 100% correct as I always have a textual confirmation of command on screen.With vlc it’s a mess as multiple streams ALWAYS start at the same time after a voice command.
At this point I don’t care who will be the chosen player as long as we get everything working so omxplayer would be fair enough if running properly. :smiling_face_with_open_mouth_smiling_eyes: :smiling_face_with_open_mouth_cold_sweat:
-
@shbatm said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
Yes, the omx_stream1 is created the first time you play a stream with the module.
Please use the develop branch with omxplayer. It was working on my machine the last time I started.
Back on develop branch again.
No change.
Now the “pm2 remove omx_stream1” looks to be a major mistake, as I cannot get the stream running again.
I do not see the module trying to start a new stream anymore.What would be the command line for starting the stream and having it appear under “pm2 list” ?
In other words, what does the module do in order to achieve this ? -
@evroom said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
Back on develop branch again.
Please send me your config in a chat.
-
@cr4z33 said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
With omxplayer stream switching is almost OK if it wasn’t that it doesn’t select the wanted stream.
I can’t replicate this issue. Directly sending notifications: of the form
notification: "RTSP-PLAY", payload: "streamX"
works as expected and switches to the correct stream when usingautoStart: false, rotateStreams: true, rotateStreamTimeout: 0
.How many streams do you have again? Is it less than 10?
@cr4z33 said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
With vlc it’s a mess as multiple streams ALWAYS start at the same time after a voice command.
I think this is related to the fact that VLC doesn’t close the streams automatically when switching, it puts the window in the background until it times out, then it closes. Try adding a
shutdownDelay: 0
to your module config to make the VLC stream close immediately on hiding. Same thing with omxplayer though, switching appears to work as expected on my end.Please also make sure you have the latest version of PM2:
sudo npm install -g pm2
-
did develop update now, both streams are on stop and error messages :(
PM2 | App [omx_stream2:1] online 0|mm | Initializing new module helper ... 0|mm | Module helper loaded: newsfeed 2|omx_stream1 | * failed to add service - already in use? 2|omx_stream1 | Video codec omx-mjpeg width 352 height 288 profile -99 fps 30.000000 2|omx_stream1 | Subtitle count: 0, state: off, index: 1, delay: 0 2|omx_stream1 | /usr/bin/omxplayer: Zeile 67: 1221 Abgebrochen (Speicherabzug geschrieben) LD_LIBRARY_PATH="$OMXPLAYER_LIBS${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" $OMXPLAYER_BIN "$@" PM2 | App [omx_stream1:2] exited with code [134] via signal [SIGINT] PM2 | App [omx_stream1:2] starting in -fork mode- PM2 | App [omx_stream1:2] online 1|omx_stream2 | * failed to add service - already in use? 1|omx_stream2 | Video codec omx-mjpeg width 352 height 288 profile -99 fps 30.000000 1|omx_stream2 | Subtitle count: 0, state: off, index: 1, delay: 0 1|omx_stream2 | /usr/bin/omxplayer: Zeile 67: 1244 Abgebrochen (Speicherabzug geschrieben) LD_LIBRARY_PATH="$OMXPLAYER_LIBS${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" $OMXPLAYER_BIN "$@" PM2 | App [omx_stream2:1] exited with code [134] via signal [SIGINT] PM2 | App [omx_stream2:1] starting in -fork mode- PM2 | App [omx_stream2:1] online 2|omx_stream1 | * failed to add service - already in use? 2|omx_stream1 | Video codec omx-mjpeg width 352 height 288 profile -99 fps 30.000000 2|omx_stream1 | Subtitle count: 0, state: off, index: 1, delay: 0 2|omx_stream1 | /usr/bin/omxplayer: Zeile 67: 1287 Abgebrochen (Speicherabzug geschrieben) LD_LIBRARY_PATH="$OMXPLAYER_LIBS${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" $OMXPLAYER_BIN "$@" PM2 | App [omx_stream1:2] exited with code [134] via signal [SIGINT] PM2 | App [omx_stream1:2] starting in -fork mode- PM2 | App [omx_stream1:2] online 0|mm | Initializing new module helper ... 0|mm | Module helper loaded: MMM-RTSPStream 0|mm | All module helpers loaded. 0|mm | Starting server on port 8080 ... 0|mm | Server started ... 0|mm | Connecting socket for: updatenotification 0|mm | Connecting socket for: MMM-Fuel 0|mm | Starting module helper: MMM-Fuel 0|mm | Connecting socket for: newsfeed 0|mm | Starting module: newsfeed 0|mm | Connecting socket for: MMM-RTSPStream 0|mm | PM2: Stopping all OMXPlayer Streams... 0|mm | Sockets connected & modules started ... 1|omx_stream2 | * failed to add service - already in use? 1|omx_stream2 | Video codec omx-mjpeg width 352 height 288 profile -99 fps 30.000000 1|omx_stream2 | Subtitle count: 0, state: off, index: 1, delay: 0 1|omx_stream2 | /usr/bin/omxplayer: Zeile 67: 1320 Abgebrochen (Speicherabzug geschrieben) LD_LIBRARY_PATH="$OMXPLAYER_LIBS${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" $OMXPLAYER_BIN "$@" PM2 | App [omx_stream2:1] exited with code [134] via signal [SIGINT] PM2 | App [omx_stream2:1] starting in -fork mode- PM2 | App [omx_stream2:1] online 2|omx_stream1 | * failed to add service - already in use? 2|omx_stream1 | Video codec omx-mjpeg width 352 height 288 profile -99 fps 30.000000 2|omx_stream1 | Subtitle count: 0, state: off, index: 1, delay: 0 2|omx_stream1 | /usr/bin/omxplayer: Zeile 67: 1349 Abgebrochen (Speicherabzug geschrieben) LD_LIBRARY_PATH="$OMXPLAYER_LIBS${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" $OMXPLAYER_BIN "$@" PM2 | App [omx_stream1:2] exited with code [134] via signal [SIGINT] PM2 | App [omx_stream1:2] starting in -fork mode- PM2 | App [omx_stream1:2] online 1|omx_stream2 | * failed to add service - already in use? 1|omx_stream2 | Video codec omx-mjpeg width 352 height 288 profile -99 fps 30.000000 1|omx_stream2 | Subtitle count: 0, state: off, index: 1, delay: 0 1|omx_stream2 | /usr/bin/omxplayer: Zeile 67: 1399 Abgebrochen (Speicherabzug geschrieben) LD_LIBRARY_PATH="$OMXPLAYER_LIBS${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" $OMXPLAYER_BIN "$@" PM2 | App [omx_stream2:1] exited with code [134] via signal [SIGINT] PM2 | App [omx_stream2:1] starting in -fork mode- PM2 | App [omx_stream2:1] online 2|omx_stream1 | * failed to add service - already in use? 2|omx_stream1 | Video codec omx-mjpeg width 352 height 288 profile -99 fps 30.000000 2|omx_stream1 | Subtitle count: 0, state: off, index: 1, delay: 0 2|omx_stream1 | /usr/bin/omxplayer: Zeile 67: 1422 Abgebrochen (Speicherabzug geschrieben) LD_LIBRARY_PATH="$OMXPLAYER_LIBS${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}" $OMXPLAYER_BIN "$@" PM2 | App [omx_stream1:2] exited with code [134] via signal [SIGINT] PM2 | App [omx_stream1:2] starting in -fork mode- PM2 | App [omx_stream1:2] online 0|mm | Launching application. 0|mm | libGL error: MESA-LOADER: failed to retrieve device information ^C pi@raspberrypi:~ $ pm2 status ┌─────────────┬────┬──────┬────────┬─────────┬─────┬────────┬──────────┐ │ Name │ id │ mode │ status │ ↺ │ cpu │ memory │ ├─────────────┼────┼──────┼────────┼─────────┼─────┼────────┼──────────┤ │ mm │ 0 │ N/A │ fork │ online │ 0 │ 0% │ 2.5 MB │ │ omx_stream1 │ 2 │ N/A │ fork │ stopped │ 9 │ 0% │ 0 B │ │ omx_stream2 │ 1 │ N/A │ fork │ stopped │ 9 │ 0% │ 0 B │ └─────────────┴────┴──────┴────────┴─────────┴─────┴────────┴──────────┘ Use `pm2 show <id|name>` to get more details about an app pi@raspberrypi:~ $
can you undo that somehow?