From 7c0cf00fd265f7a37b3632efc0b029b3f9a13289 Mon Sep 17 00:00:00 2001 From: Rob van Son Date: Fri, 17 Mar 2017 11:45:20 +0100 Subject: [PATCH] Adapted test and debugging voiceconvertsion --- TestVoiceConversions.praat | 35 ++++++++++++++++++++++++++--------- VoiceConversion.praat | 24 ++++++++++++++++++++---- 2 files changed, 46 insertions(+), 13 deletions(-) diff --git a/TestVoiceConversions.praat b/TestVoiceConversions.praat index 6d87c45..4855638 100644 --- a/TestVoiceConversions.praat +++ b/TestVoiceConversions.praat @@ -35,43 +35,60 @@ createDirectory: "Test" # Pitch +appendInfoLine: "Pitch" runScript: "VoiceConversion.praat", "aa.wav", 70, 0, 0, 0, 0, 0, 0, 0, 15, 0 Save as WAV file: "Test/aa_Pitch_70.wav" select all Remove +runScript: "VoiceConversion.praat", "ookhetweer.wav", 70, 0, 0, 0, 0, 0, 0, 0, 15, 0 +Save as WAV file: "Test/ookhetweer_Pitch_70.wav" +select all +Remove + # Pitch_SD -runScript: "VoiceConversion.praat", "aa.wav", 0, 15, 0, 0, 0, 0, 0, 0, 15, 0 -Save as WAV file: "Test/aa_Pitch_SD_15.wav" +appendInfoLine: "Pitch_SD" +runScript: "VoiceConversion.praat", "ookhetweer.wav", 0, 15, 0, 0, 0, 0, 0, 0, 15, 0 +Save as WAV file: "Test/ookhetweer_Pitch_SD_15.wav" select all Remove # Duration -runScript: "VoiceConversion.praat", "aa.wav", 0, 0, 1.3, 0, 0, 0, 0, 0, 15, 0 -Save as WAV file: "Test/aa_Duration_1.3.wav" +appendInfoLine: "Duration" +runScript: "VoiceConversion.praat", "ookhetweer.wav", 0, 0, 1.3, 0, 0, 0, 0, 0, 15, 0 +Save as WAV file: "Test/ookhetweer_Duration_1.3.wav" select all Remove # HNR -runScript: "VoiceConversion.praat", "aa.wav", 0, 0, 0, 5, 0, 0, 0, 0, 15, 0 +appendInfoLine: "HNR" +runScript: "VoiceConversion.praat", "aa.wav", 0, 0, 0, 5, 0, 0, 0, 0, 15, 0 Save as WAV file: "Test/aa_HNR_5.wav" select all Remove # Bubbles, Bubbles_SNR -runScript: "VoiceConversion.praat", "aa.wav", 0, 0, 0, 0, 5, 15, 0, 0, 15, 0 -Save as WAV file: "Test/aa_Bubbles_5_15.wav" +appendInfoLine: "Bubbles_SNR" +runScript: "VoiceConversion.praat", "aa.wav", 0, 0, 0, 0, 1, -10, 0, 0, 15, 0 +Save as WAV file: "Test/aa_Bubbles_1_-5.wav" +select all +Remove + +runScript: "VoiceConversion.praat", "ookhetweer.wav", 0, 0, 0, 0, 1, -10, 0, 0, 15, 0 +Save as WAV file: "Test/ookhetweer_Bubbles_1_-5.wav" select all Remove # Jitter -runScript: "VoiceConversion.praat", "aa.wav", 0, 0, 0, 0, 0, 0, 5, 0, 15, 0 +appendInfoLine: "Jitter" +runScript: "VoiceConversion.praat", "aa.wav", 0, 0, 0, 0, 0, 0, 5, 0, 15, 0 Save as WAV file: "Test/aa_Jitter_5.wav" select all Remove # Shimmer -runScript: "VoiceConversion.praat", "aa.wav", 0, 0, 0, 0, 0, 0, 0, 10, 15, 0 +appendInfoLine: "Shimmer" +runScript: "VoiceConversion.praat", "aa.wav", 0, 0, 0, 0, 0, 0, 0, 10, 15, 0 Save as WAV file: "Test/aa_Shimmer_10.wav" select all Remove diff --git a/VoiceConversion.praat b/VoiceConversion.praat index b8c5455..ddb36af 100644 --- a/VoiceConversion.praat +++ b/VoiceConversion.praat @@ -7,7 +7,7 @@ form Select audio real Pitch_SD 15 (= % of mean) real Duration 1.3 (= mult. factor) real HNR 5 (= dB SNR) - real Bubbles 1 (= fraction) + real Bubbles 1 (= fraction, inactive) real Bubbles_SNR 10 (= dB SNR) real Jitter 5 (= %) real Shimmer 10 (= %) @@ -143,6 +143,8 @@ call convert_speechOverlapAndAdd .recordedSound .thresshold jitter shimmer pitc procedure convert_speechOverlapAndAdd .recordedSound .thresshold .jitter .shimmer .pitch .pitch_SD .durationFactor .newHNR .bubble_fraction .bubble_snr call change_pitch_duration .recordedSound .pitch .pitch_SD .durationFactor .newPitchSound = selected("Sound") + .duration = Get total duration + .sampleFreq = Get sampling frequency call extractVoicingParameters .newPitchSound .thresshold .recordedTextGrid = selected("TextGrid") @@ -156,7 +158,8 @@ procedure convert_speechOverlapAndAdd .recordedSound .thresshold .jitter .shimme call create_additive_noise .newPitchSound .recordedTextGrid .additiveNoise = selected("Sound") else - .additiveNoise = -1 + select .newPitchSound + .additiveNoise = Create Sound from formula: "WhiteNoise", 1, 0, .duration, .sampleFreq, "0" endif #call add_bubbles '.newPitchSound' '.bubble_fraction' '.bubble_snr' '.recordedTextGrid' 'bubblesAudioName$' @@ -170,7 +173,7 @@ procedure convert_speechOverlapAndAdd .recordedSound .thresshold .jitter .shimme .newSound = selected("Sound") # Create bubbles from source - call add_source_bubbles '.newPitchSound' '.recordedPulses' 0.7 10 'te_source_bubbles_name$' + call add_source_bubbles '.newPitchSound' '.recordedPulses' .bubble_fraction .bubble_snr 'te_source_bubbles_name$' .additiveBubbles = selected("Sound") # Debug tests @@ -201,7 +204,7 @@ procedure convert_speechOverlapAndAdd .recordedSound .thresshold .jitter .shimme selectObject: .old_amplitude, .pointP, .new_amplitude Remove endif - + # Add noise to result call add_sounds .newSound .additiveNoise .newHNR .resultNoise = selected("Sound") @@ -406,10 +409,20 @@ endproc procedure add_sounds .sound1 .sound2 .s1_s2ratioDB .tmp1 = -1 .tmp2 = -1 + .int1 = 0 + .int2 = 0 + + if .sound1 <= 0 and .sound2 <= 0 + exitScript: "add_sounds: No sounds to add" + endif + if .sound1 > 0 select .sound1 .tmp1 = Copy: "Sound1" .int1 = Get intensity (dB) + if .int1 = undefined + .int1 = 0 + endif .duration = Get total duration .sampleFreq = Get sampling frequency endif @@ -418,6 +431,9 @@ procedure add_sounds .sound1 .sound2 .s1_s2ratioDB select .sound2 .tmp2 = Copy: "Sound2" .int2 = Get intensity (dB) + if .int2 = undefined + .int2 = 0 + endif .duration = Get total duration .sampleFreq = Get sampling frequency endif -- 2.11.4.GIT