Bugzilla – Bug 243
Enh: Default EQCurves.xml content should be discussed and multiple curves usability issues worked out
Last modified: 2018-08-20 11:51:42 UTC
See http://wiki.audacityteam.org/wiki/Default_EQCurves for details of suggested curves (which are currently inadequate). Presumably the default EQCurves.xml should be committed to SVN so it can be included in the source tarball?
(In reply to comment #0) "inadequate" maybe, waiting for user input on what they want. I didn't want to impose my ideas here. Once a reasonable/agreed set of EQ curves is available, we can add to SVN. Where?
RE "where in SVN", nowhere current looks very appropriate, so I'd suggest a new folder "Presets" or "XML" - then if in future we want to add some custom FFmpeg export or tag presets for the user to start from, we have somewhere to store them. Re "user input", the link to the Forum thread was pointed to for that purpose. I think what people would find useful are the sort of EQ curves that you might see in a typical motherboard sound card (a) curves that describe "how it sounds" e.g "heavy bass", "light bass", "treble" (b) genre related curves "Jazz", "Classical", "Soft Rock", "Metal"... (c) if this can be done only with EQ, ambience such as "Canyon", "Large hall", "Closet". Plus (d) we probably still need "some" electrical 78 rpm curves which are better than having none for people who have little time. There is a suggested "78EQCurveGen.ny" plug-in on the Forum with which people could find turnover/rolloff data on the Wiki or web, and generate curves with that. That would mean we can be more limited in the 78 rpm curves we add, maybe only include a single "generic" one. Try these anchors to the Forum topic for some ideas: http://forum.audacityteam.org/viewtopic.php?f=28&t=33824#p90976 http://forum.audacityteam.org/viewtopic.php?f=28&t=33824&start=10#p91496 Since you (Martyn) are the EQ expert, your ideas would be useful, I'm sure.
(In reply to comment #2) RE "where in SVN" Sounds OK to me, but I'll wait on SVN experts.
Re "user input" I'm not going down the line of "light bass" and the rest, since I see no use for them. They've always seemed meaningless to me. Not to say that we shouldn't have a set on http://wiki.audacityteam.org/wiki/EQCurvesDownload should anybody want to do them though.
(In reply to comment #2) Re: electrical 78 rpm curves The idea of "78EQCurveGen.ny" sounds excellent but the implementation may not be. The spreadsheet at http://forum.audacityteam.org/download/file.php?id=1662&sid=940337298710916d28f923c8644eb8a4 (from http://forum.audacityteam.org/viewtopic.php?f=20&t=33824&start=30) is almost certainly flawed (it doesn't match my spreadsheet or any other curves I've seen on the web. http://www.euronet.nl/~mgw/background/riaa/uk_riaa_background_1.html looks like a good source for reference, or the usual wikipedia. I have not tried "78EQCurveGen.ny" since I couldn't fid a place to put it to make it load. My ignorance I expect. I think that if this is fixed it should be included on http://wiki.audacityteam.org/wiki/EQCurvesDownload, along with a link to a decent source of data for it. What is your suggested curve for a 'generic' one?
(In reply to comment #4) > I'm not going down the line of "light bass" and the rest, since I see no use > for them. They've always seemed meaningless to me. Well, you asked for "user input"! I think presets for bass. mid and treble manipulation are useful starters, and would save light users of EQ from having to draw curves/fiddle with sliders or save presets. I think these sort of presets are fairly common in audio editor EQs. I know it's better if people listen and experiment, but not everyone has time or inclination. See: http://wiki.audacityteam.org/wiki/Graphic_Equalizer_-_simple I think "Genre" curves are less useful than people often think, but we have to have some presets in the default list. Goldwave has among others: Boosts for Bass, Mid, Treble Reducers for Bass Mid Treble No Bass Only Bass Equal loudness (i.e. cuts bass, cuts bass a little, and boosts treble) Cool Edit has among others: Old Time Radio Resonating A's (cuts everything except the "A" frequencies) - fun but pointless? I can provide basic 5-point curves for those Cool Edit ones if you want. Is an "old radio" what our "AM Radio" is meant to do? Another common request is for a "walkie talkie" radio. What are your suggestions of curves we can put into the default list?
(In reply to comment #0) I don't see any comments in the log for Equalization.cpp about why the defaults are no longer built in. Why not? They could be a string in a *.h file (or Equalization.cpp) that gets parsed by the XML parser for curves, if the idea is to not have two representations (the former const float EffectEqualization::curvey array vs XML). Then we wouldn't have to do anything to installers and we'd be guaranteed the default set, built in. If it is a better idea to not build them in, I suggest that the directory be "Presets" because "XML" is too generic. AUP files are XML, for one. Then there's the question of where the installers should put them. EqualizationDialog::LoadCurves() looks for them in FileNames::DataDir(). The FileNames::DataDir() can be a number of different things (e.g., "C:\Documents and Settings\Administrator\Application Data\Audacity"). Because of that, I suggest the installer not try to put them in FileNames::DataDir(), and instead put them in the app directory, because the code already defaults to looking there if it can't find the file in FileNames::DataDir(). That way, the default set is always recoverable without reinstalling Audacity, even if the user has stepped on the one in FileNames::DataDir(). And the first time EQ is run it will write those values to a copy in FileNames::DataDir(). Plus, the Mac version isn't an installer, it's a disk image. I don't know how it's created (there's no analog to /win/release.txt)... Most of the rest of this discussion is not about this bug, so I suggest it should be on -quality. It would get wider input there, too.
(In reply to comment #7) Other things being equal I would much prefer the defaults were built in as before. 1.3.12 will recreate the defaults if you have deleted the relevant .xml file. If 1.3.13 can't find an .xml file in the data dir or installation folder, you have to download the default EQCurves.xml. +1 to installing in the app dir if we don't build it in. I don't know on Mac if what gets put in the .dmg is scripted or not, but I think additions are done manually. As you say, because Mac release is not documented, "extras" like gverb and the help folder can get wrongly included/excluded from dmg or zip. I still think we should have a "Docs" component in Bugzilla to track docs issues other than the Manual. > Most of the rest of this discussion is not about this bug, so I suggest it > should be on -quality. It would get wider input there, too. There is a definite secondary bug here that users of the Win 1.3.13 are complaining about "reduction in the available EQ presets". So either we widen the bug title (as I have done for now) or we should start a new issue for it. Most of the current discussion on "what curves are in the default?" is on http://wiki.audacityteam.org/wiki/Default_EQCurves or the Forum topic (http://forum.audacityteam.org/viewtopic.php?f=28&t=33824&start=30#p107030).
(In reply to comment #7) See http://wiki.audacityteam.org/wiki/Proposal_Import/Export_Eq_Curves under 'Discussion' where design discussions occurred. Not having them built in has the advantage that we don't have to have the same frequency spacing for each curve. And the default file is in no more danger of being deleted than the dll files or exe file in the same location, I feel. You are correct about the design decision of having the default curves in the app directory - that was always the intention.
(In reply to comment #9) > See http://wiki.audacityteam.org/wiki/Proposal_Import/Export_Eq_Curves under > 'Discussion' where design discussions occurred. Thanks. >Not having them built in has > the advantage that we don't have to have the same frequency spacing for each > curve. Isn't that a result of being XML rather than an array? If so, my idea of built-in XML would also have that benefit. >And the default file is in no more danger of being deleted than the dll > files or exe file in the same location, I feel. Users do really stupid things, and it's better to keep to a minimum the ways they can shoot themselves in the feet. > > You are correct about the design decision of having the default curves in the > app directory - that was always the intention. > I think XML is a better idea, but went ahead and did this for Windows. Will ask how it's done on Mac.
(In reply to comment #10) >Not having them built in has > the advantage that we don't have to have the same frequency spacing for each > curve. V: Isn't that a result of being XML rather than an array? If so, my idea of built-in XML would also have that benefit. MJS: That is true. And I mis-understood that comment #7 (although reading it again now, it isn't unclear). You propose turning the XML into a string and then including it into a .h for reading in. The system that we have now (and thanks for following through on that idea and implementing it) does have the advantage of easy updates to the defaults, without a re-compile. And we don't have to write (and test) more code. There are advantages to both, I feel. From what you've done and what Paul has written on Audacity-devel, it looks like this bug is close to closure. TTFN Martyn
(In reply to comment #11) > The system that we have now (and thanks for following through on that idea and > implementing it) does have the advantage of easy updates to the defaults, > without a re-compile. And we don't have to write (and test) more code. There > are advantages to both, I feel. Expediency (and not having to write a lot of new code) was definitely part of why I went ahead and did that. +1 on it being easier to update without re-compile.
(In reply to comment #10) Mac-specific issues with including EQCurves.xml as a separate file in the .dmg. Tested on 1.3.13 Nov 27 Mac PPC OS X 10.5.8 The Mac distribution does not include an installer. One merely copies the entire contents of the .dmg into one's Applications folder (preferably into a new folder created in the Applications folder per the instructions on the Mac download page http://audacity.sourceforge.net/download/beta_mac ). So how is the user going to know to copy the EQCurves.xml file to the correct location when installing Audacity from the .dmg? The "correct" location for EQCurves.xml on Mac is *either"* ~/Library/Application Support/audacity, *or* the Portable Settings folder if they're using one. This is not only an issue when installing Audacity but when downloading an updated default file from the wiki. I tried moving EQCurves.xml to the "app directory" (on Mac, this would either be the Applications folder or the user-created folder into which they copied the contents of the .dmg). This results in the "EQCurves not found" message, so clearly Audacity is not looking in the "app directory".
(In reply to comment #13) Replying to my own comment, now that I understand what is meant by "app directory". [oops] If EQCurves.xml is inside the Audacity application (specifically in Audacity/Contents/MacOS) then the Equalization effect will find it and use it, and the Manage Curves dialog "Defaults" button will find it and use it. Furthermore, since the creation of the *user* EQCurves.xml file is under Audacity's control, it is always put in the correct location. My conclusion is that this bug will be resolved on Mac once EQCurves.xml is included inside the Audacity application. There is the further issue, though, of what happens when someone upgrades from 1.3.12 to 1.3.13. They will not see the new default curves unless they go to the Manage Curves dialog and click the "Defaults" button, but that will erase any custom presets they have already created.
(In reply to comment #14) With Audacity 1.3.13-alpha Dec 18, on Mac, everything works beautifully, except that EQDefaultCurves.xml is still not in the app directory (Audacity/Contents/MacOS). If I put EQDefaultCurves.xml into the app directory, then: * on a clean install of Audacity, Equalization finds EQDefaultCurves.xml in the appdir and uses it immediately, populating the "Select Curve" dropdown. * simply applying the Equalization effect creates EQCurves.xml in the datadir, with the defaults copied into it. [I assume that "datadir" means, on Mac, ~/Library/Application Support/audacity] Simulating an upgrade from 1.3.12 or previous, where the user has saved some custom curves: * the "Select Curves" dropdown is populated from EQCurves.xml from the datadir. * in the "Manage Curves" dialog, EQDefaultCurves.xml is found when the "Defaults" button is clicked. In this case the user's curves are overwritten. * users can import EQDefaultCurves.xml (thus adding the new defaults to their current collection) by clicking the "Import" button then navigating to the Audacity application and clicking the "Open" button in the file open dialog. Very nice! So all should be well in Mac-land once EQDefaultCurves.xml is included in the appdir.
(In reply to comment #15) After Leland's input on audacity-devel, and reference to http://docs.wxwidgets.org/trunk/classwx_standard_paths.html#5514bf6288ee9f5a0acaf065762ad95d, it appears that the proper place for EQDefaultCurves.xml on a Mac is in the appname.app/Contents/Resources bundle subdirectory, and on Unix is prefix/share/appinfo. I think that I have made the appropriate changes (does not affect Win) and hope that this will make things easier for Mac and Unix people who make 'installers'. I have no idea about them myself I'm afraid.
(In reply to comment #16) Is this status now DEVEL - FIX MADE?
Mac now works. Can someone do linux?
(In reply to comment #18) > Can someone do linux? Yes despite appearances to the contrary I'm intending to give it a good going over on Windows and Linux.
Added to windows installer on r 10853.
(In reply to comment #20) s/windows/linux on that last comment? Martyn
oops! yes thanks for catching that martyn!
(In reply to comment #19) There appear to be no remaining issues on any platform, unless anyone knows differently. Please close this bug.
(In reply to comment #23) +1
Sorry about this delay, but there have I think been far more pressing issues to look at. Clearly I am not going to get to fully to the (somewhat) lesser issues in this before 1.3.13. Yes on the simplest case of a virgin install, it seems to essentially work on both Windows and Linux. Installing HEAD on Linux, EQDefaultCurves is actually at <prefix>/share/audacity, so it's in the directory that has the "nyquist" and "plug-ins" folder. I've reopened it as a P4 to get it "below the radar" for now. Bug title is changed to "Default EQCurves.xml content should be discussed and multiple usability issues worked out" WAS "Default EQCurves.xml should be populated and added to Windows and Mac installers." The fundamental problem is that every time I have tried to look at this feature, at the notes that Bill and Martyn made and the e-mails about it from users, I run into usability issues that I have had to stop and write down, and it just all ends up taking too long. I guess they are (mostly) P4 but there are many of them (as I see it). Maybe we will want to keep this as a summary bug for the issues I've yet to document. Martyn, I've posted below my comments to Team that there are no 78 rpm curves in the EQDefaultCurves.xml. Users are remarking about that, and it seems to be in the "populated" part of the original bug title. I would call it a P3 regression but I can't decide rating (or if it's a valid demand) without input from Martyn. "About the other part of this bug - are you still dubious about having any "electrical 78 rpm" curves in the "Default EQCurves.xml"? While it's hard to call this a "P2" on its own, I'm very confident there will be complaints about "regressions" if there are no 78 rpm curves - there already have been such. There are some ideas here for three "generic" 78 rpm curves (or even just one): http://forum.audacityteam.org/viewtopic.php?f=28&t=33824&p=107030#p107030 Or as a more sophisticated idea, the four "unstarred" ones here: http://forum.audacityteam.org/viewtopic.php?f=28&t=33824&start=90#p125334 I'm not an expert here, so I rely on you. Are these or similar curves so useless that they are not worth having (people should search the Wiki, find the nearest match to their make of record, then download the 78EQCurveGen.ny, make their curve, then import it into EQ?) My instinct tells me that sort of thing is for diehards only."
*** STEPS UPDATED *** This bug has morphed into an enhancement requests for certain presets see comment #6 and unspecified (unlogged) usability improvements. This bug could be closed by creating a Proposal page on the wiki with the residual feature requests.
Archived on https://wiki.audacityteam.org/wiki/Gale%27s_wish_list