Coder Social home page Coder Social logo

home's Introduction

ManagedBass

(c) Mathew Sachin
Free Open-Source Cross-Platform .Net Wrapper for Un4seen Bass and its AddOns.

Bass and its Add-Ons can be downloaded at http://un4seen.com/
ManagedBass is targeted for Any CPU, but bass Libraries(.dll/.so/.dylib/.a) are separate for x86, x64, ARM, etc.
Download the versions you need.

See the Sample Repositories for examples.

ManagedBass is now provided as a set of packages split per AddOn.

Getting Started

  • Install the NuGet package
Install-Package ManagedBass
  • Download the BASS libraries from http://un4seen.com and place them in Build Output Directory.

See https://github.com/ManagedBass/Home for more info.

Changelog

v3.1+ (August 2021)

  • Incorporated all changes and contributions since March 2020.
  • Automated build and deployment of Nuget packages for future releases.
  • Switched to using GitHub Releases. Checkout the latest releases here for more information.

v3.0 (March 2020)

  • No separate library for iOS. The main library can be used on iOS with DllMap (see app.config file).

v2.0 (November 2017)

  • Moved from PCL to .Net Standard 1.4.
  • Removed Load and Unload methods in support of being cross-platform.
  • Removed DynamicLibrary class.

v1.0 (January 2017)

  • Split NuGet packages per AddOn.
  • No dependency on ManagedBass.PInvoke.
  • Using C# 7 on Visual Studio 2017.

home's People

Contributors

mathewsachin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

home's Issues

How to Get Channel Info From Recording Input?

Hey there! I had a question on using ManagedBass to get spectrum data from a recording input.

I believe I'm already successfully able to enumerate and set the recording device, now I just need to set up some kind of loop where I read the recording input, and then save the amplitude values for low/med/high frequencies to an array.

Also, there's potential that the recording input would be a stereo source.

How to implement a 3-band equalizer?

So I tried this:

 public void TurnOnEQ()
        {
            ManagedBass.Fx.PeakEQParameters eq = new PeakEQParameters();
            Bass.ChannelSetFX(handle, EffectType.PeakEQ, 0);
            eq.fGain = 0.0f; // the initial gain (here 0dB)

            // now for each band do the following
            eq.lBand = 0; // 1st band
            eq.fCenter = 60.0f; // 60Hz
            Bass.FXSetParameters(handle, eq);

            eq.lBand = 1; // 2nd band
            eq.fCenter = 170.0f; // 170Hz
            Bass.FXSetParameters(handle, eq);
        }
        public void UpdateEQ(int band, float gain)
        {
            ManagedBass.Fx.PeakEQParameters eq = new PeakEQParameters();

            // first get the EQ values of the selected band!
            eq.lBand = band;
            var result = Bass.FXGetParameters(handle, eq);

            // and now apply the new gain
            eq.fGain = gain;
           var result2 = Bass.FXSetParameters(handle, eq);
        }

This example I ported from a code posted on Un4seen forum by radio42. But the values of both result and result2 are always false and aside from that, nothing happens to the audio. I tried using PeakEQ from ManagedBass.Fx directly but I got this error:

Exception thrown: 'System.TypeLoadException'

Just wanted to ask, how to correctly implement an Equalizer?

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.