Read the statement by Michael Teeuw here.
[MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras
-
@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.
-
@cr4z33
Frankly said, it might not be due to my config modifying suggestion. (Because IT SHOULD PAUSE AND RESUME, but you said NEVER STOP)
I think it is due to use HDMI as output. I don’t know about it, but it might be able to mix from multi-sources. -
@sean yeah I actually forgot to mention that the RTSP outputs to HDMI while Google Assistant outputs to a RPI Voice HAT speaker. :grimacing_face:
-
@cr4z33 said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
yeah I actually forgot to mention that the RTSP outputs to HDMI while Google Assistant outputs to a RPI Voice HAT speaker.
That’s how it works. not by my code. :D
-
@sean of course. :winking_face:
To everybody else: I removed the white frame and forgot to ask how to move the streaming windows.
It is now offset compared to its module position. :confused_face:
I guess I need to edit something in
.MMM-RTSPStream .canvas { position: absolute; z-index: 1; left: 50%; top: 50%; /*width: 352px; height: 240px;*/ -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; height: 100%; }
right?
-
@cr4z33 said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
It is now offset compared to its module position.
Play with the
moduleOffset
andabsPosition
config options. Search this forum for those and check out the README on GitHub for details of what each one does. -
@barnosch Are you getting any console.log errors or PM2 errors?
-
I tried playing with absPosition, but it does not do what is expected.
First of all:
absPosition: This overrides the automatic window and moduleOffset settings.
Second of all:
Format: { top: XX, right: XX, bottom: XX, left: XX } where XX is the pixel position on the screen.
This is not quite true.
The omxplayer options say: --win ‘x1 y1 x2 y2’
This would translate to: { top: XX, left: XX, right: XX, bottom: XX }
In principle it is a rectangular with coordinates (x1,y1) - (x2,y2).But most important:
Whatever I do, including the module position, the video window is ALWAYS in the center of the screen, for the FULL width of the screen.
I will try playing with the other parameters a bit.