Skip to content

Configurable Output#

Using MixSim can generate personalize data. Depending on the different tasks, the custom output can be achieved using the output_members.

Supported output members#

During the simulation, without affecting the simulation speed, MixSim will collect the supported output members as much as possible.

Based on the effectiveness, the number of output members can be stored in the disks, which is optimized by the arrow system.

Method Description
mix_y signals mixed by dry clean source signals.
mix_y_rvb signals mixed by reverberant clean signals.
mix_y_rvb_direct_path like mix_y_rvb, but only with direct-path part.
mix_y_rvb_early like mix_y_rvb, but only with early-path part.
mix_y_rvb_late like mix_y_rvb, but only with late-path part.
n_mix_y mix_y with noise added.
n_mix_y_rvb mix_y_rvb with noise added.
n_mix_y_rir_direct_path mix_y_rvb_direct_path with noise added.
n_mix_y_rir_early mix_y_rvb_early with noise added.
n_mix_y_rir_late mix_y_rvb_late with noise added.
s_<id>_y dry clean signals with the id <id>. If the number of speakers is 1, you can use s_y. The same applies below
s_<id>_y_rvb reverberant clean signals with the id <id>.
s_<id>_y_rvb_direct_path like s_<id>_y_rvb, but only use direct-path part.
s_<id>_y_rvb_early like s_<id>_y_rvb, but only use early reflection.
s_<id>_y_rvb_late like s_<id>_y_rvb, but only use late reflection.
s_<id>_rvb_peak_idx peak index of room impulse response of the source with the id <id>.
s_<id>_y_vad voice activity detection result of the source with the id <id>.
s_<id>_vad_label voice activity detection label (0 or 1) of the source with the id <id>.
s_<id>_transcript transcript of the source with the id <id>.
s_<id>_traj trajectory of the source with the id <id>.
s_<id>_doa direction of arrival of the source with the id <id> (in degree).
s_<id>_timestamps timestamps of the signal with the id <id>.
n_y noise signals.
n_gain noise gain.

In your config file, you can specify the output_members. For instance, if you want to do single-channel speech enhancement without reverberation, you may specify the following members:

from mixsim import ConfigurableWriter
output_members=["n_mix_y", "s_y", "n_y"]

For multichannel two-speaker localization/tracking with additive noise and reverberation, you may:

output_members=["n_mix_y_rvb", "s_1_traj", "s_2_traj", "s_1_doa", "s_2_doa", "n_y"]

For multichannel single-speaker speech recognition with noise and reverberation, you may:

output_members=["n_mix_y_rvb", "s_y", "s_transcript"]

For multichannel dereverberation with noise and reverberation, you may:

output_members=["n_mix_y_rvb", "s_y_rvb_direct_path"]

Then, you can initialize the configurable writer:

writer = ConfigurableWriter(output_members=output_members)

ConfigurableWriter #

Write simulated data to disk based on the given configuration.

__init__ #

close #

write #