Deepgram 1.0.0-beta2

This is a prerelease version of Deepgram.
There is a newer version of this package available.
See the version list below for details.
dotnet add package Deepgram --version 1.0.0-beta2
NuGet\Install-Package Deepgram -Version 1.0.0-beta2
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="Deepgram" Version="1.0.0-beta2" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Deepgram --version 1.0.0-beta2
#r "nuget: Deepgram, 1.0.0-beta2"
#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 Deepgram as a Cake Addin
#addin nuget:?package=Deepgram&version=1.0.0-beta2&prerelease

// Install Deepgram as a Cake Tool
#tool nuget:?package=Deepgram&version=1.0.0-beta2&prerelease

Deepgram .NET SDK

Nuget Build Status Contributor Covenant

Installation

To install the C# client library using NuGet:

Run the following command from your terminal in your projects directory:

dotnet add package Deepgram

Targeted Frameworks

  • 6.0.0
  • 5.0.0
  • .NET Core 3.1

Configuration

To setup the configuration of the Deepgram Client you can do one of the following:

  • Create a Deepgram Client instance and pass in credentials in the constructor.
var credentials = new Credentials(YOUR_DEEPGRAM_API_KEY);
var deepgramClient = new DeepgramClient(credentials);

Or

  • Provide the Deepgram API key and optional API Url in appsettings.json:
{
  "appSettings": {
    "Deepgram.Api.Key": "YOUR_DEEPGRAM_API_KEY",
    "Deepgram.Api.Uri": "https://api.deepgram.com"
  }
}

Note: In the event multiple configuration files are found, the order of precedence is as follows:

* ```appsettings.json``` which overrides
* ```settings.json```

Or

  • Access the Configuration instance and set the appropriate key in your code for example:
Configuration.Instance.Settings["appSettings:Deepgram.Api.Key"] = "YOUR_DEEPGRAM_API_KEY";
Configuration.Instance.Settings["appSettings:Deepgram.Api.Uri"] = "https://api.deepgram.com";

Logging

The Library uses Microsoft.Extensions.Logging to preform all of it's logging tasks. To configure logging for you app simply create a new ILoggerFactory and call the LogProvider.SetLogFactory() method to tell the Deepgram library how to log. For example, to log to the console with serilog you can do the following:

using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Configuration;
using Deepgram.Logger;
using Serilog;

var log = new LoggerConfiguration()
    .MinimumLevel.Debug()
    .WriteTo.Console(outputTemplate: "{Timestamp:HH:mm} [{Level}]: {Message}\n")
    .CreateLogger();
var factory = new LoggerFactory();
factory.AddSerilog(log);
LogProvider.SetLogFactory(factory);

Examples

Sending a Remote File for Transcription

var credentials = new Credentials(DEEPGRAM_API_KEY);

var deepgramClient = new DeepgramClient(credentials);

var response = await deepgramClient.Transcription.GetPrerecordedTranscriptionAsync(
    new Deepgram.Transcription.UrlSource("https://static.deepgram.com/examples/Bueller-Life-moves-pretty-fast.wav"),
    new Deepgram.Transcription.PrerecordedTranscriptionOptions()
    {
        Punctuate = true
    });

Sending a Local File for Transcription

var credentials = new Credentials(DEEPGRAM_API_KEY);

var deepgramClient = new DeepgramClient(credentials);

using (FileStream fs = File.OpenRead("path\\to\\file"))
{
    var response = await deepgramClient.Transcription.GetPrerecordedTranscriptionAsync(
        new Deepgram.Transcription.StreamSource(
            fs,
            "audio/wav"),
        new Deepgram.Transcription.PrerecordedTranscriptionOptions()
        {
            Punctuate = true
        });
}

Development and Contributing

Interested in contributing? We ❤️ pull requests!

To make sure our community is safe for all, be sure to review and agree to our Code of Conduct. Then see the Contribution guidelines for more information.

Getting Help

We love to hear from you so if you have questions, comments or find a bug in the project, let us know! You can either:

Further Reading

Check out the Developer Documentation at https://developers.deepgram.com/

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 is compatible.  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 netcoreapp3.1 is compatible. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on Deepgram:

Package Downloads
Fsel.Core

Fsel Core Package

fAI

Fred's experimentation with AI

GitHub repositories (1)

Showing the top 1 popular GitHub repositories that depend on Deepgram:

Repository Stars
VRCWizard/TTS-Voice-Wizard
Speech to Text to Speech. Song now playing. Sends text as OSC messages to VRChat to display on avatar. (STTTS) (Speech to TTS) (VRC STT System) (VTuber TTS)
Version Downloads Last updated
3.4.2 709 3/29/2024
3.4.1 3,973 2/13/2024
3.4.0 19,090 9/26/2023
3.3.0 1,264 9/14/2023
3.2.0 650 8/28/2023
3.1.0 1,961 8/14/2023
2.2.0 7,331 7/20/2023
2.1.0 2,942 6/30/2023
2.0.0 6,713 4/12/2023
1.13.0 1,307 1/17/2023
1.12.0 766 12/13/2022
1.11.1 560 11/30/2022
1.10.0 2,241 11/15/2022
1.9.0 833 10/30/2022
1.8.0 697 10/6/2022
1.7.1 680 10/1/2022
1.7.0 656 9/27/2022
1.6.0 674 9/20/2022
1.5.1 694 9/2/2022
1.4.1 713 8/17/2022
1.4.0 736 7/14/2022
1.3.1 688 7/1/2022
1.2.0 791 4/20/2022
1.1.0 1,014 2/4/2022
1.0.0 548 12/20/2021
1.0.0-beta2 573 11/22/2021
1.0.0-beta1 650 11/21/2021