Jump to content
C4 Forums | Control4

Video Storm Multidisplay programming


eggzlot

Recommended Posts

So starting to mess around with this feature.  The idea I am trying to program is if the doorbell rings, and the Living Room TV (or any TV) is on,  the current feed will take up half the screen and 2 exterior cameras will each populate 1/4 of the screen.

Ideally I’d use PiP but that is limited to 1 extra feed, so I need to use the Multidisplay feature.

Programming wise I got it, I also used the capture and return to state features so after 10 seconds it goes back to normal. However, it is requiring all 3 inputs to be listed, so the 2 cameras plus the current feed.  I have 5-6 inputs into VS, so do I need to do a conditional for each one?  example:

If Living Room TV is On
    If Source X is on
          save current output setting to flash slot 1
               sets display X to display given sources in layout 2

and I’d have to repeat that for all devices in my netplay system?  is there an easier way to do it @videostorm
 

Link to comment
Share on other sites


3 hours ago, eggzlot said:

So starting to mess around with this feature.  The idea I am trying to program is if the doorbell rings, and the Living Room TV (or any TV) is on,  the current feed will take up half the screen and 2 exterior cameras will each populate 1/4 of the screen.

Ideally I’d use PiP but that is limited to 1 extra feed, so I need to use the Multidisplay feature.

Programming wise I got it, I also used the capture and return to state features so after 10 seconds it goes back to normal. However, it is requiring all 3 inputs to be listed, so the 2 cameras plus the current feed.  I have 5-6 inputs into VS, so do I need to do a conditional for each one?  example:

If Living Room TV is On
    If Source X is on
          save current output setting to flash slot 1
               sets display X to display given sources in layout 2

and I’d have to repeat that for all devices in my netplay system?  is there an easier way to do it @videostorm
 

The API makes this easy to do for PIP.  Not really optimized for what you are trying to do....

Here goes a method:

In C4,  (on motion trigger Y1 event)

Save current output setting to flash slot 1

If Room X1 is On

    sets display X1 to display given sources in layout 2

If Room X2 is On

    sets display X2 to display given sources in layout 2

If Room Xn is On

    sets display Xn to display given sources in layout 2

Wait for X seconds, then recall the flash slot 1

Use the same code attached to each of your motion trigger events.  The sources used will be different depending on the trigger event.

 

Link to comment
Share on other sites

you could also use the snap shot driver as well to accomplish this as well. just need to be sure to change the room source when selecting the cameras. Also may need more than one driver if multiple rooms can be activated simultaneously and on separate sources.

 

Link to comment
Share on other sites

1 hour ago, videostorm said:

The API makes this easy to do for PIP.  Not really optimized for what you are trying to do....

Here goes a method:

In C4,  (on motion trigger Y1 event)

Save current output setting to flash slot 1

If Room X1 is On

    sets display X1 to display given sources in layout 2

If Room X2 is On

    sets display X2 to display given sources in layout 2

If Room Xn is On

    sets display Xn to display given sources in layout 2

Wait for X seconds, then recall the flash slot 1

Use the same code attached to each of your motion trigger events.  The sources used will be different depending on the trigger event.

 

2 of the 3 sources are the same - 2 camera feeds.  The 3rd source is what I am watching live on TV - could be a roku, a shield, blu ray player, etc - whatever isn’t being served by my centralized system. 
 

Prior to posting I did what you suggested.  It works if the first source is what I am watching.  For layout 2 you need 3 inputs.  Camera 1, camera 2 and let’s say I put in roku (have one centralized).  If I’m watching roku content it’s great.  If I’m watching my centralized blu ray player then what happens is the blu ray player feed disappears for roku and the 2 cameras.  Trying to keep the “live feed” steady and just pop in 2 cameras when the doorbell rings and 10 seconds later camera feeds disappear and what we were watching goes back to full screen. 
 

snapshot driver would pause the live TV feed.  Not what I want.  
 

want to keep live viewing source, add 2 cameras, then back to just original source

do you suggest I program it per every potential source?  Is that what you mean?

if room X is on

   If source is A

   If source is B

   If source is C

works great with PiP but limited to 1 camera feed right?  That would be the quickest method 

Link to comment
Share on other sites

Using Tiling mode will be disruptive, since it stops the full screen stream and then loads 3 new streams.  Then later stops all those and restarts the full screen stream.  Not good for your use case.

 

