diff --git a/CONTEXT.md b/CONTEXT.md new file mode 100644 index 0000000..f7036b6 --- /dev/null +++ b/CONTEXT.md @@ -0,0 +1,34 @@ +# WebRtcNet Domain Glossary + +This file is a glossary of canonical terms used in the WebRtcNet codebase. +It contains **no implementation details** — only term definitions. + +--- + +## Terms + +### Host +A peer that initiates a WebRTC session by opening a TCP listener and waiting for +an incoming connection before creating an SDP offer. + +### Guest +A peer that joins a WebRTC session by dialling the Host's IP address and port, +then responding to the Host's SDP offer with an SDP answer. + +### Signaling +The out-of-band exchange of SDP offers/answers and ICE candidates between two +peers. In this repository the term refers specifically to message exchange; it +does not imply a server. BasicVideoChat uses direct TCP signaling. + +### SignalingMessage +A newline-delimited JSON envelope carrying one of: `Offer`, `Answer`, +`Candidate`, or `Bye`. + +### BasicVideoChat +The first example application. Demonstrates a peer-to-peer audio/video call over +a direct TCP signaling channel, targeting both .NET 10 and .NET Framework 4.8. + +### WpfVideoRenderer +A prototype `VideoRenderer` implementation backed by a WPF `WriteableBitmap`. +Lives in `examples/BasicVideoChat` until a proper `WebRtcNet.Wpf` renderer +assembly is created (see issue #36). diff --git a/WebRtcNet.slnx b/WebRtcNet.slnx index dcd05ba..a0e3a7f 100644 --- a/WebRtcNet.slnx +++ b/WebRtcNet.slnx @@ -25,6 +25,9 @@ + + + diff --git a/examples/BasicVideoChat/App.xaml b/examples/BasicVideoChat/App.xaml new file mode 100644 index 0000000..a49332c --- /dev/null +++ b/examples/BasicVideoChat/App.xaml @@ -0,0 +1,7 @@ + + + + diff --git a/examples/BasicVideoChat/App.xaml.cs b/examples/BasicVideoChat/App.xaml.cs new file mode 100644 index 0000000..eaa6ad8 --- /dev/null +++ b/examples/BasicVideoChat/App.xaml.cs @@ -0,0 +1,7 @@ +using System.Windows; + +namespace BasicVideoChat; + +public partial class App : Application +{ +} diff --git a/examples/BasicVideoChat/BasicVideoChat.csproj b/examples/BasicVideoChat/BasicVideoChat.csproj new file mode 100644 index 0000000..2de9440 --- /dev/null +++ b/examples/BasicVideoChat/BasicVideoChat.csproj @@ -0,0 +1,22 @@ + + + WinExe + net10.0-windows;net48 + true + Debug;Release + x64;x86;ARM64 + latest + enable + BasicVideoChat + A basic WebRTC peer-to-peer video chat example using WebRtcNet + + + + + + + + + + + diff --git a/examples/BasicVideoChat/MainWindow.xaml b/examples/BasicVideoChat/MainWindow.xaml new file mode 100644 index 0000000..5d80e69 --- /dev/null +++ b/examples/BasicVideoChat/MainWindow.xaml @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + +