Talk:Completed: Proposal User-safe Aliasfiles

From Audacity Wiki
Revision as of 00:12, 10 March 2011 by Edgar (talk | contribs) (no patch right now)
Jump to: navigation, search
  • BillW 20Jan10: IMO changing the default in Import / Export Preferences to "Make a copy of uncompressed audio files before editing (safer)" would go a long way towards shielding new users from this problem. We could then possibly dispense with "Rule #3" in Audacity for the Impatient (or wherever the "3 rules" are eventually placed).
    • New users are presumably downloading Audacity for the first time, and many are complete novices. Rule #3 may be incomprehensible to them.
      • Gale: And they may never RTFM anyway, which is why this warning ought to be in the software.
    • Seasoned users who prefer this option will have it set in their preferences which will be retained when they upgrade to a new version.
    • Performing an effect on an entire imported track (such as Amplify or Normalize) completely negates the disk space saving nature of the "read directly" preference as Audacity must save (internally) the changed version of the track. It seems to me that if the "Normalize all tracks in project" preference is checked then this will happen automatically.
      • Gale: Editing the imported track does not completely negate the space saving of importing a WAV via On-Demand. If you have a 750 MB WAV, copy in takes 1.5 GB, then an edit takes another 1.5 GB (total 3 GB). If you import via On-Demand, the 1.5 GB of space from the copy-in is saved. "Normalize on import" is off by default. I agree space-saving is the weaker of the two arguments for On-Demand.
    • Surely Audacity could check if referenced aliasfiles are available and warn the user rather than blithely playing silence while simultaneously displaying a waveform? This check could be done on opening a project and a comprehensive error message displayed.
      • Gale: I'm intending to make it a P2 bug that a file existence check should be done when the dependencies dialogue is invoked, if I don't get lobbied down. I don't know whether what you are suggesting can also be done as part of that. It's less critical, I think.
        • Bill: What I'm seeing on the forum is users who save a project and come back to it days or weeks later, and have in the meantime moved or deleted a dependent file. An existence check on opening the project is critical for them, I believe. They will at least know what has happened and may have the opportunity to correct it.
    • Perhaps a warning when importing using "read directly"? This could be turned off in the warning dialog or in Warnings Preferences.
      • Gale: I support that and believe it should probably be a P3. It should be done because it then makes a much stronger case for retaining On Demand as default.
    • Is there better wording/description to "read directly"? This confused me initially. What's the opposite? Read INdirectly?
      • Gale: I think "make a copy" is clear. I think the "read directly" could be something like "Use the original uncompressed audio file (faster, less safe)"
  • Peter 21Jan10: I wholeheartedly support the idea of making the "Safer" option the default. It is mainly inexperienced users (but not always) who fall foul of this. My understanding is that the "faster" option was chosen as the default to make working with Audacity faster for power users. But my contention is that power users are the ones most likely to probe and understand the various settings in Preferences - and in particular understand the import settings there. With Audacity OOTB we should aim to make things as foolproof as possible for the new user.

