Announcement

Collapse
No announcement yet.

Multiple Monitor Slideshow

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Multiple Monitor Slideshow

    We would like to do a multiple monitor slideshow in our lobby with a very specific format:

    Monitor 1 shows Image 1. Image 1 passes to Montior 2 and a new Image (Image 2) loads simultaneously on Monitor 1. Image 1 then passes to Monitor 3, Monitor 2 takes Image 2, and Monitor 1 loads Image 3. So on and so forth.

    Essentially, a visitor in our lobby would see each image first on Monitor 1, then Monitor 2, then Monitor 3. Images would be passed down the line in an endless loop.

    Would IrfanView allow us to do this? If not, any thoughts on how we can accomplish this?

    #2
    The only solution that comes to mind is to set up your monitors side by side as an Extended desktop and use the Irfanview Full Screen option "Multiple Monitor Mode: Stretch images over all monitors". You would then have to use the panorama feature to make up composite images arranged in the order 1,2,3 3,1,2 2,3,1 and play them in a continuously looping slideshow.

    Comment


      #3
      I don't know of a program that could do this, so Mij's suggestion seems best.

      IrfanView can display an EXE slideshow via the command line on the monitor of your choice. So, you could run 3 instances of the same slideshow, each on a different monitor, at the same time. However, getting them to synchronize in the fashion you desire is almost impossible, because there is no way to coordinate the starting of them accurately.

      Comment


        #4
        Originally posted by Skippybox View Post
        So, you could run 3 instances of the same slideshow, each on a different monitor, at the same time. However, getting them to synchronize in the fashion you desire is almost impossible, because there is no way to coordinate the starting of them accurately.
        Actually I found that if you start 3 slideshows together from a batch file then they do stay reasonably in step as long as all the image files are roughly the same size and type.
        The code I used was
        Code:
        If %1=="" Goto End
        Start C:\Users\Public\IrfanView\Folder1\i_view32.exe /slideshow=%1
        Start C:\Users\Public\IrfanView\Folder2\i_view32.exe /slideshow=%1
        Start C:\Users\Public\IrfanView\Folder3\i_view32.exe /slideshow=%1
        :End
        This uses 3 copies of Irfanview in different folders so that they have independent INI files.
        I opened all 3 copies, dragged copy 2 to monitor 2 and copy 3 to monitor 3. I set up all the slideshows to loop, with copy 1 set to start at image 3, copy 2 set to start at image 2, copy 3 set to start at image 1, and then closed them all to save the INI files.
        I found I could then drop a folder of images on to the batch file and get something pretty close to what Clarkins asked for.

        Later: Actually I see that they do get out of step after a while, especially if they are big image files. Pity about that. It was looking good!
        Last edited by Mij; 10.01.2009, 05:08 PM. Reason: Later observation

        Comment


          #5
          You're probably better off using a program like PowerPoint that has provision for slide transitions, etc. But if you want to use IrfanView, here's another suggestion: create a batch file that displays each set of images with a delay between each set. IrfanView has a /POS option that should allow proper positioning of each image. Something like:


          C:\Users\Public\IrfanView\Folder1\i_view32.exe /killmesoftly
          Start C:\Users\Public\IrfanView\Folder1\i_view32.exe /Pos=(2560,0) Image1
          Start C:\Users\Public\IrfanView\Folder1\i_view32.exe /Pos=(1280,0) Image2
          Start C:\Users\Public\IrfanView\Folder1\i_view32.exe /Pos=(0000,0) Image3
          CHOICE /C Y /T 5 /D Y >NUL
          C:\Users\Public\IrfanView\Folder1\i_view32.exe /killmesoftly
          Start C:\Users\Public\IrfanView\Folder1\i_view32.exe /Pos=(2560,0) Image2
          Start C:\Users\Public\IrfanView\Folder1\i_view32.exe /Pos=(1280,0) Image3
          Start C:\Users\Public\IrfanView\Folder1\i_view32.exe /Pos=(0000,0) Image4
          CHOICE /C Y /T 5 /D Y >NUL
          ...


          You'd probably want a loop to repeat the entire show. FYI: the CHOICE command creates a 5 second delay (the value of the /T option). The extra invocation of IrfanView with the /killmesoftly option is to limite the number of copies of IrfanView running. And the /POS option assumes a monitor width of 1280 pixels.

          Creating the code by hand for more than a few images would be painful. I'd write a small script in VBScript of JavaScript to generate the BAT file for me.

          Comment


            #6
            Yes that's a good idea cwb3106.
            I put it into 2 batch files, a control file that you could drop a folder onto and a display file that could be called repeatedly by the control file. Like this;

            Code:
            rem batch file **** CONTROL.BAT ****
            set image2=
            set image3=
            for %%a in (%1\*.jpg) do call C:\users\public\desktop\display.bat "%%a"
            call C:\users\public\desktop\display.bat
            call C:\users\public\desktop\display.bat
            Code:
            rem Batch file     ***  DISPLAY.BAT ***
            Start C:\Users\Public\IrfanView\i_view32.exe %1 /pos=(0,0)
            Start C:\Users\Public\IrfanView\i_view32.exe %image2% /pos=(1280,0)
            Start C:\Users\Public\IrfanView\i_view32.exe %image3% /pos=(2560,0)
            CHOICE /C Y /T 5 /D Y >NUL
            C:\Users\Public\IrfanView\i_view32.exe /killmesoftly
            set image3=%image2%
            set image2=%1
            That worked quite well.

            Comment


              #7
              This looks pretty creative, but I don't have a CHOICE command in XP. Is this available only in Vista or something? How can I do it in XP?

              Comment


                #8
                I am surprised, Skippybox. The CHOICE command was in DOS 6.2
                The other dodge for creating a delay in a batch file was to ping the modem with
                Ping 127.0.0.1 -n 5

                Comment


                  #9
                  Yes. Well, I read this on the web:

                  As the Windows operating system evolved to Windows 95 and then Windows 98, the Choice command came along for the ride. But when Windows 2000 came on to the scene, the Choice command was absent. It wasn’t included in Windows XP either...Well, I recently discovered that Microsoft put the Choice command back in Windows Vista and made it a bit more powerful.
                  So, maybe I just have to download PowerShell or Choice itself?

                  I don't know anything about pinging, but it seems to work. Thanks Mij. However, is it consistent for timing or only good for a delay?

                  I also can't get START to work as intended either without it opening an image in the Windows Picture and Fax Viewer.
                  Last edited by Skippybox; 15.01.2009, 07:47 PM.

                  Comment


                    #10
                    Hi Skippybox
                    I cannot remember much about that Ping command actually. With -n 5 you are telling it to send 5 pings. I think they are sent at 1 second intervals, so the delay will actually be 4 seconds plus the time taken for the last ping to come back, which will only be a few milliseconds. So I suppose I should have written -n 6 to get something nearer 5 seconds delay.
                    In this case with either CHOICE or PING the interval between slides is going to be rather more than 5 seconds because after the delay Irfanview has to open 3 new images before the next delay starts.
                    In your Start command I suspect that you have enclosed the IV exe path between a pair of quote marks. These old DOS batch commands are pretty fussy and seem to ignore the path if you do that, and just open the image in its default program instead.
                    I am not really a great fan of using batch files in windows. It's pretty amazing that they are still supported.

                    Comment


                      #11
                      Hello Mij,

                      Well, I am satisfied with PING nonetheless, but the explanation does help. I did use quotes which was necessary. I see now that moving IrfanView and removing them makes it work correctly. You are definitely right that DOS is fussy! I suppose I can get around it by using a link instead, and skipping START. I really like DOS, considering how handy and different it is. Unfortunately, it is a bit before my time, and I wish I had a better grasp on its methodology/syntax. I'm sure glad they keep it around. I bet people would complain if they ever took it away. In many ways, it is the only way to do certain things.

                      I do have one other issue. It seems the control is reverted back to the statement after the for loop after leaving DISPLAY.BAT, instead of processing the for loop completely. Thus, the for statement only passes one image file instead of three before calling DISPLAY.BAT twice more to finish. What might have happened, or is this coded wrong?
                      Last edited by Skippybox; 15.01.2009, 11:39 PM.

                      Comment


                        #12
                        Skippybox
                        That "Call" in the For line should return to the For statement.
                        The batch "For" statement is a complete loop in itself on a single line. In this case it steps through every item it can match within the dataset "%1/*.jpg". Since %1 is the name of the Folder that you passed to Control.bat it should go through that folder and Call Display.bat once for each jpg file it finds. Those last two calls to Display.bat after the For statement line are just to pass the final image on down to the last monitor.

                        I would not have thought that For worked any differently in XP. You could check I suppose by typing "Help For" at a Command prompt. In Vista that tells me about a whole new range of options in the For statement that never existed in the old DOS days including some format for the variable that strips off quote marks. Maybe that is what is needed if there are spaces in the IrfanView path.

                        Comment


                          #13
                          Well, I moved everything to C:\ and eliminated all spaces and restricted the quotes and it works like a charm! Thank you, I knew it should have worked the way you said. Not absolutely smooth, but it does look pretty awesome!

                          Comment

                          Working...
                          X