# How to make log-Mel spectrogram?

**URL:** https://discourse.julialang.org/t/how-to-make-log-mel-spectrogram/97927
**Category:** General Usage
**Tags:** question, machine-learning, dsp, audio
**Created:** [April 26, 2023, 4:08am UTC](https://discourse.julialang.org/t/how-to-make-log-mel-spectrogram/97927 "2023-04-26T04:08:02Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![jling](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jling/32/212909_2.png) [@jling](https://discourse.julialang.org/u/jling)
#### Post date: [April 26, 2023, 4:08am UTC](https://discourse.julialang.org/t/how-to-make-log-mel-spectrogram/97927/1 "2023-04-26T04:08:03Z")

</div>

The eventual goal is to make a pure Julia Whisper inference, but got stopped before 1st step.

Most ingredients of the spectrogram is simply a combination of hanging window and stft:

> <https://github.com/openai/whisper/blob/c09a7ae299c4c34c5839a76380ae407e7d785914/whisper/audio.py#L137-L141>

in Julia, we can find them in DSP.jl([Periodograms - periodogram estimation · DSP.jl](https://docs.juliadsp.org/latest/periodograms/#DSP.Periodograms.spectrogram))

but where can I find the mel filterbank matrix? which is some audio specific scaling model

---

<div class="post-metadata">

### Author: ![rafael.guerra](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rafael.guerra/32/216610_2.png) [@rafael.guerra](https://discourse.julialang.org/u/rafael.guerra)
#### Post date: [April 26, 2023, 7:11am UTC](https://discourse.julialang.org/t/how-to-make-log-mel-spectrogram/97927/2 "2023-04-26T07:11:46Z")

</div>

To make a log-Mel spectrogram from a DSP spectrogram, I believe you need to transform the frequency axis according to the [Mel-scale formula](https://en.wikipedia.org/wiki/Mel_scale) and display the amplitudes in dB.

Linking also this [“related” thread](https://discourse.julialang.org/t/plotting-a-spectrogram-using-dsp-jl/58013).

---

<div class="post-metadata">

### Author: ![pywugate](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/pywugate/32/52011_2.png) [@pywugate](https://discourse.julialang.org/u/pywugate)
#### Post date: [June 19, 2024, 4:09pm UTC](https://discourse.julialang.org/t/how-to-make-log-mel-spectrogram/97927/3 "2024-06-19T16:09:05Z")

</div>

You can also take a look of [MFCC.jl](https://github.com/JuliaDSP/MFCC.jl) , [MusicProcessing.jl](https://github.com/JuliaMusic/MusicProcessing.jl) and [SpeechFeatures.jl](https://github.com/lucasondel/SpeechFeatures.jl)
