voxforge.org
VoxForge Dev
Show
Ignore:
Timestamp:
05/30/08 22:25:39 (6 months ago)
Author:
kmaclean
Message:

AudioSegmentation scripts - snapshot

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • Trunk/Scripts/Audio_scripts/AudioSegmentation/AudioBook/Dictionary.pm

    r2600 r2601  
    192192        my $missingWordList = $self->_getMissingWordList($missing_words); 
    193193        my %prompts; 
     194        my @missingWordsPrompts;         
     195        my @missingWordsValidated; 
     196        print "\nValidate Alternate Pronunciations:\n";  
     197        print   "----------------------------------\n";  
    194198        open(PROMPTS,"$prompts") or confess ("cannot open $prompts file"); 
    195         open(MISSINGWORDPROMPTS,">AudioBook/interim_files/missingWordsFolder/missingWordPrompts") or confess ("cannot open AudioBook/interim_files/wav/missingWordPrompts file");                
    196         open(MISSINGWORDSVAL,">AudioBook/interim_files/missingWords_validated") or confess ("cannot open AudioBook/interim_files/missingWords_validated file");          
    197199        while (my $line = <PROMPTS>) {  
    198200                chomp $line;     
     
    203205                                my $wavfilename = $promptID . "\.wav"; 
    204206                                copy("AudioBook/interim_files/wav/$wavfilename","AudioBook/interim_files/missingWordsFolder/$wavfilename");                              
    205                                 print MISSINGWORDPROMPTS "$word:$promptID,@line\n"; 
     207                                push (@missingWordsPrompts,"$word:$promptID @line\n"); 
     208                                print "\."; 
    206209                                my @phoneList = $self->_forceAlignPromptLine($altDict, $word,$promptID,\@line); # force align entire prompt line 
    207                                 print MISSINGWORDSVAL "$word [$word] @phoneList\n"
     210                                push (@missingWordsValidated,"$word [$word] @phoneList\n")
    208211                        } 
    209212                } 
    210213        } 
    211214        close PROMPTS; 
    212         close MISSINGWORDPROMPTS; 
     215         
     216        open(MISSINGWORDPROMPTS,">AudioBook/interim_files/missingWords_prompts") or confess ("cannot open AudioBook/interim_files/missingWords_prompts file");           
     217        foreach my $line (sort(@missingWordsPrompts)) { 
     218                print MISSINGWORDPROMPTS $line; 
     219        } 
     220        close MISSINGWORDPROMPTS;        
     221                 
     222        open(MISSINGWORDSVAL,">AudioBook/interim_files/missingWords_validated") or confess ("cannot open AudioBook/interim_files/missingWords_validated file");          
     223        foreach my $line (sort(@missingWordsValidated)) { 
     224                print MISSINGWORDSVAL $line; 
     225        } 
     226        close MISSINGWORDSVAL;   
     227                 
     228        print   "----------------------------------\n";  
    213229} 
    214230 
     
    228244        open(ALIGNED_OUT,"$aligned_out") or confess ("cannot open $aligned_out file"); 
    229245        my (@phoneList,$gatherPhones); 
    230         print "_forceAlignPromptLine:word=$word\n"; 
     246        #print "_forceAlignPromptLine:word=$word\n"; 
    231247        while (my $line = <ALIGNED_OUT>) { 
    232248                my @line = split(/\s/, $line); 
    233                 print "_forceAlignPromptLine:line:@line\n"; 
    234249                my($startTime,$stopTime, $phone, $probability, $recword) = @line; 
    235                 print "_forceAlignPromptLine:$startTime,$stopTime, $phone, $probability, $recword\n"; 
    236250                if (defined($recword)) { 
    237251                        if ($recword eq $word) { 
     
    241255                        } 
    242256                }  
    243  
    244257                if ($gatherPhones) { 
    245258                        if ($phone ne "sp"){