StreamRipper 2.1.9

dotnet add package StreamRipper --version 2.1.9
NuGet\Install-Package StreamRipper -Version 2.1.9
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="StreamRipper" Version="2.1.9" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add StreamRipper --version 2.1.9
#r "nuget: StreamRipper, 2.1.9"
#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 StreamRipper as a Cake Addin
#addin nuget:?package=StreamRipper&version=2.1.9

// Install StreamRipper as a Cake Tool
#tool nuget:?package=StreamRipper&version=2.1.9

Stream-ripper

Stream Ripper library, convert an online radio (IceCast stream) to your music library!

NuGet Status

var streamRipper = StreamRipperFactory.New(new StreamRipperOptions
{
    Url = new Uri("http://stream.radiojavan.com/radiojavan"),
    Logger = serviceProvider.GetService<ILogger<IStreamRipper>>(),
    MaxBufferSize = 10 * 1000000    // stop when buffer size passes 10 megabytes
});

// The recommended way is to have an async event handlers
streamRipper.SongChangedEventHandlers += async (_, arg) =>
{
    // Create filename from SongInfo
    var filename = $"{arg.SongInfo.SongMetadata}";

    // Save the stream to file
    await arg.SongInfo.Stream.ToFileStream($@"\Music\ripped\{filename}.mp3");
};

// Async start
streamRipper.Start();

// To Stop
// streamRipper.Dispose();

Events:

  • OnMetadataChanged: will be invoked when metadata changes
  • OnStreamUpdate: will be invoked when new byte[] gets downloaded
  • OnStreamStarted: will be invoked when stream starts
  • OnStreamEnded: will be invoked when stream ends
  • OnSongChanged: will be invoked when new SongInfo is ready

Notes:

  • All event handler will be automatically wrapped as async event handler by PlugginManager
Product 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 is compatible.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
2.1.9 619 10/1/2020
2.1.8 495 5/10/2020
2.1.7 430 4/22/2020
2.1.6 439 4/21/2020
2.1.5 449 4/19/2020
2.1.4 442 4/19/2020
2.1.3 671 4/4/2020
2.1.2 444 4/4/2020
2.1.1 481 4/4/2020
2.1.0 477 4/4/2020
2.0.8 457 4/2/2020
2.0.7 523 3/29/2020
2.0.6 557 3/29/2020
2.0.5 453 3/29/2020
2.0.4 590 2/22/2020
2.0.3 568 2/22/2020
2.0.2 577 1/11/2020
2.0.1 700 1/7/2019
2.0.0 845 8/5/2018
1.2.5 828 8/3/2018
1.2.4 798 8/3/2018
1.2.3 844 8/3/2018
1.2.2 820 8/3/2018
1.2.1 820 8/3/2018
1.1.1 822 8/2/2018
1.1.0 828 8/2/2018
1.0.0 780 7/31/2018

Better class names overall