• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

[MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras

Scheduled Pinned Locked Moved Utilities
602 Posts 67 Posters 1.8m Views 68 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • E Offline
    epi
    last edited by Sep 18, 2018, 11:29 PM

    @epi said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

    rtsp://192.168.2.237:554/user=USERNAME&password=PASSWORD&channel=1&stream=0.sdp

    I assume issue is in my stream URL either localPlayer. Any suggestions?

    1 Reply Last reply Reply Quote 0
    • E Offline
      epi
      last edited by Sep 21, 2018, 5:52 PM

      pi@raspberrypi:~ $ pm2 logs

      [TAILING] Tailing last 15 lines for [all] processes (change the value with --lines option)
      /home/pi/.pm2/pm2.log last 15 lines:
      PM2        | [2018-09-21T20:42:51.125Z] PM2 log: App [omx_stream1] with id [1] and pid [6551], exited with code [1] via signal [SIGI                                              NT]
      PM2        | [2018-09-21T20:42:51.132Z] PM2 log: Starting execution sequence in -fork mode- for app name:omx_stream1 id:1
      PM2        | [2018-09-21T20:42:51.159Z] PM2 log: App name:omx_stream1 id:1 online
      PM2        | [2018-09-21T20:42:53.221Z] PM2 log: App [omx_stream1] with id [1] and pid [6582], exited with code [1] via signal [SIGI                                              NT]
      PM2        | [2018-09-21T20:42:53.234Z] PM2 log: Starting execution sequence in -fork mode- for app name:omx_stream1 id:1
      PM2        | [2018-09-21T20:42:53.253Z] PM2 log: App name:omx_stream1 id:1 online
      PM2        | [2018-09-21T20:42:59.249Z] PM2 log: Stopping app:mm id:0
      PM2        | [2018-09-21T20:42:59.562Z] PM2 log: App [mm] with id [0] and pid [6136], exited with code [0] via signal [SIGINT]
      PM2        | [2018-09-21T20:42:59.632Z] PM2 log: pid=6136 msg=process killed
      PM2        | [2018-09-21T20:42:59.635Z] PM2 log: Starting execution sequence in -fork mode- for app name:mm id:0
      PM2        | [2018-09-21T20:42:59.651Z] PM2 log: App name:mm id:0 online
      PM2        | [2018-09-21T20:43:35.020Z] PM2 log: Stopping app:omx_stream1 id:1
      PM2        | [2018-09-21T20:43:35.054Z] PM2 error: Process with pid 6613 already exists
      PM2        | [2018-09-21T20:43:35.174Z] PM2 log: App [omx_stream1] with id [1] and pid [6613], exited with code [1] via signal [SIGI                                              NT]
      PM2        | [2018-09-21T20:43:35.193Z] PM2 log: pid=6613 msg=process killed
      
      /home/pi/.pm2/logs/omx-stream1-error.log last 15 lines:
      /home/pi/.pm2/logs/mm-error.log last 15 lines:
      0|mm       | WARNING! Could not validate config file. Please correct syntax errors. Starting with default configuration.
      0|mm       | [885:0919/041827.726584:FATAL:bus.cc(1152)] D-Bus connection was disconnected. Aborting.
      0|mm       | WARNING! Could not validate config file. Please correct syntax errors. Starting with default configuration.
      0|mm       | [10472:0919/213258.329193:FATAL:bus.cc(1152)] D-Bus connection was disconnected. Aborting.
      0|mm       | TypeError: `port` or a `server` must be provided
      0|mm       |     at new WebSocketServer (/home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/node-rtsp-stream-es6/node_modules/                                              ws/lib/WebSocketServer.js:44:11)
      0|mm       |     at VideoStream.startListener (/home/pi/MagicMirror/modules/MMM-RTSPStream/node_modules/node-rtsp-stream-es6/src/vid                                              eoStream.js:32:24)
      0|mm       |     at Class.startListener (/home/pi/MagicMirror/modules/MMM-RTSPStream/node_helper.js:49:32)
      0|mm       |     at Class.socketNotificationReceived (/home/pi/MagicMirror/modules/MMM-RTSPStream/node_helper.js:257:22)
      0|mm       |     at Socket.<anonymous> (/home/pi/MagicMirror/modules/node_modules/node_helper/index.js:113:11)
      0|mm       |     at emitTwo (events.js:126:13)
      0|mm       |     at Socket.emit (events.js:214:7)
      0|mm       |     at /home/pi/MagicMirror/node_modules/socket.io/lib/socket.js:513:12
      0|mm       |     at _combinedTickCallback (internal/process/next_tick.js:131:7)
      0|mm       |     at process._tickCallback (internal/process/next_tick.js:180:9)
      
      /home/pi/.pm2/logs/mm-out.log last 15 lines:
      0|mm       | Starting stream stream1 with args: [
      0|mm       |     "--avdict",
      0|mm       |     "rtsp_transport:tcp",
      0|mm       |     "--win",
      0|mm       |     "800, 421, 1120, 661",
      0|mm       |     "--live",
      0|mm       |     "--video_queue",
      0|mm       |     "4",
      0|mm       |     "--fps",
      0|mm       |     "30",
      0|mm       |     "rtsp://192.168.2.237:554/user=USERNAME&password=PASSWORD&channel=1&stream=0"
      0|mm       | ]
      0|mm       | PM2: omx_stream1 already running. Stopping old instance...
      0|mm       | Starting PM2 for omx_stream1
      0|mm       | PM2 started for omx_stream1
      
      
      
      
      1 Reply Last reply Reply Quote 0
      • S Offline
        shbatm Module Developer
        last edited by Sep 23, 2018, 6:56 PM

        @epi said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

        /user=USERNAME&password=PASSWORD&channel=1&stream=0.sdp

        Looking at the logs it looks like it’s trying to launch everything correctly. Just to confirm:

        1. The stream works correctly in VLC using the URL you have above.
        2. Since you’re using OMXPlayer – you are testing on the mirror with the RPi connected (not with VNC/Remote Desktop, etc). You won’t see playback from OMXPlayer on anything but the monitor connected to the RPi.

        You can try:

        1. Make sure the stream works with OMXPlayer by testing with the command line (shut down Magic Mirror first):
          omxplayer --avdict rtsp_transport:tcp --win 800, 421, 1120, 661 --live --video_queue 4 --fps 30 rtsp://192.168.2.237:554/user=USERNAME&password=PASSWORD&channel=1&stream=0.sdp
          
        2. Test the above with and without .sdp at the end of the path. I noticed in your log above for some reason it didn’t pass the extension .sdp. I don’t know if this is the issue or not. You can also try without the --win argument to test it full screen.
        3. Using UDP instead of TCP, put protocol: "udp" in your stream config (to test from command line, remove the rtsp_transport:tcp argument.
        4. Using stream=1 to test the lower resolution sub-stream. Sometimes OMXPlayer just refuses to do anything (without any errors) if it doesn’t have enough video memory–I’ve only seen it happen trying to play 3 streams at once though.
        5. Try adding a ? at the end of the stream url. Just something I saw while googling your url format to find out what kind of camera you have.
        E 1 Reply Last reply Sep 23, 2018, 11:10 PM Reply Quote 0
        • E Offline
          epi
          last edited by Sep 23, 2018, 11:06 PM

          This post is deleted!
          1 Reply Last reply Reply Quote 0
          • E Offline
            epi @shbatm
            last edited by Sep 23, 2018, 11:10 PM

            @shbatm

            @shbatm said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

            Looking at the logs it looks like it’s trying to launch everything correctly. Just to confirm:

            1. The stream works correctly in VLC using the URL you have above.
            2. Since you’re using OMXPlayer – you are testing on the mirror with the RPi connected (not with VNC/Remote Desktop, etc). You won’t see playback from OMXPlayer on anything but the monitor connected to the RPi.
            1. Yes, it does work in VLC.
            2. I control RPi via SSH & VNC, but it is connected via HDMI to monitor and I don’t see any output on the actual screen neither via VNC, nor actual screen.

            Testing:

            1. By making tests I encounter an error:
            pi@raspberrypi:~ $ sudo reboot
            login as: pi
            pi@192.168.2.111's password:
            Linux raspberrypi 4.14.50-v7+ #1122 SMP Tue Jun 19 12:26:26 BST 2018 armv7l
            
            The programs included with the Debian GNU/Linux system are free software;
            the exact distribution terms for each program are described in the
            individual files in /usr/share/doc/*/copyright.
            
            Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
            permitted by applicable law.
            Last login: Mon Sep 24 01:55:35 2018
            
            SSH is enabled and the default password for the 'pi' user has not been changed.
            This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.
            
            pi@raspberrypi:~ $ pm2 stop mm
            [PM2] Applying action stopProcessId on app [mm](ids: 0)
            [PM2] [mm](0) ✓
            ┌──────────┬────┬──────┬─────┬─────────┬─────────┬────────┬─────┬────────┬──────┬──────────┐
            │ App name │ id │ mode │ pid │ status  │ restart │ uptime │ cpu │ mem    │ user │ watching │
            ├──────────┼────┼──────┼─────┼─────────┼─────────┼────────┼─────┼────────┼──────┼──────────┤
            │ mm       │ 0  │ fork │ 0   │ stopped │ 0       │ 0      │ 0%  │ 0 B    │ pi   │ disabled │
            └──────────┴────┴──────┴─────┴─────────┴─────────┴────────┴─────┴────────┴──────┴──────────┘
             Use `pm2 show <id|name>` to get more details about an app
            pi@raspberrypi:~ $ omxplayer --avdict rtsp_transport:tcp --win 800, 421, 1120, 661 --live --video_queue 4 --fps 30 rtsp://192.168.2.237:554/user=USER&password=PASS&channel=1&stream=0.sdp
            [1] 1084
            [2] 1085
            [3] 1086
            pi@raspberrypi:~ $ File "421," not found.
            pi@raspberrypi:~ $
            
            
            1. Did not work
            2. Also did not work, this time another file is not being found
            omxplayer --avdict 421, 1120, 661 --live --video_queue 4 --fps 30 rtsp://192.168.2.237:554/user=USER&password=PASS&channel=1&stream=0
            [7] 1213
            [8] 1214
            [9] 1215
            [4]   Exit 1                  omxplayer --avdict 421, 1120, 661 --live --video_queue 4 --fps 30 rtsp://192.168.2.237:554/user=USERNAME
            [5]   Done                    password=PASSWORD
            [6]   Done                    channel=1
            pi@raspberrypi:~ $ File "1120," not found.
            
            
            1. 5., Did not work
            pi@raspberrypi:~ $ File "421," not found.
            
            1 Reply Last reply Reply Quote 0
            • S Offline
              shbatm Module Developer
              last edited by shbatm Sep 24, 2018, 2:07 AM Sep 24, 2018, 2:04 AM

              @epi My fault: for command line you have to fix the window command line argument:
              ... --win 800,421,1120,661 ... or ... --win '800 421 1120 661' ... and I think put the URL in quotes.

              You can test it without that whole argument (should play full screen). This is what I meant in #2 above. Here’s some combos to try:

              # Option 1 -- Should be full screen (if it works):
              omxplayer --avdict rtsp_transport:tcp --live --video_queue 4 --fps 30 "rtsp://192.168.2.237:554/user=USERNAME&password=PASSWORD&channel=1&stream=0.sdp"
              # Option 2:
              omxplayer --avdict rtsp_transport:tcp --live --video_queue 4 --fps 30 "rtsp://192.168.2.237:554/user=USERNAME&password=PASSWORD&channel=1&stream=0"
              # Option 3 Sub-stream:
              omxplayer --avdict rtsp_transport:tcp --live --video_queue 4 --fps 30 "rtsp://192.168.2.237:554/user=USERNAME&password=PASSWORD&channel=1&stream=1.sdp"
              # Option 4 UDP:
              omxplayer --live --video_queue 4 --fps 30 "rtsp://192.168.2.237:554/user=USERNAME&password=PASSWORD&channel=1&stream=0.sdp"
              
              E 1 Reply Last reply Sep 24, 2018, 3:21 AM Reply Quote 0
              • E Offline
                epi @shbatm
                last edited by Sep 24, 2018, 3:21 AM

                @shbatm

                I did a fresh install of RPI OS & MM all addons

                Option one: freeze, then after a wait console available again

                pi@raspberrypi:~/MagicMirror/modules/MMM-RTSPStream $ omxplayer --avdict rtsp_transport:tcp --live --video_queue 4 --fps 30 "rtsp://192.168.2.237:554/user=USER&password=PASS&channel=1&stream=0.sdp"
                Video codec omx-h264 width 1280 height 960 profile 77 fps 30.000000
                Audio codec pcm_alaw channels 1 samplerate 8000 bitspersample 8
                Subtitle count: 0, state: off, index: 1, delay: 0
                V:PortSettingsChanged: 1280x960@30.00 interlace:0 deinterlace:0 anaglyph:0 par:1.00 display:0 layer:0 alpha:255 aspectMode:0
                have a nice day ;)
                

                Option two: many lines

                COMXVideo::Decode timeout
                

                Option three: same as first one, freeze then

                Video codec omx-h264 width 704 height 576 profile 77 fps 30.000000
                Audio codec pcm_alaw channels 1 samplerate 8000 bitspersample 8
                Subtitle count: 0, state: off, index: 1, delay: 0
                V:PortSettingsChanged: 704x576@30.00 interlace:0 deinterlace:0 anaglyph:0 par:1.00 display:0 layer:0 alpha:255 aspectMode:0
                

                Option four:

                pi@raspberrypi:~ $ omxplayer --live --video_queue 4 --fps 30 "rtsp://192.168.2.2                                                                                                                                                             37:554/user=USER&password=PASS&channel=1&stream=0.sdp"
                Video codec omx-h264 width 1280 height 960 profile 77 fps 30.000000
                Audio codec pcm_alaw channels 1 samplerate 8000 bitspersample 8
                Subtitle count: 0, state: off, index: 1, delay: 0
                
                
                
                1 Reply Last reply Reply Quote 0
                • Cr4z33C Offline
                  Cr4z33
                  last edited by Cr4z33 Oct 26, 2018, 3:26 PM Oct 26, 2018, 3:25 PM

                  Hi @shbatm I am playing with your module to see TV programs from a Vu+ Duo² (a DVB-S2+DVB-T Linux/Enigma2 decoder).

                  The only thing I can’t succed is to see HD TV programs.
                  I’ve tried to use both

                  url
                  

                  and

                  hdUrl
                  

                  , but those streams won’t start (while normal SD programs are working just fine).

                  This is my current script by the way (the HD channel has been disabled in the meantime):

                  {
                  		    module: "MMM-RTSPStream",
                  		    position: "bottom_right",
                  		    // header: "Sky TG24",
                  		        config: {
                  		        autoStart: true,
                  		        rotateStreams: false,
                  		        rotateStreamTimeout: 10,
                  		        moduleWidth: 390,
                  		        moduleHeight: 219,
                  		        localPlayer: 'omxplayer',
                  		        remotePlayer: 'none',
                  		        showSnapWhenPaused: false,
                  		        remoteSnaps: false,
                  		        stream1: {
                  		            // name: 'Sky TG24',
                  		            // url: 'http://192.168.1.6:8001/1:0:1:5:7918:217C:EEEE0000:0:0:0:',
                  		            name: 'RAI 3 TGR Puglia',
                  		            url: 'http://192.168.1.6:8001/1:0:1:D4B:8800:13E:EEEE0000:0:0:0:',
                  		            // name: 'RAI 3 HD',
                  		            // hdUrl: 'http://192.168.1.6:8001/1:0:1:2191:5:13E:EEEE0000:0:0:0:',
                  		            protocol: "tcp",
                  		            frameRate: 'undefined',
                  		            width: 390,
                  		            height: 219,
                  		            }
                  		        }
                  		},
                  
                  1 Reply Last reply Reply Quote 0
                  • evroomE Offline
                    evroom
                    last edited by evroom Oct 26, 2018, 3:35 PM Oct 26, 2018, 3:35 PM

                    Hi,

                    Can you check this ?

                    $ vcgencmd codec_enabled MPG2
                    

                    It should say “MPG2=enabled”.

                    License can be bought for a few euro’s:

                    http://www.raspberrypi.com/mpeg-2-license-key/

                    MagicMirror version: 2.30.0
                    Raspberry Pi 4 Model B Rev 1.5 (8 GB RAM)
                    Raspbian GNU/Linux 12 (bookworm)

                    Test environment:
                    MagicMirror version: v2.30.0
                    Raspberry Pi 3 Model B Plus Rev 1.3 (1 GB RAM)
                    Raspbian GNU/Linux 12 (bookworm)

                    Cr4z33C 1 Reply Last reply Oct 26, 2018, 3:37 PM Reply Quote 0
                    • Cr4z33C Offline
                      Cr4z33 @evroom
                      last edited by Oct 26, 2018, 3:37 PM

                      @evroom said in [MMM-RTSPStream] - Video Streaming from Live Feeds & Security Cameras:

                      Hi,

                      Can you check this ?

                      $ vcgencmd codec_enabled MPG2
                      

                      It should say “MPG2=enabled”.

                      License can be bought for a few euro’s:

                      http://www.raspberrypi.com/mpeg-2-license-key/

                      It is enabled as I followed your advice. ;)

                      As I said normal SD TV programs work just fine.
                      The problem is with High Definition programs.

                      1 Reply Last reply Reply Quote 0
                      • 1
                      • 2
                      • 9
                      • 10
                      • 11
                      • 12
                      • 13
                      • 60
                      • 61
                      • 11 / 61
                      • First post
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy