pyFDN.extract_build#

pyFDN.extract_build(model)[source]#

Extract a complete FDNBuild from a named FLAMO model graph.

The graph must be one pyFDN.assemble_fdn_core() would build: leaves named input_gain and output_gain, plus either mixing_matrix or the standard recursion feedback leaf fB. The delay can be named delay or be the graph’s only delay module. The sample rate is read from the delay module and is required: a graph that does not expose fs is malformed and raises ValueError.

All three filter hooks – post_delay, post_matrix, post_output – are read when present. Because a build is baked, a hook must hold something that bakes: a per-channel gain or an SOS bank. A hook holding anything else – a nested allpass core, a cascade of several modules – is refused rather than dropped, since a build missing it would render differently from the model it came from.

Return type:

FDNBuild