SoundScript 13.0.0
dotnet add package SoundScript --version 13.0.0
NuGet\Install-Package SoundScript -Version 13.0.0
<PackageReference Include="SoundScript" Version="13.0.0" />
<PackageVersion Include="SoundScript" Version="13.0.0" />
<PackageReference Include="SoundScript" />
paket add SoundScript --version 13.0.0
#r "nuget: SoundScript, 13.0.0"
#:package SoundScript@13.0.0
#addin nuget:?package=SoundScript&version=13.0.0
#tool nuget:?package=SoundScript&version=13.0.0
SoundScript
SoundScript is a deterministic programming language and .NET toolkit for programmable audio and media: MIDI, WAV, vocals, synchronized visuals, and experimental audio-to-code transcription. Use it for application cues, sonification, or reproducible media fixtures.
Install
Requires .NET 10. Once this release is published to nuget.org:
dotnet add package SoundScript --version 13.0.0
Before publication, build and install from a local feed.
Five-minute example
using SoundScript;
var cue = SoundScriptEngine.Compile("tempo 120 track cue { instrument piano mf C4 e E4 e G4 q }");
File.WriteAllBytes("success.wav", cue.RenderWave());
File.WriteAllBytes("success.mid", cue.RenderMidi());
Programmatic rendering
var compilation = SoundScriptEngine.CompileFile("notification.ss");
foreach (var warning in compilation.Warnings) Console.WriteLine(warning);
File.WriteAllBytes("notification.wav", compilation.RenderStereoWave());
CompileFile resolves imports and relative sample paths. In-memory Compile rejects
imports. Backend validation runs when rendering; MIDI explicitly rejects unpitched
hit events. Identical source, assets, options, and engine version produce repeatable
audio; compressed-media decoding and experimental transcription have separate limits.
Transcription
using SoundScript.Transcription;
var audio = PcmWaveInput.Decode(File.ReadAllBytes("melody.wav"));
var result = await new TranscriptionEngine().TranscribeAsync(audio);
Console.WriteLine(result.Suitability);
var source = new SoundScriptOutput().Source(result.Score);
File.WriteAllText("melody.ss", source);
Start with a short, clean solo melody. Review suitability and diagnostics before using the result. Melody extraction, piano polyphony, mixed roles, and percussion are experimental. Mixed roles are symbolic estimates, not isolated stems; reconstruction consistency is not ground-truth accuracy. Compressed desktop input and WebM export require a separate FFmpeg installation.
CLI relationship and links
This library complements the existing soundscript CLI; it neither installs nor
changes CLI commands. The package contains the reusable libraries, XML
IntelliSense documentation for the bundled public assemblies, and the vocal
corpus, without CLI or Playground binaries.
- Quick start
- .NET API guide
- Full documentation
- Application samples
- Transcription limits
- Playground
- GitHub
- Project website
Engine: MIT. Included wordbank corpus: CC0. Font license notices are in licenses/.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- HarfBuzzSharp.NativeAssets.Linux (>= 8.3.1.5)
- Melanchall.DryWetMidi (>= 8.0.3)
- OggVorbisEncoder (>= 1.2.2)
- SkiaSharp (>= 3.119.4)
- SkiaSharp.HarfBuzz (>= 3.119.4)
- SkiaSharp.NativeAssets.Linux (>= 3.119.4)
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 |
|---|---|---|
| 13.0.0 | 34 | 9/17/2026 |