Controlling for errant pitch values
I'm running a study where we are auto segmenting two halves of a recorded session by playing a C7 on a piano (much higher than any pitch sung), and then running a separate statistical analysis of pitch on the two halves. We are running into an issue where the To Pitch (cc) function returns errant high pitch measurements from the singing voice. So rather than returning the piano C7 as this high pitch moment, it grabs an incorrect part of the singing.
This is the code we're using:
To Pitch (cc): 0, 75, 15, "no", 0.03, 0.70, 0.01, 0.35, 0.14, 2200
I've tried it with "yes" for the very accurate option as well.
This is the portion of the wave file that Praat returned as containing the highest pitch (it's capturing periodicity from the strong higher formants in the singing voice).
I do not yet understand the nuance of the settings in the To Pitch (cc) function to make it "less" sensitive to this kind of sound. Would someone mind taking a look and making a recommendation (or suggesting readings) that would eliminate these errant measures?
Ian
On 8 Mar 2023, at 20:06, Ian Howell via groups.io <Ian.howell@...> wrote:
Hi friends,
I'm running a study where we are auto segmenting two halves of a recorded session by playing a C7 on a piano (much higher than any pitch sung), and then running a separate statistical analysis of pitch on the two halves. We are running into an issue where the To Pitch (cc) function returns errant high pitch measurements from the singing voice. So rather than returning the piano C7 as this high pitch moment, it grabs an incorrect part of the singing.
This is the code we're using:
To Pitch (cc): 0, 75, 15, "no", 0.03, 0.70, 0.01, 0.35, 0.14, 2200
<003_AMAB_1ipodedit_part.wav>
I've tried it with "yes" for the very accurate option as well.
This is the portion of the wave file that Praat returned as containing the highest pitch (it's capturing periodicity from the strong higher formants in the singing voice).
I do not yet understand the nuance of the settings in the To Pitch (cc) function to make it "less" sensitive to this kind of sound. Would someone mind taking a look and making a recommendation (or suggesting readings) that would eliminate these errant measures?
Ian
Spuistraat 134, room 632
1012VB Amsterdam, The Netherlands
http://www.fon.hum.uva.nl/paul/
On Mar 8, 2023, at 3:16 PM, Boersma Paul via groups.io <p.p.g.boersma@...> wrote:These are not "errant". The algorithm looks for periodicity, not for vocal folds. If you specify that the algorithm can look as high as 2200 Hz for periodicity, it is likely to find reverberating formants.
On 8 Mar 2023, at 20:06, Ian Howell via groups.io <Ian.howell@...> wrote:
Hi friends,
I'm running a study where we are auto segmenting two halves of a recorded session by playing a C7 on a piano (much higher than any pitch sung), and then running a separate statistical analysis of pitch on the two halves. We are running into an issue where the To Pitch (cc) function returns errant high pitch measurements from the singing voice. So rather than returning the piano C7 as this high pitch moment, it grabs an incorrect part of the singing.
This is the code we're using:
To Pitch (cc): 0, 75, 15, "no", 0.03, 0.70, 0.01, 0.35, 0.14, 2200
<003_AMAB_1ipodedit_part.wav>
I've tried it with "yes" for the very accurate option as well.
This is the portion of the wave file that Praat returned as containing the highest pitch (it's capturing periodicity from the strong higher formants in the singing voice).
I do not yet understand the nuance of the settings in the To Pitch (cc) function to make it "less" sensitive to this kind of sound. Would someone mind taking a look and making a recommendation (or suggesting readings) that would eliminate these errant measures?
Ian
_____
Paul BoersmaProfessor of Phonetic SciencesUniversity of Amsterdam
Spuistraat 134, room 632
1012VB Amsterdam, The Netherlands
http://www.fon.hum.uva.nl/paul/
On 8 Mar 2023, at 21:43, Ian Howell via groups.io <Ian.howell@...> wrote:
Hi Paul, can you recommend a workflow that would capture that high piano pitch but not identify higher formants as fundamentals? Unfortunately we don’t have EGG signals, and I can’t reason my way through it.
On Mar 8, 2023, at 3:16 PM, Boersma Paul via groups.io <p.p.g.boersma@...> wrote:
These are not "errant". The algorithm looks for periodicity, not for vocal folds. If you specify that the algorithm can look as high as 2200 Hz for periodicity, it is likely to find reverberating formants.
On 8 Mar 2023, at 20:06, Ian Howell via groups.io <Ian.howell@...> wrote:
Hi friends,
I'm running a study where we are auto segmenting two halves of a recorded session by playing a C7 on a piano (much higher than any pitch sung), and then running a separate statistical analysis of pitch on the two halves. We are running into an issue where the To Pitch (cc) function returns errant high pitch measurements from the singing voice. So rather than returning the piano C7 as this high pitch moment, it grabs an incorrect part of the singing.
This is the code we're using:
To Pitch (cc): 0, 75, 15, "no", 0.03, 0.70, 0.01, 0.35, 0.14, 2200
<003_AMAB_1ipodedit_part.wav>
I've tried it with "yes" for the very accurate option as well.
This is the portion of the wave file that Praat returned as containing the highest pitch (it's capturing periodicity from the strong higher formants in the singing voice).
I do not yet understand the nuance of the settings in the To Pitch (cc) function to make it "less" sensitive to this kind of sound. Would someone mind taking a look and making a recommendation (or suggesting readings) that would eliminate these errant measures?
Ian
_____
Paul BoersmaProfessor of Phonetic SciencesUniversity of Amsterdam
Spuistraat 134, room 632
1012VB Amsterdam, The Netherlands
http://www.fon.hum.uva.nl/paul/
Spuistraat 134, room 632
1012VB Amsterdam, The Netherlands
http://www.fon.hum.uva.nl/paul/
some off-the-cuff ideas:
- instead of looking for the highest pitch to be your first half / second half cut point, look for a pitch that is very close to 2093 Hz and has some expected duration and some expected amount of (near) silence on either side
- manually inserting one boundary into a file and saving the textgrid is pretty fast. I don't know how many files you're dealing with here, but the manual method might be faster than writing and debugging the code to automate it.