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.

    Halloween mirror ghouls anyone?

    Scheduled Pinned Locked Moved General Discussion
    56 Posts 18 Posters 61.0k Views 19 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.
    • J Offline
      jtyle6 @rvdgeer
      last edited by jtyle6

      @rvdgeer said in Halloween mirror ghouls anyone?:

      Note from admin: Please use Markdown on code snippets for easier reading!

      Markdown is not available from my Android smartphone. I don’t have the correct character available…
      And it’s a little too much to ask, to look-up the character on the web, so I can copy it…

      Markdown forms an Android phone
      
      1 Reply Last reply Reply Quote 0
      • MitchfarinoM Offline
        Mitchfarino Module Developer @Jopyth
        last edited by

        @Jopyth Have you had any luck with this mate?

        I haven’t looked at it for a while, have had a few things going on so haven’t had chance

        J 1 Reply Last reply Reply Quote 0
        • J Offline
          Jopyth Moderator @Mitchfarino
          last edited by

          @Mitchfarino did not have the time for it. I will see if I get to it, when I get back from vacation in one week.

          Helpful sticky: How to troubleshoot

          1 Reply Last reply Reply Quote 0
          • bheplerB Offline
            bhepler Module Developer
            last edited by bhepler

            I experimented with this a bit yesterday. Thanks to @rvdgeer for the hint and @Jopyth for the initial code to start.

            I ripped a YouTube video to disk and uploaded it to my Pi, putting it in the vendor folder. Adding this to my config.js was surprisingly effective (the rotate 90 is due to the video being designed to be projected on a window):

            {     module: "helloworld",
                  position: "fullscreen_below",  
                  config: {
                            text: "<video src='vendor/halloween.mp4' autoplay loop style='transform:rotate(90deg); position:absolute; top:50%;left:30%; height:50%'></video>"
                           }
             },
            MitchfarinoM 2 Replies Last reply Reply Quote 1
            • MitchfarinoM Offline
              Mitchfarino Module Developer @bhepler
              last edited by Mitchfarino

              @bhepler What video did you use? Sorry I missed the link

              How did you rip it from YouTube?

              yawnsY 1 Reply Last reply Reply Quote 0
              • yawnsY Offline
                yawns Moderator @Mitchfarino
                last edited by

                @Mitchfarino
                check your chat ;)

                MitchfarinoM 1 Reply Last reply Reply Quote 0
                • MitchfarinoM Offline
                  Mitchfarino Module Developer @yawns
                  last edited by

                  @yawns Awesome, thank you!

                  1 Reply Last reply Reply Quote 0
                  • MitchfarinoM Offline
                    Mitchfarino Module Developer @bhepler
                    last edited by

                    @bhepler Is there a way to loop through a number of videos, rather than just the one on repeat?

                    bheplerB 1 Reply Last reply Reply Quote 0
                    • bheplerB Offline
                      bhepler Module Developer @Mitchfarino
                      last edited by

                      @Mitchfarino Presumably you can inject some scripting to define an array of video files and then call a function to play the next file in the array. If you call that function from the onended() event in the VIDEO tag you should be able to get 90% of the way there.

                      MitchfarinoM 1 Reply Last reply Reply Quote 0
                      • MitchfarinoM Offline
                        Mitchfarino Module Developer @bhepler
                        last edited by

                        @bhepler Any idea how to do that?

                        bheplerB 1 Reply Last reply Reply Quote 0
                        • bheplerB Offline
                          bhepler Module Developer @Mitchfarino
                          last edited by

                          @Mitchfarino StackExchange had a pretty good start.

                          Based upon the fact that the text value includes the HTML tag , you can probably put another tag in there to handle your script. Probably. I haven’t tried it. You may end up making some fancy character escaping in order to get it to work properly, but it should be possible. If I get the chance I’ll play with it.

                          strawberry 3.141S 1 Reply Last reply Reply Quote 0
                          • strawberry 3.141S Offline
                            strawberry 3.141 Project Sponsor Module Developer @bhepler
                            last edited by strawberry 3.141

                            @bhepler the problem is to get the script tag evaluated, when it gets inserted as text, i have a script that is working, but still stuck on the evaluation. It’s probably easier to just create a new module, than finding another hacky workaround

                            Please create a github issue if you need help, so I can keep track

                            bheplerB 1 Reply Last reply Reply Quote 0
                            • bheplerB Offline
                              bhepler Module Developer @strawberry 3.141
                              last edited by

                              @strawberry-3.141 You’re going to turn me into a Javascript developer with crazy talk like that.

                              strawberry 3.141S 1 Reply Last reply Reply Quote 0
                              • strawberry 3.141S Offline
                                strawberry 3.141 Project Sponsor Module Developer @bhepler
                                last edited by strawberry 3.141

                                @bhepler that’s what i currently come up with

                                {
                                    module: "helloworld",
                                    position: "fullscreen_below",
                                    config: {
                                        text: "<video id='halloween_player'></video><script>console.log('init'); var halloween_videos = ['http://techslides.com/demos/sample-videos/small.mp4', 'http://vo.fod4.com/v/9727363b6d/v1280-q2.mp4']; var halloween_index = 0; function playHalloweenVideos(){ console.log('play'); if(halloween_index >= halloween_videos.length){ halloween_index = 0; } var player = document.getElementById('halloween_player'); player.src = halloween_videos[halloween_index++]; player.addEventListener('ended', playHalloweenVideos); player.play(); } playHalloweenVideos();</script><img src='test.png' onload='console.log(\"test\"); eval(document.getElementById(\"halloween_player\").nextSibling.innerHTML); document.removeChild(this);'"
                                    }
                                }
                                

                                but i’m not able to eval in my fake img tag, however if you enter this command in the electron console it works

                                eval(document.getElementById("halloween_player").nextSibling.innerHTML);
                                

                                Please create a github issue if you need help, so I can keep track

                                1 Reply Last reply Reply Quote 0
                                • F Offline
                                  frog
                                  last edited by frog

                                  This post is deleted!
                                  1 Reply Last reply Reply Quote 0
                                  • F Offline
                                    frog
                                    last edited by frog

                                    I’m trying to loop a video using the following:

                                       {
                                       module: ‘helloworld’,
                                       position: ‘fullscreen_below’,
                                       config: {
                                          text: “<video src=‘vendor/skelloop.mp4’ autoplay loop; position:absolute; top:100%;left:50%; height:200%’></video>”
                                          }
                                       },
                                    

                                    but it just stops after the first run. I’m using the OMXplayer which I would have thought would have taken the loop parameter - but it seems it doesn’t. Anyone have an idea how I can fix this?

                                    bheplerB 1 Reply Last reply Reply Quote 0
                                    • bheplerB Offline
                                      bhepler Module Developer @frog
                                      last edited by bhepler

                                      @frog You seem to be missing the style='position... part.

                                      So:

                                      config: {
                                            text: “<video src=‘vendor/skelloop.mp4’ autoplay loop style='position:absolute; top:100%;left:50%; height:200%’></video>”
                                            }
                                      
                                      F 1 Reply Last reply Reply Quote 2
                                      • F Offline
                                        frog @bhepler
                                        last edited by

                                        @bhepler yup, that dit it. Thanks!

                                        1 Reply Last reply Reply Quote 1
                                        • N Offline
                                          nuckinfutz
                                          last edited by

                                          is there a way to use a variable in the video file name? This is so close to what I want it hurts. What I want to do is play a random video from a specific location. I will be creating the videos so I will have complete control over the video naming and encoding.

                                          1 Reply Last reply Reply Quote 0
                                          • M Offline
                                            makersworkbench
                                            last edited by

                                            Sorry for resurrecting an old thread, but I have been trying to figure this out on my own for over a week now. How would I use a PING (ultrasonic) sensor to trigger the mmm-podcast module to make the jump scare happen? Python I can write but I am a javascript noob, and that is why I am having issues here.

                                            So basically I want the PING sensor to trigger and play the video file full screen with audio after it senses someone x-distance away for X number of seconds. Very bad psudo code below.

                                            when distance from sensor = 24-inches for 10-seconds
                                            play scare animation using mmm-podcast
                                            return to MagicMirror screen
                                            wait 60-seconds before arming ping sensor again

                                            1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 3
                                            • 2 / 3
                                            • 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