Making Matt GPT

Making Matt GPT
Photo by Jametlene Reskp / Unsplash

I had the opportunity to host an AI in Healthcare virtual roadshow event for over 350 attendees this week! It was a blast…partially because I make a specific point to keep it fun. Fun for me, for the audience, and for the presenters.

The part that got the most response/interest was “Matt GPT”, my co-host for the event. Matt GPT was quite literally me, but I played both roles at the same time.

Cohosts Matt Anderson and Matt GPT side by side

This interest followed after the event, as well, with folks wanting to know “how’d you do that?”. It’s not so complicated, but it does take planning and preparation…and it also introduces more things that could go wrong.

Below I share the details of what I prepped.

Scripting a story arc

The event was fully virtual and slated for 5.5 hours and 7 separate presentations each with its own presenter. I decided to make Matt GPT an ongoing character, not just a one-shot gimmick or joke.

There was an overall theme of AI (and specifically generative AI using models like those available from OpenAI). I based the character of Matt GPT as a co-host/co-pilot, but I needed to have a basic conflict to overcome, so I settled on the following:

  • Conflict: Matt GPT isn’t as good of a host, so Matt shoulders the burden.
  • Resolution: The sessions about AI provide value not only the audience, but Matt GPT, who improves as a host and has a moment to shine

I took that and added a bit more nuanced of an arc:

The story with a low peak, big dip, then high peak

I backed this structure into the overall flow of the day, making sure the “improvement” part lined up with when attention starts to drift. Let’s be honest, that’s a long time to be an attendee in a virtual event.

Technical tidbits

From a hardware perspective, I used two video cameras so I could have two distinct inputs for easy switching. One is an Elgato FaceCam USB camera, and the other an integrated Surface Laptop camera (raised up to eye level using a laptop stand).

I positioned the cameras so I would have a distinct look in each one of them, including the lighting/ background. It was also important that I didn’t have to move anything around to switch between personas.

the desk setup with two cameras, two monitors, and an extra light

With the two inputs ready, I opened up OBS Studio, which is free software used by a ton of live streamers. It’s very flexible, and in this case I used it to set up “scenes” that I sent to Teams as a virtual camera. Basically, this allows me to both pre-stage scenes (kind of like sets that I would use) as well as do some on-the-fly production (more on this later).

Screenshot of the OBS studio virtual camera output selector

I had a few go-to scenes:

  • Solo Matt A - single video feed from the Elgato FaceCam. This is the “real me,” live, with my name at the bottom of the screen.
  • Solo Matt GPT - single video feed from the Surface camera. This is “Matt GPT,” live, with his name at the bottom of the screen.
  • Cohosts Matt A - live video feed of “real me” from the Elgato FaceCam, with a pre-recorded “Matt GPT” loop.
  • Cohosts Matt GPT - a pre-recording of “real me” with a live feed of “Matt GPT” on the Surface camera.
  • GPT - a base layer of a looping video, with several other hidden videos on top.
OBS studio view with a listing of scenes, sources, and a preview of the scene


During the event, I made Matt GPT come alive two different ways. The most common one I did was to adjust the GPT scene on the fly, making other videos appear over the top of the looping Matt GPT.

A screenshot of OBS with a box around the "thumbs up" layer, which resulted in the preview pane showing a video with my thumbs up

I had a few videos of different actions prepped

  • Friendly wave
  • Enthusiastic double thumbs
  • Thinking face
  • Uncertain/no

In my host script, I prompted Matt GPT with questions, then triggered the video of the response I wanted. After they played, they would auto-hide and the audience would just see the baseline Matt GPT loop.

As part of the final arc, I changed roles, playing Matt GPT live, with a video of regular me looping. This included a minor costume change (different shirt) to help sell the surprise.


All in all it was a long, but fun, day. I love the topic (as regular readers know 😀) but for whatever reason this extra bit of performance really gets me excited.