code: def main():
      args = sys.argv
      in_wav_file = args[1]
      in_lab_file = args[2]
      out_lab_file = args[3]
  
      # in_wav_file open
      wav_form, fs = librosa.core.load(
          in_wav_file
      )  # wave form, sampling frequency
      dur = len(wav_form) / fs  # duration
  
      # extract voice_part_ana from wav_file
      voice_part_ana = (
          librosa.effects.split(
              wav_form, top_db=40, frame_length=2048, hop_length=512
          )
          / fs
      )
  
      # in_lab_file open & get voice_part_old from lab_file
      voice_part_old, utt_array = get_vp(in_lab_file)
  
      # connect voice_part_ana to ignore short silent
      voice_part_tmp = ignore_sil(voice_part_ana, sec=0.01)
  
      # separate voice_part based on lab
      voice_part_tmp = separete_vp(voice_part_old, voice_part_tmp)
  
      # create voice_part_new by merging voice_parts and skipping non_voice_part
      voice_part_new = create_vp(voice_part_old, voice_part_tmp)
  
      # compare voice_part_old and voice_part_new (for debug)
      # compare_vp(voice_part_old, voice_part_new)
  
      # write duration of new_lab
      write_new_lab(out_lab_file, dur, voice_part_new, utt_array)
  
file_path: espnet/egs/blizzard17/tts1/local/make_lab_wo_sil.py
imports: import csv
  import sys
  import librosa
  import numpy
label_desc: Use image node_id 7 for calling a global function with example usage: main() without return types