Closed JWahle closed 1 year ago
A similar idea was proposed in https://github.com/HEnquist/camilladsp/issues/276 (and also briefly discussed in https://github.com/HEnquist/camilladsp/issues/275). I really want to keep the complete config in a single file, with the exception of FIR filter coefficient since there is no other sensible way for those. But for everything else, allowing referencing other files makes the config reading, parsing and validation much more complicated. This is a part I want to keep as simple as possible. I agree that this could be convenient, but I really don't think the convenience is worth the added complexity. The way I see it, the yaml format makes it very easy to manipulate config files using simple scripts. For example it would be trivial to write a python script that merges two or more (partial of complete) config files to one complete one. It would also be no problem to write a script that injects the filters from an eqAPO config file into a camilladsp yaml file.
I plan to add import functionality for common filter config formats in the gui. EqAPO is definitely one of the formats that should be able to handle.
I thought some more about this and I think, doing this in the GUI is not so bad at all. I'll create a ticket in camillagui to get your input on some of the usability aspects.
Implemented in https://github.com/HEnquist/camillagui/issues/85
Hi Henrik, I would like importing a set of IIR filters from REW and AutoEQ to be as convenient as just adding one wave convolution filter file to my CDSP config. Ideally, there would be a special filter type for IIR filters in a separate file, like for Convolution file filters.
I see two alternatives for the file format. The format could be the same YAML format as the filters section of a CDSP config or a format, which is already implemented in REW and AutoEQ. Using the YAML format would make implementing the parsing logic pretty simple, since it is going to stay largely unchanged. On the other hand, the authors of REW and AutoEQ would have to implement the YAML filter format - which they likely would. For an already existing format, the EqualizerAPO filter file format comes to mind here, since it is very simple to humanly read and automatically parse. REW and AutoEQ can already export to EqualizerAPO, so this would work out of the box. We can also do a hybrid approach and implement the YAML format in CDSP and do EqAPO to YAML conversion in the GUI. People who edit their configs by hand and don't use the GUI wouldn't benefit from this, though.
You probably already know the EqAPO file format, but here is an example text file with 3 peaking filters anyway: