Read the statement by Michael Teeuw here.
[MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras
-
@shbatm thank you mate deleting that part made everything work brilliantly!
-
So I am having finally some spare time to explain better how to to switch stream by voice control (think at ie. IP cameras, Internet TV/Radio channels, etc.).
We are going to use OMXplayer here (can’t say how it will be the result with VLC honestly…) and the good voice command module MMM-AssistantMk2.
So set it up properly and once you have it up and running come back and go on reading, otherwise contact @Sean (the author of that module) asking for help. :)Open config.js with a text editor and go to the MMM-AssistantMk2 module section.
Replaceconfig: {
with
config: { onActivate: { timer: 0, command: "RTSP_DEACTIVATE" }, transcriptionHook: { "CHANNEL_1": { pattern: "TV 1", command: "CHANGE_CHANNEL_1" }, "CHANNEL_2": { pattern: "TV 2", command: "CHANGE_CHANNEL_2" }, "CHANNEL_3": { pattern: "TV 3", command: "CHANGE_CHANNEL_3" }, "CHANNEL_4": { pattern: "TV 4", command: "CHANGE_CHANNEL_4" }, "CHANNEL_5": { pattern: "Radio 1", command: "CHANGE_CHANNEL_5" }, "CHANNEL_6": { pattern: "Radio 2", command: "CHANGE_CHANNEL_6" }, "CHANNEL_7": { pattern: "Radio 3", command: "CHANGE_CHANNEL_7" } }, command: { "CHANGE_CHANNEL_1": { notificationExec: { notification: "RTSP-PLAY", payload: "stream1" } }, "CHANGE_CHANNEL_2": { notificationExec: { notification: "RTSP-PLAY", payload: "stream2" } }, "CHANGE_CHANNEL_3": { notificationExec: { notification: "RTSP-PLAY", payload: "stream3" } }, "CHANGE_CHANNEL_4": { notificationExec: { notification: "RTSP-PLAY", payload: "stream4" } }, "CHANGE_CHANNEL_5": { notificationExec: { notification: "RTSP-PLAY", payload: "stream5" } }, "CHANGE_CHANNEL_6": { notificationExec: { notification: "RTSP-PLAY", payload: "stream6" } }, "CHANGE_CHANNEL_7": { notificationExec: { notification: "RTSP-PLAY", payload: "stream7" } }, "RTSP_DEACTIVATE": { notificationExec: { notification: "RTSP-STOP", payload: "all" } }, },
Please note that the aforementioned stream names (ie. “TV 1”) used after
pattern:
HAVE TO BE the same that we will use below in the MMM-RTSPStream module or it won’t work!
Of course they are all examples so fit them to your needs, but remember to use then the same naming.So let’s go to enter MMM-RTSPStream like the following:
{ module: "MMM-RTSPStream", position: "bottom_right", disabled: false, config: { autoStart: false, // Streams will start by voice commands only rotateStreams: true, rotateStreamTimeout: 0, shutdownDelay: 0, moduleWidth: 420, // Adjust it to your needs moduleHeight: 236, // Adjust it to your needs localPlayer: 'omxplayer', remotePlayer: 'none', showSnapWhenPaused: false, remoteSnaps: false, stream1: { name: 'TV 1', url: 'IPofstream1', protocol: "tcp", frameRate: 'undefined', width: 420, // Adjust it to your needs height: 236 // Adjust it to your needs }, stream2: { name: 'TV 2', url: 'IPofstream2', protocol: "tcp", frameRate: 'undefined', width: 420, // Adjust it to your needs height: 236 // Adjust it to your needs }, stream3: { name: 'TV 3', url: 'IPofstream', protocol: "tcp", frameRate: 'undefined', width: 420, // Adjust it to your needs height: 236 // Adjust it to your needs }, stream4: { name: 'TV 4', url: 'IPofstream', protocol: "tcp", frameRate: 'undefined', width: 440, // Adjust it to your needs height: 247 // Adjust it to your needs }, stream5: { name: 'Radio 1', url: 'IPofstream', protocol: "tcp", frameRate: 'undefined', width: 420, // Adjust it to your needs height: 236 // Adjust it to your needs }, stream6: { name: 'Radio 2', url: 'IPofstream6', protocol: "tcp", frameRate: 'undefined', width: 440, // Adjust it to your needs height: 247 // Adjust it to your needs }, stream7: { name: 'Radio 3', url: 'IPofstream7', protocol: "tcp", frameRate: 'undefined', width: 420, // Adjust it to your needs height: 236 // Adjust it to your needs }
This should be all.
You can add as many streams as you want (I don’t see the problem if you run them one by one). ;) -
i am using the develop branch of the module with vlc and latest MM.The feed is playing alright but it seems it is over MM and when i click over another module the feed dissapears going under.How can i solve that?
-
@costascontis - There may be a switch in VLC player that tells it to stay on top. I’d start looking at switches there.
-
this is my configuration:
{
module: “MMM-RTSPStream”,
position: “middle_center”,
header: “cam”,
config: {
autoStart: true,
rotateStreams: true,
rotateStreamTimeout: 10,
moduleWidth: 354,
moduleHeight: 240,
localPlayer: ‘omxplayer’,
remotePlayer: ‘none’,
showSnapWhenPaused: true,
remoteSnaps: true,
stream1: {
name: ‘c1’,
url: ‘rtsp://admin:a1234567@192.168.1.14/Streaming/Channels/1’,
frameRate: ‘undefined’,
hdUrl: ‘rtsp://admin:a1234567@192.168.1.14/Streaming/Channels/1’,
snapshotType: ‘url’,
snapshotRefresh: 10,
width: 354,
height: 240,
},
}
}
no response ,was it the problem of resolution,and how to configure that ,I tried many ways and still not success, and I can use my vlc to get the stream of the camera ,but was anything wrong with other configuration,no idea!
-
@website19880927 said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
localPlayer: ‘omxplayer’
Try using VLC instead.
Replace
localPlayer: ‘omxplayer’
with
localPlayer: ‘vlc’
However you will have to use the developer branch of this module.
See here for instructions on how to install it:
https://github.com/shbatm/MMM-RTSPStream/tree/developI didn’t test 4K streaming, but it should be OK up to 1080p.
-
Hey Guys,
any Solution to install the Modul at Ubuntu without Omxplayer? The option with vlc sounds good…
-
Believe it or not, I found that OMX is by far the most stable of setups in my use case. Odd, I know.
I do restart my Mirror daily, however.
-
@bkeyport said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:
Believe it or not, I found that OMX is by far the most stable of setups in my use case. Odd, I know.
I do restart my Mirror daily, however.
Are you using a script to auto restart and could you share?
-
@goprojojo I guess he just scheduled the reboot command into cron (Google for it). ;)