/WebRTCme

A cross-platform framework for adding WebRTC support to .NET MAUI, Blazor, and Desktop applications by using a single unified .NET/C# API.

Primary LanguageC#MIT LicenseMIT

10 Feb 24 - V2.0.0 HAS BEEN RELEASED

This release brings major upgrades with breaking changes, including platform and tool changes. For further details and the project's history, please refer to the previous README.

Added:

  • .NET MAUI
  • .NET 8

Dropped:

  • Xamarin
  • .NET 5, 6, and 7

The Xamarin code has been left in the repo but excluded from the solution file.

Special thanks and credits to Gøran Yri for his major contributions to .NET MAUI porting.

Currently, MediaSoup is only working with Blazor. There are issues on both Android and iOS that I hope to fix soon.

alt text

There are three NuGet packages available for different use cases:

WebRTCme.Bindings: NuGet

WebRTCme: NuGet

WebRTCme.Middleware: NuGet

Use case 1 - Native WebRTC Bindings

  • Use the Bindings NuGet package
  • Does not include a cross-platform API
  • Only provides native platform-specific APIs
  • For desktop, use SIPSorcery directly

Use case 2 - Cross-platform library

  • Use the WebRTCme NuGet package
  • This package includes the bindings and provides a cross-platform API
  • You can create your own middleware or app on top of this library

Use case 3 - Middleware

  • Use the Middleware NuGet package
  • This package contains the bindings, core library, media elements and signaling server clients
  • You can directly create your app on top of this middleware