Giter VIP home page Giter VIP logo

dawrpc's Introduction

DAW Discord Rich Presence

This is a small C# application that supports showing what you're making on your Digital Audio Workstation (DAW) in your Discord account using Discord Rich Presence.

It will show as the following:

Discord Presence image

VirusTotal Scanning
1 detection from MaxSecure, is this false positive?

List of DAW currently supported

  • FL Studio 11 or later
  • Ableton Live 9 Intro or later (doesn't support Lite, Beta and Trial version)
  • REAPER
  • Bitwig Studio (fxxk Bitwig, you used more CPU and RAM than Ableton)
  • Studio One
  • LMMS

Installation

Download the latest release version here, extract it and run the DAWRPC.exe executable file. Open any supported DAW and enjoy the result!

How does it work?

This app uses the Process class to get the current running DAW process(es) and reads the project name from the process(es) window title.

Dependencies used

Editing the source code

Download the latest source code from this repository above and open DAWRPC.sln in your Visual Studio that supports .NET Framework 4. I used Visual Studio 2010 to make this application (i know, this is an old version but my computer can't run a higher one), and I suggest that you should use it (although i know that no one uses it anymore) to edit my application.

You can add a new DAW support using this method:

  • Step 1: Go to your Discord Developer Portal and create a new application with the DAW name you want to support.
  • Step 2: Go to your new application you have just created and click Rich Presence -> App Assets.
  • Step 3: Add a new Rich Presence Asset Image with the DAW icon. Set the Asset Image Name into icon.
  • Step 4: Open the DAWRPC.sln project file and open the Form1.cs file in your Visual Studio.
  • Step 5: Above the // End DAW Process Variables line, add the following code line:
var YourDAWName = Process.GetProcessesByName("YourDAWProcessName");

with YourDAWName as the DAW name and YourDAWProcessName as your DAW Process Name in Task Manager (for example, FL64 is the Process Name of FL Studio, and Ableton Live 10 Suite is the Process Name of Ableton Live 10 Suite).

  • Step 6: Above the // End DAW Process Information Grabbing line, add the following code lines:
else if (YourDAWName.Length != 0)
{
	DAWName.Text = "Your DAW Name";
	if (SomeConditions)
	{
		ProjectOpening.Text = SomeScripts();
	}
	else
	{
		ProjectOpening.Text = "None";
	}
	CPUUsage.Text = GetCPUUsage(YourDAWName[0]) + "%";
	RAMUsage.Text = GetRAMUsage(YourDAWName[0]);
	clientID = "YourClientID";
	versionText = YourDAWName[0].Modules[0].FileVersionInfo.ProductVersion.ToString();
}

with YourDAWName as the DAW variable you declared in the above step, SomeConditions as some conditions to check if the project name is other than Untitled, SomeScripts() is some commands to get the project title from the process, and YourClientID as the Client ID of the application created in Step 1.

You can see an example in the source code repository.

  • Step 7: Run the application and test it. After that, you can send me a Pull Request with your new added DAW supporting in the source code.

Contact the developer

You can contact the developer by using these social networks:

dawrpc's People

Contributors

serena1432 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.