RtspClientSharp 1.2.8
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package RtspClientSharp --version 1.2.8
NuGet\Install-Package RtspClientSharp -Version 1.2.8
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="RtspClientSharp" Version="1.2.8" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RtspClientSharp --version 1.2.8
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: RtspClientSharp, 1.2.8"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install RtspClientSharp as a Cake Addin #addin nuget:?package=RtspClientSharp&version=1.2.8 // Install RtspClientSharp as a Cake Tool #tool nuget:?package=RtspClientSharp&version=1.2.8
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Features
- Supported transport protocols: TCP/HTTP/UDP
- Supported media codecs: H.264/MJPEG/AAC/G711A/G711U/PCM/G726
- No external dependencies, pure C# code
- Asynchronous nature with cancellation tokens support
- Designed to be fast and scaleable
- Low GC pressure during receive stage (when RTSP session is established); low amount of freezes under high load
Using RtspClientSharp
Something like this:
var serverUri = new Uri("rtsp://192.168.1.77:554/ucast/11");
var credentials = new NetworkCredential("admin", "123456");
var connectionParameters = new ConnectionParameters(serverUri, credentials);
connectionParameters.RtpTransport = RtpTransportProtocol.TCP;
using(var rtspClient = new RtspClient(connectionParameters))
{
rtspClient.FrameReceived += (sender, frame) =>
{
//process (e.g. decode/save to file) encoded frame here or
//make deep copy to use it later because frame buffer (see FrameSegment property) will be reused by client
switch (frame)
{
case RawH264IFrame h264IFrame:
case RawH264PFrame h264PFrame:
case RawJpegFrame jpegFrame:
case RawAACFrame aacFrame:
case RawG711AFrame g711AFrame:
case RawG711UFrame g711UFrame:
case RawPCMFrame pcmFrame:
case RawG726Frame g726Frame:
}
}
await rtspClient.ConnectAsync(token);
await rtspClient.ReceiveAsync(token);
}
You could find more complex samples here (e.g. simple RTSP player with full frame decoding and rendering processes): https://github.com/BogdanovKirill/RtspClientSharp/tree/master/Examples
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on RtspClientSharp:
Repository | Stars |
---|---|
SteeBono/airplayreceiver
Open source implementation of AirPlay 2 Mirroring / Audio protocol.
|
Version | Downloads | Last updated |
---|---|---|
1.3.3 | 97,591 | 10/4/2019 |
1.3.2 | 1,052 | 9/17/2019 |
1.3.1 | 2,073 | 8/5/2019 |
1.3.0 | 931 | 7/20/2019 |
1.2.8 | 3,628 | 5/28/2019 |
1.2.7 | 1,184 | 4/13/2019 |
1.2.6 | 1,106 | 3/7/2019 |
1.2.5 | 812 | 2/24/2019 |
1.2.4 | 2,110 | 10/24/2018 |
1.2.3 | 1,261 | 8/31/2018 |
1.2.2 | 882 | 8/18/2018 |
1.2.1 | 857 | 8/15/2018 |
1.2.0 | 957 | 8/15/2018 |
1.1.0 | 967 | 8/11/2018 |
1.0.0 | 1,332 | 7/23/2018 |
-Wrong SDP answer with extra space in media line should be also parsed correctly
https://github.com/BogdanovKirill/RtspClientSharp/issues/33