Extract Fundamental voice Frequency of MISC Channel file

Hi, At the moment I try to extract frequency information from a misc file, recorded in a speech perturbation Experiment. I would like to see the response to perturbation in voice frequency.

I imagine to see a change in the time-frequency composition of the averaged misc channel already. However, I would need to see the time course of frequency change (e.g. on a cent scale).

  1. question: Is it possible to convert frequencies in Hz to the Cent scale in Brainstorm itself?
  2. question: Can you extract a time course of fundamental frequency change ?

I am thankfull for any advice and/or idea concerning this topic!

Hello,

question: Is it possible to convert frequencies in Hz to the Cent scale in Brainstorm itself?

Brainstorm does not offer any tool to change the frequency scales. But it consists only in changing the actual frequency values to obtain a different display, this is something you can maybe do with a Matlab script directly on the time-frequency files.

  • Load the file (with Matlab’s load() function or right-click > File > Export to Matlab),
  • Modify the Freqs and/or TF fields
  • Save it back on the hard drive (Matlab’s save() function or right-click on the exported file > File > Import from Matlab)

Documentation describing the timefreq file structure: https://neuroimage.usc.edu/brainstorm/Tutorials/TimeFrequency#On_the_hard_drive
General information about scripting in Brainstorm: https://neuroimage.usc.edu/brainstorm/Tutorials/Scripting

question: Can you extract a time course of fundamental frequency change ?

I am not very familiar with what this means: extracting time sample by time sample the frequency that has the maximum power, and representing this as time series?
Brainstorm cannot do anything like this easily, it would require you write a process (= plugin) that loads a time-frequency file, and saves a “matrix” file. Not that difficult to do, but requires some coding. Once written, this can be distributed as part of the Brainstorm if you’d like. If you are interested in doing investing time coding this properly in Brainstorm, you can find help in this tutorial:
https://neuroimage.usc.edu/brainstorm/Tutorials/TutUserProcess

Otherwise, you can simply read the contents of the time-frequency file, then do the computation and display with your own Matlab scripts…