Comments (7)
I confused myself, was mixing up the barkBands field that stores the bark bands with the number of bark bands that should be computed.
from meyda.
I'm still confused lol
There's numberOfMFCCCoefficents
, which is the number of mfcc coefficients that should be calculated.
There's melBands
, which is the number of mel bands calculated. It's unclear to me if it's useful for this to be separate from numberOfMFCCCoefficients
.
There's barkScale
, which is unrelated to either of these two, and is related to loudness.
There is no barkBands
.
#971 adds numberOfBarkBands
to let the user specify how many bark bands to use.
So the question stands: why would we set numberOfMFCCCoefficients
and melBands
separately?
I'm mainly asking this so I can document it, I'm sure there's a reason.
from meyda.
I'm no expert but if you need 40 MFCC coefficients you need to start with at least 40 bark or melbands. MFCC is effectively a form of dimension reduction and the amount of information you start with before the liftering etc. will effect the result.
from meyda.
Yes, that’s true - but I think right now all we use it for is the mfcc feature so I’m not sure why we would ever need to calculate more mel bands than we would then need to use in that mfcc calculation.
from meyda.
Because it changes the MFCC result.
For example, doing some rudimentary tests in Max:
For a given a spectral frame the values are different, albeit slightly. I think it would be sensible to set a high default (40 bands) and to then have it adjustable. I know in my use case where I use Meyda for pedagogical purposes not having the technology assume what I want is useful and sensible defaults make it approachable for those who may be still learning.
from meyda.
Because it changes the MFCC result.
For example, doing some rudimentary tests in Max:
![]()
For a given a spectral frame the values are different, albeit slightly. I think it would be sensible to set a high default (40 bands) and to then have it adjustable. I know in my use case where I use Meyda for pedagogical purposes not having the technology assume what I want is useful and sensible defaults make it approachable for those who may be still learning.
To clarify: the MFCC on the left is using 40 melbands and the one on the right is doing 20 melbands before producing 13 MFCC coefficients in either case.
from meyda.
Aha! Thanks, that fully clarified it :)
from meyda.
Related Issues (20)
- Expose ESModule HOT 1
- RMS-levels = 0.3 HOT 7
- Some file sizes will crash CLI version HOT 6
- Flux using imag component? HOT 6
- Some feature extractors not working in CLI version HOT 8
- Wrong Logic for HopSize? HOT 2
- Fluid Corpus Manipulation HOT 3
- Power spectrum for spectral descriptors HOT 4
- DTMF detection HOT 1
- Is mel-spectrum available? HOT 5
- Last line in csv HOT 3
- Hop size and weird result in WebAudio HOT 9
- Two features in WebAudio gets values out of range HOT 1
- Extracting MFCCs on Mobile Devices in React Native HOT 7
- How to get features in typescript without casting? HOT 2
- Running meyda in p5js for real time audio streaming HOT 2
- Can we compute a mel-scaled spectrogram? HOT 5
- I want to import a part of music data. HOT 6
- sample page not working HOT 13
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from meyda.