def _sfs2label(txtlines, output_path): logger = logging.getLogger('mtts') sfs_path = os.path.join(output_path, 'sfs') label_path = os.path.join(output_path, 'labels') os.system('mkdir -p %s/labels' % output_path) sfs_list = [x.replace('.sfs', '') for x in os.listdir(sfs_path)] process_num = 0 for line in txtlines: numstr, txt = line.split() if numstr in sfs_list: process_num += 1 logger.info('processing %s, file %s' % (process_num, numstr)) sfs_file = os.path.join(sfs_path, numstr + '.sfs') label_file = os.path.join(label_path, numstr + '.lab') try: label_line = txt2label(txt, sfsfile=sfs_file) except Exception: logger.error( 'Error at %s, please check your txt %s' % (numstr, txt)) else: with open(label_file, 'w') as oid: for item in label_line: oid.write(item + '\n')
def _sfs2label(txtlines, wav_dir_path, output_path): sfs_path = os.path.join(output_path, 'sfs') label_path = os.path.join(output_path, 'labels') os.system('mkdir -p %s/labels' % output_path) sfs_list = [x.replace('.sfs', '') for x in os.listdir(sfs_path)] process_num = 0 for line in txtlines: numstr, txt = line.split() if numstr in sfs_list: process_num += 1 print('processing %s, file %s' % (process_num, numstr)) sfs_file = os.path.join(sfs_path, numstr + '.sfs') label_file = os.path.join(label_path, numstr + '.lab') try: label_line = txt2label(txt, sfsfile=sfs_file) except AssertionError: print('AssertionError at %s' % numstr) with open(os.path.join(output_path, 'error.log'), 'a+') as fid: fid.write('AssertionError at %s \n' % numstr) else: with open(label_file, 'w') as oid: for item in label_line: oid.write(item + '\n')