Stream multiple displays using one VLC instance

9,901

Solution 1

VLM is the way to go for multiple streams.

Here is a guide from the VLC docs on how to do multiple streaming. I created two streams, both with the input of screen:// and the output being:

#transcode{vcodec=MJPG,vb=800,fps=20,scale=0.5,acodec=none,user=admin,pwd=admin}:duplicate{dst=http{mux=mpjpeg,dst=:8181/screen1},dst=display}

Obviously with a different URL path for the different streams.

To add the screen options on the second and third screens use the setup option command.

Here are all of the commands I issued to make it work on my machine:

new Screen1 broadcast enabled
setup Screen1 input screen://
setup Screen1 output #transcode{vcodec=MJPG,vb=800,fps=20,scale=0.5,acodec=none,user=admin,pwd=admin}:duplicate{dst=http{mux=mpjpeg,dst=:8181/screen1},dst=display}

new Screen2 broadcast enabled
setup Screen2 input screen://
setup Screen2 output #transcode{vcodec=MJPG,vb=800,fps=20,scale=0.5,acodec=none,user=admin,pwd=admin}:duplicate{dst=http{mux=mpjpeg,dst=:8181/screen2},dst=display}
setup Screen2 option screen-width=1920
setup Screen2 option screen-height=1080
setup Screen2 option screen-top=0
setup Screen2 option screen-left=-1920

control Screen1 play
control Screen2 play

Solution 2

I had a similar problem; I wanted have a 3-wide array of 1080p displays. My solution was to invent a custom resolution for the host computer, in this case 5760x1080. I then installed screen splitting software; I think it was SplitView. One annoying thing about using such a large display with VLC is that the frame rate dropped and I abandoned it.

Share:
9,901

Related videos on Youtube

Steve LaBiss
Author by

Steve LaBiss

Updated on September 18, 2022

Comments

  • Steve LaBiss
    Steve LaBiss over 1 year

    Trying to figure out a way to start an instance of VLC from the command line to stream 3 displays on a Win7 box. We can start an instance of each one individually, and connect to each (though not at the same time, hence the need for 1 instance; we are assuming this will fix it).

    Constraints & progress thus far:

    • HTTP stream/connect method with authentication = working individually
    • Same IP and Port (192.168.x.x & 8181 respectively) = working individually
    • Different paths (/screen1, /screen2, /screen3) = working individually
    • Running separate instances using multiple IP's and/or NIC's = works as alt solution; not desirable as final solution

    Sample cmd string for primary monitor with local display option (nothing fancy):

    vlc screen:// :screen-fps=20.000000 :live-caching=300 :sout=#transcode{vcodec=MJPG,vb=800,fps=20,scale=0.5,acodec=none,user=admin,pwd=admin}:duplicate{dst=http{mux=mpjpeg,dst=:8181/screen1},dst=display} :sout-keep
    

    Sample cmd string for second monitor with local display option:

    vlc screen:// :screen-fps=20.000000 :screen-width=1600 :screen-height=900 :screen-top=-900 :screen-left=-1280 :live-caching=300 :sout=#transcode{vcodec=MJPG,vb=800,fps=20,scale=0.5,acodec=none,user=admin,pwd=admin}:duplicate{dst=http{mux=mpjpeg,dst=:8181/screen2},dst=display} :sout-keep
    

    Again, is there a way to combine them into same cmd string, resulting in 2+ streams (1 for each monitor/display), within said instance? Started looking at VLM and MOSAIC, but seemed overkill? Stuck for the moment.

  • Shane Di Dona
    Shane Di Dona almost 9 years
    Also, this meant that the actual display had a very weird resolution which the display driver said might damage my monitor; I'm unsure how true that threat is.