Spaces:
Sleeping
Sleeping
Upload praat script for single channel extraction
Browse files- extractSingleChannel.praat +77 -0
extractSingleChannel.praat
ADDED
|
@@ -0,0 +1,77 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
#determine praat version
|
| 2 |
+
ver1$ = left$(praatVersion$, (rindex(praatVersion$, ".")-1));
|
| 3 |
+
ver1 = 'ver1$'
|
| 4 |
+
if ver1 < 5.2
|
| 5 |
+
exit Please download a more recent version of Praat
|
| 6 |
+
endif
|
| 7 |
+
|
| 8 |
+
if ver1 == 5.2
|
| 9 |
+
ver2$ = right$(praatVersion$, length(praatVersion$) - (rindex(praatVersion$, ".")));
|
| 10 |
+
ver2 = 'ver2$'
|
| 11 |
+
if ver2 < 4
|
| 12 |
+
exit Please download a more recent version of Praat (minor)
|
| 13 |
+
endif
|
| 14 |
+
endif
|
| 15 |
+
|
| 16 |
+
beginPause: "Instructions"
|
| 17 |
+
comment: "Select which channel to extract. 1 = left, 2 = right"
|
| 18 |
+
positive: "Channel", 1
|
| 19 |
+
comment: "Click 'Next' to continue"
|
| 20 |
+
clicked = endPause("Next", 1);
|
| 21 |
+
|
| 22 |
+
|
| 23 |
+
beginPause ("Instructions")
|
| 24 |
+
comment ("Please select input folder.")
|
| 25 |
+
comment ("Click 'Next' to continue")
|
| 26 |
+
clicked = endPause("Next", 1);
|
| 27 |
+
|
| 28 |
+
#wavefile folder path
|
| 29 |
+
directory$ = chooseDirectory$ ("Select folder containing wave files")
|
| 30 |
+
if directory$ == ""
|
| 31 |
+
exit Script exited. You did not select a folder.
|
| 32 |
+
else
|
| 33 |
+
directory$ = directory$ + "/";
|
| 34 |
+
endif
|
| 35 |
+
|
| 36 |
+
beginPause ("Instructions")
|
| 37 |
+
comment ("Please select output folder.")
|
| 38 |
+
comment ("Click 'Next' to continue")
|
| 39 |
+
clicked = endPause("Next", 1);
|
| 40 |
+
|
| 41 |
+
#wavefile folder path
|
| 42 |
+
output_directory$ = chooseDirectory$ ("Select folder to save extracted wave files")
|
| 43 |
+
if output_directory$ == ""
|
| 44 |
+
exit Script exited. You did not select a folder.
|
| 45 |
+
else
|
| 46 |
+
output_directory$ = output_directory$ + "/";
|
| 47 |
+
endif
|
| 48 |
+
|
| 49 |
+
|
| 50 |
+
Create Strings as file list... list 'directory$'
|
| 51 |
+
numberOfFiles = Get number of strings
|
| 52 |
+
|
| 53 |
+
clearinfo
|
| 54 |
+
printline Processing...
|
| 55 |
+
for ifile to numberOfFiles
|
| 56 |
+
|
| 57 |
+
select Strings list
|
| 58 |
+
fileName$ = Get string... ifile
|
| 59 |
+
Read from file... 'directory$''fileName$'
|
| 60 |
+
|
| 61 |
+
Extract one channel... channel
|
| 62 |
+
|
| 63 |
+
Write to WAV file... 'output_directory$''fileName$'
|
| 64 |
+
|
| 65 |
+
select all
|
| 66 |
+
minus Strings list
|
| 67 |
+
Remove
|
| 68 |
+
|
| 69 |
+
endfor
|
| 70 |
+
|
| 71 |
+
select all
|
| 72 |
+
Remove
|
| 73 |
+
|
| 74 |
+
clearinfo
|
| 75 |
+
printline Done
|
| 76 |
+
|
| 77 |
+
|