How to use RTMP-In with Microsoft Teams meetings

One of new Teams Premium features that is coming to Microsoft Teams is RTMP-In capability. This means that you can bring in content that is produced with external encoder, like studio equipment or OBS Studio for example, directly to Microsoft Teams meeting. This allows creation of custom meeting layouts and features to make events have a more finished and professional style. At easiest it is also the best way to present a video in Teams meeting. In many ways, what RTMP-In accomplishes has been available via Virtual Cams but it might have not been the easiest to set up and has required a lot from the hardware. RTMP is a stream, so you can do the producing on another computer or even produce the meeting in a different location.

Note: there is also RTMP-In that you can use with Teams Live Events. This article focuses on Teams meetings, not Live Events.


  • Microsoft Teams Premium (trial available) licensed for the organizing user
  • Meeting policy for the user has AllowedStreamingMediaInput set to RTMP. Set this with PowerShell.
Set-CsTeamsMeetingPolicy -Identity Global -AllowedStreamingMediaInput "RTMP"

In the PowerShell I have set RTMP allowed for everyone using Global meeting policy.

It is easy to check if RTMP is set with Get-CsTeamsMeetingPolicy -Identity Global | fl AllowedStreamingMediaInput

Once the policy is set and rolled to user(s) you can configure RTMP-In to meetings.

Configure RTMP-In with Teams meetings

You can find RTMP-In section in Meeting Options. When you turn it on and save new options you can find Server Ingest URL and Stream key you can copy. You can also use Generate new key (and save meeting options after this selection) to reset the key, in case you think it might have been revealed to wrong audience, or you want to make sure you are the only one having the right key.

That is all you need to configure in Teams for RTMP-In. The question is how you use that input. In my example I created a simple demo scene in OBS Studio where I configured streaming keys. This depends on what kind of external encoder / production hardware/software you are using to create the stream. It is just like you would be creating a stream that is broadcast to LinkedIn, YouTube, Twitter, Twitch, DPlay or any other platform that accepts RTMP-In as a source.

On OBS you can go to Settings and set Stream service to custom and paste in Server URL and Stream Key from Microsoft Teams Meeting options.

After that you can Start Streaming in your software.

Using RTMP-In during Teams meetings

When you start the streaming and Teams meeting is open you can see a new participant joining the meeting with camera on. It is named Custom RTMP and it broadcasts video & audio from your stream as a camera.

The beauty is that you can now use this “virtual attendee” as any other person in the Meeting. You can bring it onto screen (Spotlight) when you want it to be shown for everyone.

In this example you can see my (rather unstylish) demo scene. I have included there just some text, Sulava logo and Metaverse One 2023 video.

Yes, it is a very robust and demo screen here. The point is showing that you can have your custom stage set up. This one includes a video, logo and some text.

You can bring the RTMP-In on screen and take it off screen as you need.

When you stop streaming in your encoder the “Custom RTMP” disappears.

Of course this was, in a way, possible earlier as well, if you were to use OBS Studio (for example) and output it to a virtual camera to bring in the content to Teams. The difference with RTMP-In is that you can separate your production computer fully from the one you use for Teams meeting and people managing the production don’t interfere with your presentation or facilitation – and you can have your camera on as well even if you do this with a single computer. The RTMP-In looks like a virtual cam for sure, but there are benefits using this over virtual cam.

Best practices and findings

There are a few best practices I have discovered already this feature.

  • As it is just like any other camera in the meeting, make sure you Spotlight/Bring it on screen to expand it automatically fully to everyone. This means you should take other content off. For example stop sharing or presenting. Otherwise the RTMP-In isn’t seen to attendees in a way you think and want.

  • RTMP-In is the best way to show video to meeting attendees. Especially if the video is any longer. The next best option has been PowerPoint Live but it has the issue being left out of recording.
  • Consider when you want to use RTMP-In, because you need to stop sharing the content and spotlight the stream manually. This needs some attention and that manual tasks. Train your team, so the experience is great for attendees.
  • You have a custom event (town hall, for example) and has possibly a studio where people are in. You can create your custom virtual stage and define everything in the production / encoder tool. Teams is there for attendee engagement.
  • You want to customize your meeting with more branding and theme, have custom stage where you can switch between videos, content and speakers. Using external tool does break you away from limitations that you currently have with the meeting stage in Microsoft Teams.

Yes, RTMP-In is easy to set up, but to really utilize it’s potential you need to plan the event in a new way. Personally I am very excited about this feature since it opens a lot of possibilities how to make webinars, town halls and events much more versatile, personalized and professional. This comes with a cost of building the experience taking more time, skills and planning than just a plain meeting. You can use separate computers for different tasks, thus distributing the load also.

I know I will be using RTMP-In for videos. It is rather easy to do with OBS Studio running on the computer at the same time and make sure everyone has a quality video experience. And it does reduce size of my PowerPoints also. 😀

Yes, organizing user needs to have Teams Premium license.

Leave a Reply

Fill in your details below or click an icon to log in: 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

This site uses Akismet to reduce spam. Learn how your comment data is processed.