Read the statement by Michael Teeuw here.
[MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras
-
I can stream full HD at 50 fps:
Video codec omx-h264 width 1920 height 1080 profile 100 fps 50.000000
A bit odd.
-
@evroom oops it came out I have to wait at least 30-40 seconds before I can see (succesfully) a 1080i @ 60Fps HD stream. :smiling_face_with_smiling_eyes:
However yesterday I found one more issue…
I connected the RPI for the first time to the TV to see how MagicMirror was looking on it, but I found out that the stream stops as soon as I ask something to Google Assistant (MMM-AssistantMk2 + MMM-Hotword by @Sean ) and it replies.
After that the stream doesn’t resume at all.I don’t know where to start and cannot see why this is going on as the RPI can easily play 2+ media files at a time. :confounded_face:
-
@Cr4z33
As I do not use MMM-AssistantMk2 and/or MMM-Hotword, I cannot help you there.
In principle the streaming should continue.
As a matter of fact, when I stop MM, my cam streams still continue (are listed by pm2 as independent applications).
As soon as there will be a MMM-HotAssistant, I might give it a try :-) -
@evroom no problem mate although it looks like the developer is no more active in this thread my bad. :confused_face:
Do you know by chance what to edit to see the stream in the same position as the white frame (I actually would like to get rid of it)?
-
Looking at the css file of the module, I would try to edit the custom.css and add this:
.MMM-RTSPStream .innerWrapper { border: 0; }
Not tested.
-
@cr4z33 said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
I found out that the stream stops as soon as I ask something to Google Assistant (MMM-AssistantMk2 + MMM-Hotword by @Sean ) and it replies.
Please check the web browser console (ctrl+shift+i) and see if for some reason AssistantMk2 or Hotword are sending a pause/hide command to other modules. You would see something like:
MMM-RTSPSTREAM is suspended...
. Also, after the stream disappears, check the status of PM2 (pm2 status
from ssh/terminal) and see ifomx_streamX
is still running. That will let me know if the module is telling the stream to stop or if omxplayer is giving up.Regarding the border alignment, search this forum and/or the closed issues on GitHub, it’s been answered before. @evroom’s solution looks correct to hide the border, but I can’t remember for sure.
Mini-rant: OMXPLAYER is the lowest resource player I’ve found to use for playing video streams on a Pi, but frankly, it’s a finicky b***h and has terrible logging to inform you of the problem. 90% of the issues raised with this module are caused by omxplayer itself, which, unfortunately I don’t have any better way to solve than any other user. That’s why I use pm2 to manage the streams so it will at least attempt to restart when it crashes.
@evroom, regarding the streams not stopping… Last week I found a bug in PM2’s API, calling
stop
on a process from node doesn’t work. I will work on a workaround until the PM2 devs correct the issue. -
I can confirm OMX is a major B.
I had to convert over to FFMPEG to get things to work without crashing the entire system to the point of taking it offline, but not crashing MM other than not updating anymore (Clock and such still work, just it couldn’t get anything off the internet)
-
@shbatm thanks for the reply.
I can confirm that I’ve got rid of the white frame by following @evroom 's suggestion (thanks mate).
Back in topic I’ve uploaded here the log 'cause I am not sure whether it is actually reporting a problem with MMM-RTSPStream or not. :thinking_face:
Looking at it it says
MMM-RTSPStream.js:161 MMM-RTSPStream has resumed...
after two questions I made to Google Assistant, but I found no mention about RTSP pausing or stopping.However I can confirm that omx_stream has indeed stopped from running! :frowning_face_with_open_mouth:
pm2 status ┌─────────────┬────┬──────┬────────┬─────────┬─────┬────────┬──────────┐ │ Name │ id │ mode │ status │ ↺ │ cpu │ memory │ ├─────────────┼────┼──────┼────────┼─────────┼─────┼────────┼──────────┤ │ mm │ 0 │ N/A │ fork │ online │ 0 │ 0% │ 2.5 MB │ │ omx_stream1 │ 1 │ N/A │ fork │ stopped │ 0 │ 0% │ 0 B │ └─────────────┴────┴──────┴────────┴─────────┴─────┴────────┴──────────┘
-
@shbatm @Cr4z33
It might be due to collision of stream output from multi-source (omxplayer and my voice output)
I’m not an expert of *nix system, so I cannot give a suggestion about using mixer(ALSA), but…in MMM-AssistantMk configuration, this could be help (not tested by myself. I don’t have RTSP-stream…)
onIdle: { timer: 1000*10, //After 10sec of last query, command: "RTSP_ACTIVATE" }, onActivate: { timer: 0, command: "RTSP_DEACTIVATE" }, command: { "RTSP_ACTIVATE": { notificationExec: { notification: "RTSP-PLAY", payload: "all" } }, "RTSP_DEACTIVATE": { notificationExec: { notification: "RTSP-STOP", payload: "all" } }, }
-
Thanks to @sean I’ve quickly fixed the RTSP issue by applying what he wrote here.
So if you are like me using both MMM-RTSPStream and MMM-AssistantMk2, open the config and in the MMM-AssistantMk2 module section replace
config: {
with
config: { onIdle: { timer: 1000*10, //After 10sec of last query, command: "RTSP_ACTIVATE" }, onActivate: { timer: 0, command: "RTSP_DEACTIVATE" }, command: { "RTSP_ACTIVATE": { notificationExec: { notification: "RTSP-PLAY", payload: "all" } }, "RTSP_DEACTIVATE": { notificationExec: { notification: "RTSP-STOP", payload: "all" } }, },
That way the stream will NEVER stop even if enquiring Google Assistant! :grinning_face_with_smiling_eyes:
Thank you @shbatm for willing to help me too.