Using OBS and Stream Deck for Virtual Training

The What

Since discovering OBS studio primarily to get a cleaner background cut out on virtual calls, I’ve being ‘playing’.  By combining OBS Studio and Stream Deck for Mobile, I’ve built some useful set ups that are helping me with virtual training delivery that I wanted to share with fellow MCTs as well as anyone else delivering webinars and virtual training/teaching.

To read about my early exploits with OBS Studio and Stream Deck have a look at these blog posts.

Since writing these posts I have been delivering training from 1 hour to 5 days duration covering basic Microsoft Teams introduction to Microsoft 365 Administration and refining my set up.  I have delivered training using both Teams and Zoom, but the beauty of this technique is that it will work for anything you can share your screen in.

Most of my training delivery now includes not only the visible material (screen share or presentation) but also my video, in a single stream.  I do not have video and screen share running but have compiled a variety of feeds which combine multiple components such as a branded background, screen share and web cam feeds.  Here are two examples:

A screenshot of a cell phone

Description automatically generated
A screenshot of a cell phone

Description automatically generated

As I write this blog, I am also preparing to record a video demo of my training delivery set up using two web cams and screen share from two different screens into 1 layout.  Whilst a professional graphics designer could surely come up with better backgrounds and layouts, I wanted a simple layout given the number of moving components on screen.

A screenshot of a cell phone

Description automatically generated

That is what we are trying to achieve, let us look at the how.

Set up

Do read the blog Green Screen, Teams and OBS Studio for details on getting started.  Here I wanted to share my more advanced scenes.

Firstly, screen share with background image and webcam.  This scene has 3 sources, the screen capture, the web cam and an image, resized and arranged on screen to suit the required layout. As the webcam has already got the green screen filter on the image can sit behind the camera and show through. Just be aware that the order the items are in within your sources controls which is at the front.

This is a great option for branding your delivery, and you could also build a full screen background image that makes more of the screen space or overlay the webcam image on top of the screen share depending on the resolution of your shared screen.

My shared screen is the laptop screen set to 3000×2000 at 200%.  I ideally wanted it at 1920 x 1080 to match my OBS output but did not get very clear text.  However, this mismatch of resolution gave me the screen space to have my webcam beside rather than over the screen.  However I do also have a scene which is just the screen or use ZoomIt to enlarge things on screen if needed during delivery.

With any screen sharing I strongly recommend sharing one screen and putting the things you want to show on that screen.  This also make it easier to set up your scenes as they will include your designated ‘sharing’ screen.

I also recommend a scene for a breaktime countdown.  It helps you as a trainer keep track as well as your delegates. I have only been able to add one break time countdown regardless of the number of scenes. (UPDATE: See Creating Custom Timers for a more advanced version of the break timers)

 To create a countdown in OBS, I used this video.  The steps are:

  1. Create a Scene and name it – I called my scene 15 Min Break
  2. Include Camera & background if you want
  3. Add text source for static text and enter your text with any required formatting.
  4. Create a second text source and format as desired add the text “countdown”.  Remember what you name this text source as you will need to pick it up later.
  5. With the Countdown text selected, click on Tools -> Scripts
  6. Click the + under the scripts window and add the countdown script.  Clicking + should open to the default installed scripts.
  1. Set the time in minutes
  2. Choose the text source you created in step 4
  3. Set the text that will show when the timer runs out in Final Text box
  4. Click Close
  5. Rearrange and adjust text boxes to suit.


  • The timer starts when you activate the scene even if it had had not run out when previously displayed.
  • You can hide parts of a scene, so you can hide and reactivate your webcam if you include it in the scene, if you want to be hidden during the break

With all these different scenes my Stream Deck set up was running out of buttons!  But you can add a button that switches profiles, so I separated my scenes by category and added a profile for each.  There then just remained the need to create buttons to switch between profiles.

Another way of doing this is to create folders, which give different screens of buttons too.  However, I found that I prefer profile switching to folder navigation.       

Finally, I added a clock to each profile, as I found it easy to lose track of time with screen shares going on and my phone running Stream Deck full screen.

Preparing to Deliver

During delivery I have content for me only on Screen 1, content for sharing on screen 2 and screen 3 is clear.  I’ll be projecting onto that screen for sharing with the delegates to get the full screen combination of screen and webcam.

Before I start presenting, I have a checklist:

  • Screen 1
    • Meeting tool
      • Open to be used – close any others (for me this has been mainly Teams & Zoom)
      • Check audio and camera setting are picking up correct devices
    • Open all presentations to be used during the day – set to use presenter view with slide show on screen 2
    • Open any reference notes/running order you need (you could also use a tablet or secondary device for this if you prefer
    • OBS Studio
      1. start virtual cam
      1. project to screen 3
      1. Set to a getting set up or starting soon scene
      1. Check lighting and adjust if needed
    • Stream Deck (this could be minimised to the system tray but I prefer it open)
    • Lab monitoring page
  • Screen 2
    • Any web pages to be shared
    • First PPT deck slide show
    • Lab/Demo environment
  • Screen 3
    • OBS Studio full screen projection only – make sure nothing else is using this screen
  • Phone
    • Turn to silent
    • Open Stream Deck app
  • Tablet
    • Silent mode
    • Email open
  • Do not Disturb
    • Check DnD light is on
    • Inform family I’m starting & if they are out, put up door sign “Yes, I am in but delivering an online training course.  Please Do Not Disturb except in case of emergencies”
    • Close door to room


To start the delivery

  1. Join the meeting, web cam on, microphone muted
  2.  Check meeting set up
    • Recording on, if needed?
    • If in Zoom, switch on join & chat chimes
  3. Switch on Screen share and switch off video
  4. Pull up meeting window(s) back onto screen 1
  5. Click into presentation in screen 2, so my clicker works
  6. Remember to unmute!
  7. Start presenting, switch scenes as needed

I’ve published a little video to accompany this blog at

My Kit

I am running with the following kit:

  • Surface Book with two external monitors, plus external keyboard & mouse
    • Philips BDM4037U
    • Asus MB16AC ZenScreen
    • Surface Ergonomic Keyboard
    • Surface Precision Mouse
  • Two external webcams – the built-in web cam is just too difficult to get to an angle I am happy with.  The second web cam I borrowed from my son to do this blog/video combo. 
    • Logitech C270 (the normal camera)
    • Logitech C930e (borrowed for this blog & video)
  • External microphone on a boom arm with shock mount and pop filter
    • Blue Yeti with Blue Radius3 shock mount and Blue Compass Arm
  • Headphone
    • Currently using a set of in ear headphone plugged in to the microphone as less lag and audio breakup
  • Lighting
    • Elgato Key Light
    • Desk light too, so you can see.  Mine has a Hue bulb so I can control it from Stream Deck
  • Green Screen
    • I prefer a freestanding one and got mine from Amazon
  • Stream Deck Mobile
    • Running on my iPhone, sat on a little stand
  • OBS Studio and Virtual Cam

Leave a Reply

Please log in using one of these methods to post your comment: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s