14a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project/*---------------------------------------------------------------------------* 24a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * ann_util.h * 34a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * * 44a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * Copyright 2007, 2008 Nuance Communciations, Inc. * 54a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * * 64a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the 'License'); * 74a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * you may not use this file except in compliance with the License. * 84a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * * 94a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * You may obtain a copy of the License at * 104a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * http://www.apache.org/licenses/LICENSE-2.0 * 114a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * * 124a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * Unless required by applicable law or agreed to in writing, software * 134a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * distributed under the License is distributed on an 'AS IS' BASIS, * 144a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * 154a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * See the License for the specific language governing permissions and * 164a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * limitations under the License. * 174a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * * 184a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project *---------------------------------------------------------------------------*/ 194a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 204a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project#ifndef _ANNOTATE_UTITITIES_INCLUDED_ 214a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project#define _ANNOTATE_UTITITIES_INCLUDED_ 224a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 234a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 244a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project#include "utteranc.h" 254a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project#include "c42mul.h" 264a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 274a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project#ifdef SET_RCSID 284a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectstatic const char col_util_h[] = "$Id: ann_util.h,v 1.1.10.4 2007/08/31 17:44:52 dahan Exp $"; 294a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project#endif 304a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project#define TCP_BLOCK_SIZE 10 314a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 324a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project/** 334a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project * @todo document 344a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project */ 354a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projecttypedef struct 364a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project{ 374a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project annotate *tcp; 384a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project int numWords; 394a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project int NumFrames; 404a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project int snr; 414a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project} 424a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectannotate_info; 434a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 444a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 454a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectannotate_info* allocate_annotation(void); 464a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectvoid annotation_create_tcp_entry(annotate_info* hAnnotation , 474a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project char* label); 484a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 494a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectvoid free_annotation(annotate_info* hAnnotation); 504a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 514a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 524a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 534a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint annotation_delete_segment(annotate_info* hAnnotation, int id); 544a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint annotation_delete_leading_segments(annotate_info* hAnnotation, 554a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project int num_to_delete, int num_to_keep, int min_length, int max_length, 564a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project int min_sil_dur); 574a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectvoid annotation_delete_segment_info(annotate_info* hAnnotation); 584a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectvoid annotation_decorate_labels(annotate_info* hAnnotation, char *label); 594a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint annotation_segment_utterance(annotate_info* hAnnotation, 604a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project utterance_info* utt, 614a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project preprocessed *prep, 624a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project char *label, 634a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project int *has_trailing_silence); 644a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 654a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint annotation_add_utt_segment_to_acoustic(model_info *acc, 664a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project preprocessed *prep, 674a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project utterance_info* utt, 684a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project annotate_info* hAnnotation, 694a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project char* base_label, 704a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project int do_backup); 714a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint annotation_from_voicing(annotate_info * hAnnotation, 724a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project utterance_info * utt, 734a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project preprocessed * prep); 744a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint annotation_compare(annotate_info *test_annotation, 754a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project annotate_info *ref_annotation); 764a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectvoid save_annotations(annotate_info* hAnnotation, char* FileName); 774a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint annotation_from_results(annotate_info *hAnnotation, srec *rec); 784a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectvoid annotation_get_data(annotate_info* hAnnotation, int id, 794a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project int* begin, int* end, char* buff, int buffLen); 804a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint construct_syntax_for_annotation(syntax_info *rule, annotate_info* hAnnotation); 814a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project 824a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint find_beep_in_utterance(annotate_info *hAnnotation, utterance_info *utt, 834a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project utterance_info *beep_utt, preprocessed *prep, char *label); 844a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Projectint detect_beep_by_shape(preprocessed *prep, utterance_info *utt1, 854a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project utterance_info *utt2, int *start, int *end); 864a68b3365c8c50aa93505e99ead2565ab73dcdb0The Android Open Source Project#endif 87