Talk:Proposal Import/Export Eq Curves

Discussion

 * Gale: I think curves would have to be named - the average user will have little idea from a row of figures what the curve is. There should be a dialogue to ask user to choose a new name if an imported curve bears the same name as an existing one. Although we don't want to get too advanced to begin with, clearly the most useful way this feature will develop will be that packages of curves will be available such as "Robots and automatons"; "Radios"; "Genres" etc. So I think we should at least be planning for that at this stage e.g. selecting multiple/all items in the curve list or in the browser window exports/imports a batch of curves as one named xml file.


 * Peter 16Mar10: I support the idea of simple import and export of EQ curves.  The method of doing it right now by editing the EQCurves.xml file is far too "programmery" for many of our users.  Since it is possible to have many EQ curves and one could soon overload the Equalization drop-down list, I would prefer an interface whereby we could provide a few basic ones in the Equalization effect as a default - but also provide an EQ curve library from which users could download a required curve from the library into their Equaliation effect list.  And users should be able to remove items from their EQ list - but should not be able to remove items from the library.
 * Gale: I think there is perhaps an issue that you can add custom curves to make a long list, then accidentally delete a built-in curve and have no way getting the built-in one back without losing your custom curves (save copying them from the xml, deleting the xml so Audacity can recreate it, then pasting the custom curves back. I would suggest a "Defaults" button that restores the presets while leaving the custom curves (or "Defaults" restores the list to day one without presets and "Restore" restores presets and leaves the custom curves alone). And/or make "defaults" one of the xml curve sets we distribute inside Audacity,


 * Martyn: So here's an idea:
 * Get rid of the 'built in' curves from the code (which would simplify it) but...
 * Install/unzip a default EQCurves.xml in the main install directory (new version of what we have built-in, following the suggestions made)
 * If there is no 'User' EQCurves.xml, load the 'install' one, so that it gets written into the user one as normal.
 * This has the advantage that we don't have to have the same frequency spacing for each curve
 * Rename the 'custom' curve as 'un-named'
 * Replace the 'Save As...' and 'Delete' buttons in the interface with a 'Save/Modify list...' button. This does not expand the screen-estate, it saves some if anything.  It does involve an extra step for these operations, I admit, but they are relatively infrequent compared to selecting and applying a curve.
 * It invokes a new interface to 'Delete', 'Save as...', 'Import' and 'Export' curves etc., which also contains the current list of curves. The currently selected curve would be the default slection, or 'un-named'.  The curves would be singly or multiply selectable and appropriate buttons (below) would be available
 * 'Delete' works as currently, but allows multiple curves to be deleted
 * 'Save As...' becomes 'Rename...' and only works on one curve at a time (including 'un-named', obviously)
 * (and allow renaming by overtyping the current name)
 * 'Import' allows the user to search for a file, and then imports any curves found to the list. Initial implementation would not allow more control than that.  'Hit and hope'.  Extra ones found that were not required could be deleted later
 * If a curve import was attempted with a name already taken, obviously we would insist on a re-name / replace
 * We would allow un-named curves in the import file, but obviously insist that they were given a unique name
 * 'Export' allows multiple curves from the list and exports them to an XML file
 * There would be another button to 'Recover defaults' from the 'installed' EQCurves.XML (unless the user had deleted that as well, in which case they deserve all they get ;-)). Special case of 'Import'
 * And buttons to move the selected curve up/down the list
 * There could be another button in the interface to 'Get Libraries' that would take the user to a wiki page allowing them to download various XML files of 'record EQ curves' etc., which they could then import
 * Longer term:
 * Extend the XML syntax to include a 'Category' tag. We could do a number of things with that (in the long term), for both import, export and displaying the list in the interface.  Is there a standard for Categories that we could follow?
 * Extend the XML syntax to include the 'Length of filter', 'Draw or Graphic' and 'Log/Lin' and then have those set when a curve is selected