RASMUS/Finnish-ASR-Canary-v2
02.2k
1data_simulator:2 manifest_filepath: ??? # Manifest file with paths to single speaker audio files3 4 sr: 16000 # Sampling rate of the input audio files from the manifest5 random_seed: 426 multiprocessing_chunksize: 10000 # Max number that multiprocessing can handle at once7 8 session_config:9 num_speakers: 4 # Number of unique speakers per multispeaker audio session10 num_sessions: 60 # Number of sessions to simulate11 session_length: 600 # Length of each simulated multispeaker audio session (seconds)12 13 session_params:14 max_audio_read_sec: 20.0 # The maximum audio length in second when loading an audio file. The bigger the number, the slower the reading speed. Should be greater than 2.5 second.15 sentence_length_params: # k,p values for a negative_binomial distribution which is sampled to get the sentence length (in number of words)16 - 0.4 # k (Number of successes until the experiment is stopped) value must be a positive integer.17 - 0.05 # p (Success probability) must be in the range (0, 1]. The average sentence length will be k*(1-p)/p18 dominance_var: 0.11 # Variance in speaker dominance (where each speaker's dominance is sampled from a normal distribution centered on 1/`num_speakers`, and then the dominance values are together normalized to 1)19 min_dominance: 0.05 # Minimum percentage of speaking time per speaker (note that this can cause the dominance of the other speakers to be slightly reduced)20 turn_prob: 0.875 # Probability of switching speakers after each utterance21 min_turn_prob: 0.5 # Minimum turn probability when enforce mode is True to prevent from making excessive session length22 mean_silence: 0.15 # Mean proportion of silence to speaking time in the audio session. Should be in range [0, 1).23 mean_silence_var: 0.01 # var for mean silence in all audio sessions. This value should be 0 <= mean_silence_var < mean_silence * (1 - mean_silence)24 per_silence_var: 900 # var for per silence in each session, set large values to de-correlate silence lengths with the latest speech segment lengths25 per_silence_min: 0.0 # minimum per silence duration in seconds26 per_silence_max: -1 # maximum per silence duration in seconds, set -1 for no maximum27 mean_overlap: 0.1 # Mean proportion of overlap in the overall non-silence duration. Should be in range [0, 1) and recommend [0, 0.15] range.28 mean_overlap_var: 0.01 # var for mean overlap in all audio sessions. This value should be 0 <= mean_overlap_var < mean_overlap * (1 - mean_overlap)29 per_overlap_var: 900 # var for per overlap in each session, set large values to de-correlate silence lengths with the latest speech segment lengths30 per_overlap_min: 0.0 # minimum per overlap duration in seconds31 per_overlap_max: -1 # maximum per overlap duration in seconds, set -1 for no maximum32 start_window: true # Window the start of sentences to smooth the audio signal (and remove silence at the start of the clip)33 window_type: hamming # Type of windowing used when segmenting utterances ("hamming", "hann", "cosine")34 window_size: 0.05 # Length of window at the start or the end of segmented utterance (seconds)35 start_buffer: 0.1 # Buffer of silence before the start of the sentence (to avoid cutting off speech or starting abruptly)36 split_buffer: 0.1 # Split RTTM labels if greater than twice this amount of silence (to avoid long gaps between utterances as being labelled as speech)37 release_buffer: 0.1 # Buffer before window at end of sentence (to avoid cutting off speech or ending abruptly)38 normalize: true # Normalize speaker volumes 39 normalization_type: equal # Normalizing speakers ("equal" - same volume per speaker, "var" - variable volume per speaker)40 normalization_var: 0.1 # Variance in speaker volume (sample from standard deviation centered at 1)41 min_volume: 0.75 # Minimum speaker volume (only used when variable normalization is used)42 max_volume: 1.25 # Maximum speaker volume (only used when variable normalization is used)43 end_buffer: 0.5 # Buffer at the end of the session to leave blank44 45 outputs:46 output_dir: ??? # Output directory for audio sessions and corresponding label files47 output_filename: multispeaker_session # Output filename for the wav and rttm files48 overwrite_output: true # If true, delete the output directory if it exists49 output_precision: 3 # Number of decimal places in output files50 51 background_noise: # If bg noise is used, a noise source position must be passed for RIR mode52 add_bg: false # Add ambient background noise if true53 background_manifest: null # Path to background noise manifest file54 num_noise_files: 10 # Number of randomly chosen noise source files to be potentially included in one session55 snr: 60 # SNR for background noise (using average speaker power), set `snr_min` and `snr_max` values to enable random SNR56 snr_min: null # Min random SNR for background noise (using average speaker power), set `null` to use fixed SNR57 snr_max: null # Max random SNR for background noise (using average speaker power), set `null` to use fixed SNR58 59 # Segment and session augmentations. Available augmentations are in nemo/collections/asr/parts/preprocessing/perturb.py60 # See tutorial at https://github.com/NVIDIA/NeMo/blob/main/tutorials/asr/Online_Noise_Augmentation.ipynb61 # Note that ImpulsePerturbation, NoisePerturbation, RirAndNoisePerturbation and other perturbations that uses `collections.ASRAudioText`62 # cannot use multi-proccessing in simulation, due to non-pickable errors.63 segment_augmentor:64 add_seg_aug: False # Set True to enable augmentation on each speech segment65 augmentor:66 gain: # Randomly perturb the gain of each speech segment67 prob: 0.5 # Probability of applying gain augmentation68 min_gain_dbfs: -10.0 # Min dB level to add69 max_gain_dbfs: 10.0 # Max dB level to add70 71 session_augmentor:72 add_sess_aug: False # Set True to enable audio augmentation on the whole session73 augmentor:74 white_noise: # Add random white noise to the whole session75 prob: 1.0 # Probability of adding white noise76 min_level: -90 # Min level of noise loudness (dB)77 max_level: -46 # Max level of noise loudness (dB)78 79 speaker_enforcement:80 enforce_num_speakers: true # Enforce that all requested speakers are present in the output wav file81 enforce_time: # Percentage of the way through the audio session that enforcement mode is triggered (sampled between time 1 and 2)82 - 0.2583 - 0.7584 85 segment_manifest: # Parameters for regenerating the segment manifest file 86 window: 0.5 # Window length for segmentation 87 shift: 0.25 # Shift length for segmentation88 step_count: 50 # Number of the unit segments you want to create per utterance89 deci: 3 # Rounding decimals for segment manifest file90 91 rir_generation: # Using synthetic RIR augmentation92 use_rir: false # Whether to generate synthetic RIR93 toolkit: 'pyroomacoustics' # Which toolkit to use ("pyroomacoustics", "gpuRIR")94 room_config:95 room_sz: # Size of the shoebox room environment (1d array for specific, 2d array for random range to be sampled from)96 - - 297 - 398 - - 299 - 3100 - - 2101 - 3102 pos_src: # Positions of the speakers in the simulated room environment (2d array for specific, 3d array for random ranges to be sampled from)103 - - - 0.5104 - 1.5105 - - 0.5106 - 1.5107 - - 0.5108 - 1.5109 - - - 0.5110 - 1.5111 - - 0.5112 - 1.5113 - - 0.5114 - 1.5115 - - - 0.5116 - 1.5117 - - 0.5118 - 1.5119 - - 0.5120 - 1.5121 - - - 0.5122 - 1.5123 - - 0.5124 - 1.5125 - - 0.5126 - 1.5127 noise_src_pos: # Position in room for the ambient background noise source128 - 1.5129 - 1.5130 - 2131 mic_config:132 num_channels: 2 # Number of output audio channels133 pos_rcv: # Microphone positions in the simulated room environment (1d/2d array for specific, 2d/3d array for range assuming num_channels is 1/2+)134 - - - 0.5135 - 1.5136 - - 0.5137 - 1.5138 - - 0.5139 - 1.5140 - - - 0.5141 - 1.5142 - - 0.5143 - 1.5144 - - 0.5145 - 1.5146 orV_rcv: null # Microphone orientations (needed for non-omnidirectional microphones)147 mic_pattern: omni # Microphone type ("omni" - omnidirectional) - currently only omnidirectional microphones are supported for pyroomacoustics148 149 absorbtion_params: # Note: only `T60` is used for pyroomacoustics simulations150 abs_weights: # Absorption coefficient ratios for each surface 151 - 0.9152 - 0.9153 - 0.9154 - 0.9155 - 0.9156 - 0.9157 T60: 0.1 # Room reverberation time (`T60` is the time it takes for the RIR to decay by 60DB)158 att_diff: 15.0 # Starting attenuation (if this is different than att_max, the diffuse reverberation model is used by gpuRIR)159 att_max: 60.0 # End attenuation when using the diffuse reverberation model (gpuRIR)160 