Bill 22Jan10:

  • Regarding the warning when importing using "read directly". What information do we need to impart?
    • The file you are importing will not be copied into your Audacity project
    • Audacity will read from (depend upon) the original file for all unedited portions
    • You must not delete, move or rename this file unless you first copy it into your project using the "Check Dependencies" command in the File menu, or when you are prompted to do so when saving your project.
    • |_| Don't show this warning again (button:)I Understand
      • Gale: I think it's too long. User will be confused, and devs will be reluctant. Once it's in, it's probably tweakable. Something like:
          Project depends on imported files
          Your preferences are set to import %s without copying in. This is very fast, but the file(s) must not be moved or deleted.
          [ ] Always copy in uncompressed files
          [ ] Don't show this warning again

        This gives us several possibilities. If we force this dialogue on first WAV import, with "Always copy" checked (irrespective of user's current preference setting) this protects 1.2 users who had the default preference, but gives users who want fast import the choice from the outset, instead of disadvantaging them by making them find it in Preferences. Checking "Always copy" copies in the files the user was importing.

        "Don't show again" could mean "even if I subsequently change my preference", in which case checking "Always copy" would not grey out "Don't show". We "could" show the Dependencies dialogue here too, but on first thoughts the above seems neater.


  • Regarding the dependencies dialog
DependenciesDialog.png
    • It needs to be bigger so it can show the entire path. At present, on Mac, the dialog is too small to show this, is not resizable, and there are no horizontal scroll bars in the list.
    • "Project depends on other audio files" gets lost as the title of the dialog
    • Note that the button "Copy Selected Audio Into Project" remains enabled even when nothing is selected in the list
    • Improved messages?
      • Dependencies (title of the dialog)
      • Your project depends on the following audio files which were imported using the 'read directly' option in Import / Export Preferences.
      • As long as your project depends on these files you must not delete, move or rename the files.
      • You can choose to copy the contents of these files into your project, which will remove the dependency.
      • This may require more disk space, but is safer and will make your project self-contained.
SaveDependencies.png
    • The dialog that appears when saving a project with the "ask user" option in Projects Preferences is wider, but has a silly third column with nothing in it. A savvy user can drag to make the first column wider but it still may not be able to show the full path (which includes the most vital information - the name of the file).
    • IMO needs expanded explanation as above
  • Gale: My suggestion is that we have essentially one Dependencies dialogue rather than two variants according to route. The "Cancel Save" button when you see this dialogue by exiting becomes "Save" if you approach it via "Check Dependencies". Here is my take on a cleaner wording:
Dependsmod.JPG

I particularly dislike "other audio files" so I would change all instances of that to "imported files". If we go with the warning on first import, I think we could get away with minimal wording here. We still have the option of context-sensitive help at a later stage. Note that on Windows there is a tooltip if you hover over the filename, but I certainly think the dialogue should be resizable. A possible tweak may be to have a checkbox in the window to select files, then just one button to copy whatever files are checked.


  • Regarding what happens when an alias file is not available
    • What happens now is that the user sees the "blue wave" but hears no sound, and is thoroughly confused.
    • I feel strongly that Audacity should check for the existence of alias files when opening a project and give the user an explanation if any files are not found.
    • Perhaps a dialog similar to a (revamped) dependencies dialog (listing the missing alias files), with the message:
      • This project depends on the following files, but Audacity could not find them.
      • You can choose to open the project, but portions may be silent even though a waveform is visible.
      • It is recommended that you quit immediately, find the files on your computer and return them to their original locations.
    • Even fancier would be a "Browse" or "Find" button that allows the user to find the moved/renamed files and point Audacity to their new names and/or locations, although this is potentially very dangerous as the user could easily point Audacity to the wrong files!
    • If the user chooses to open the project anyway (why would they?), could the waveforms for the missing sections be rendered in a different colour, say pink?
  • Conclusion: IMO (as of today, and I reserve the right to change my mind), I could be persuaded that "read directly" would be the default option if the above were implemented, that is:
  1. warning when importing using read directly
  2. improved dependencies dialogs
  3. check for missing alias files when opening a project
    • In the meantime I believe that "copy in" should be the default until these improvements can be made.
  • Other issues:
    • I think it is worth noting that using "read directly" can actually increase disk usage. Consider a 16-bit project that depends on an external file, say a raw interview with lots of irrelevant stuff. The users edits out the bad stuff, reducing the length of the interview by half. If this audio were copied in, its length would be reduced by half, but instead the project continues to depend on the original file, making the disk footprint of the project bigger than if the audio were copied in. Furthermore, Audacity will create .au files (containing audio) to cover the edit points that certainly will not fall on block boundaries - so the project is now bigger than the original file. It is easy to conceive of situations that would have a similar effect. For this reason "removing dependencies" on saving a project is to the user's benefit - there is not longer a speed penalty when opening the project and disk usage is reduced (assuming the user then deletes the original file).

Steve D 24Jan10: Steve D wrote on the [Audacity-Manual] list:

If novice users can be effectively instructed/warned of the "unsafe potential" of On-Demand, then it should be even easier to inform advanced users of the benefits of On-Demand.

If On-Demand is well documented and the advantages made clear, then anyone that can be bothered to RTFM can easily set that option in Preferences. The problem is those novice users that don't read documentation or heed the warning pop-ups and there will always be a problem for such users until the safe option is the default.

To put it another way, "Copy-In" as the default lowers the steepness of the learning curve, which must be a good thing for new users.

Gale: Please refer to the two proposals for a forced warning on first import of WAV/AIFF (which sets default to copy-in), and copy-in in the background (while On-Demand is running).

I've used about eight Windows machines since I started with computers, and the penalty for copy in has always been very significant, even before OD increased the difference. So just making copy-in the default by changing the preference is a poor solution to me.


  • Peter 23Feb10: Gale wrote the following on the article page - I will address it here to avoid cluttering the article.
    • "When you say "I use "faster" for LP transcriptions" I'm not quite clear - you mean you alias WAVs you have already recorded in a previous session, but copy in WAVs ripped from CD for example? Certainly your menu item gives user an on-the-fly equivalent way to "change preferences" but is it a common use case?""
    • Overview of my workflow for transcibing LPs is:
  1. Record side 1 in Audacity
  2. create label track and place labels (01, 02 etc) at approx. intertrack gaps while recording
  3. Export as a 32-bit WAV - <filename>.wav
  4. Process this WAV file through ClickRepair - this creates <filename>-cr.wav
  5. In the already open Audacity project - Link to <filename>-cr.wav as an alias file
  6. delete original capture track
  7. top and tail each song: optionally fade-in/fade-out/trim inter-track gap, adjust label positions
  8. edit the labels with song names
  9. use Export Multiple to create a set of WAVs
  10. Backup the WAVs
  11. discard the Audacity project and delete the capture and CR WAV files
    • But when I do other audio editing with clips and original material I prefer to use the "safer" import/copy-in option.
    • But I readily admit that this may not be a common use-case

dialog problems

Ed 4Mar11
What has changed since Bill made the points about the Mac dialogs?

The current (7 Mar 11) dialogs on Windows look like:
both Windows dialogs
On Linux they seem functionally the same: both Linux dialogs On both Windows and Linux neither automatically resize to accommodate the length of the file names but both are re-sizable (although there is no indication of this).


Gale: I don't think that's changed since 1.3.12. The Linux text is larger so the extra row with text in the Project Save dialogue does not make so much difference to the width as it does on Windows. Would the dependencies check dialogue look better if it was the same width as the dependenoies dialogue for save project, without horizontal scrollbar? Yes I think it probably would. You can write a patch if you like (check for Mac too).

Ed 9Mar11 (This is a cumbersome way to have a discussion!) I have already written code (the patch has been floating around for well over a year) which sizes columns based on the widest entry (if too wide to fit the dialog a scrollbar appears) then sizes the dialog as wide as needed (up to 90% of the screen size). Unless some impetuous Developer wants to apply such code pre-2.0 I will hold off until after release then offer some of my GUI "improvements" as not-so-stale patches!