PIP mode is what you want.  It lets the full screen continue to play and just loads then stops the substream on top.  Not disruptive to your experience.  However, it is limited to 1 overlay stream.  

Technically the Shield could do 2 overlay (PIP) streams just fine.  However, we would have to add support for that in the driver, api, and app.  

A quicker method would be to use SplashTiles to create a source with multiple tiled cameras, and then PIP the SplashTiles source itself.  That would give you multiple cameras in a single PIP window call.  The only downside is SplashTiles uses the JPEG or MJPEG camera streams verses the RTSP streams, so the frame rate is lower.  However, it would give you exactly what you need.

Link to comment
Share on other sites

2 hours ago, videostorm said:

Using Tiling mode will be disruptive, since it stops the full screen stream and then loads 3 new streams.  Then later stops all those and restarts the full screen stream.  Not good for your use case.

 

PIP mode is what you want.  It lets the full screen continue to play and just loads then stops the substream on top.  Not disruptive to your experience.  However, it is limited to 1 overlay stream.  

Technically the Shield could do 2 overlay (PIP) streams just fine.  However, we would have to add support for that in the driver, api, and app.  

A quicker method would be to use SplashTiles to create a source with multiple tiled cameras, and then PIP the SplashTiles source itself.  That would give you multiple cameras in a single PIP window call.  The only downside is SplashTiles uses the JPEG or MJPEG camera streams verses the RTSP streams, so the frame rate is lower.  However, it would give you exactly what you need.

@videostorm thanks for the quick replies!

Tiling mode = multidisplay?  Just making sure we are talking the same lingo!

I tried to do PiP with Source X for 3 seconds and then Source Y for 3 seconds and it was not rotation between the two.  I also set in a 500ms delay and still wouldn’t flip between the two.  Is the call to the system not responsive enough to do it back to back?  Ideally I’d get both on the screen at once, but if they rotate every 3-4 seconds that would be fine too.  My house isn’t Fort Knox!  Just with the angle of the doors station sometimes you cannot see who is there, so we installed an overhead camera too so I’d like to see both views.

When you mention the shield can do 2 streams - I use the Shields in a few ways - both as a decoder/VRX at the TV but also as a centralized sourced plugged into a VTX100.  So do you mean the centralized one or the decoder shield?  I’d assume the decoder but curious and if so - is this something you wouldn’t mind adding to your API and support and driver?  And is it a Shield thing or Android TV?  Because in my set up I use VRX010, Shields and 1 Sony TV all as decoders at the TV.  So if you made the update, would it work on the Sony TV too?  Most of my key TV’s use the Shields or Sony TV so if this change is made it would likely solve my issues.

Lastly, I would not be against Splashtiles but that is a yearly fee, no?  I do not mind MJPEG because this isn’t mission critical viewing but I’d rather not tack on a yearly fee to see 2 videos pop up when someone rings my doorbell.  This would take me more time too because I am not using Splashtiles yet.

Link to comment
Share on other sites

Yes, tiling = multidisplay

You could cycle them as follows:

    set PIP source 1, duration 0

    wait 4 seconds

    set PIP source 2, duration 4 

Use duration 0 to avoid a race condition (C4s 4 seconds not exactly the same as our 4 seconds)

 

I meant the Shield as a decoder.  2 PIP streams would only work on Shield hardware because it has special hardware acceleration for this.  

SplashTiles Cloud is a subscription service (or ad supported).  However, you also have SplashTiles local on your NetPlay Manager.  You can use that for free with no ads.

Link to comment
Share on other sites

12 hours ago, videostorm said:

Yes, tiling = multidisplay

You could cycle them as follows:

    set PIP source 1, duration 0

    wait 4 seconds

    set PIP source 2, duration 4 

Use duration 0 to avoid a race condition (C4s 4 seconds not exactly the same as our 4 seconds)

 

I meant the Shield as a decoder.  2 PIP streams would only work on Shield hardware because it has special hardware acceleration for this.  

SplashTiles Cloud is a subscription service (or ad supported).  However, you also have SplashTiles local on your NetPlay Manager.  You can use that for free with no ads.

this worked - thanks.  I bumped it up to 5 seconds but nonethless the idea worked - thanks!

If you ever enable the Shield to do 2 streams please update the boards because that is a feature I'd use ASAP as I am slowing turning all of my TVs over to Shields for decoders.  

Did not realize the Splashtiles on the NetPlay Manager were free, so maybe I'll test out that function too - thanks!

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.