Proposal: Earlier Disk Over-run Warnings
From Audacity Wiki
Revision as of 15:40, 15 April 2016 by PeterSampson (talk | contribs) (→Proposed Feature: import and export)
Proposal pages help us get from feature requests into actual plans. This page is a proposal to increase Audacity;s resistance to situation where disk over-run causes problems |
Proposal pages are used on an ongoing basis by the Audacity development team and are open to edits from visitors to the wiki. They are a good way to get community feedback on a proposal.
|
- Note: Proposals for Google Summer of Code projects are significantly different in structure, are submitted via Google's web app and may or may not have a corresponding proposal page.
The Problem
Bug #437 relates to this issue and is where it was originally reported.
- Particularly egregious are the Recording functions as when the user runs out of disk space Audacity currently carries on recording but blithely overwrite earlir parts of the recorde project, effectively trashing the user's recording. Worse still the user has no idea that this has taken place until thay come to access the recording after "completion".
- The Generate and Effect plug-ins are capable of generating large amounts of audio data with the potential for disk overrun, this is not handled cleanly.
- Import can easily be asked to import a data set that is too large for the available disk space.
- Export, particulary of uncompressed file formats but not restricted to them, can generate large amounts of audio data with the potential for disk overrun.
- Even seemingly innocuous commands have the potential to produce sufficient data to overfill the disk.
1 above has given us unwanted bad press on the Wikipedia Audacity page "Limitations" section: https://en.wikipedia.org/wiki/Audacity_%28audio_editor%29#Limitations
Proposed Feature
A suitable headroom buffer to be defined. This should be user-settable but deep in Preferences and with a sensible default of 50-100MB say.
- For Recording activities:
- Check before recording starts that there is more space available than the headroom buffer
- While recording takes place check the availble disk space
- If and when ir reaches the headroom buffer size: Audacity stops with an error message
- Generators and effects
- Check before the plug-in starts that there is more space available than the headroom buffer
- check that the volume of data, based on current settings, will not overfill the disk capacity minus the headroom buffer
- If we want to be really secure we would need to check as the plug-in progresses that we are not exceeding the headroom (in case the estimate was inaccurate) and if so stop the plug-in gracefully with an error message.
- Import
- check that the volume of data, based on current settings and imported filetype, will not overfill the disk capacity minus the headroom buffer
- if so disallow the import with an error message
- Export
- check that the volume of data to be drated, based on current settings and exported filetype, will not overfill the disk capacity minus the headroom buffer
- if so disallow the emport with a suitable error message
Developer/QA Backing
- Peter
Use Cases
TBP
Tables for analysis and subsequent tracking
File Menu
Command | % extra | Needs trapping | Assigned to | Fixed | Tested | Resolved |
---|---|---|---|---|---|---|
New | TBP | ??? | no | no | no | |
Open | depends on data size and settings | almost certainly | no | no | no | |
Close | TBP | ??? | no | no | no | |
Save Project | TBP | ??? | no | no | no | |
Save Compressed Copy of Project Project | TBP | almost certainly | no | no | no | |
Check Dependencies | TBP | ??? | no | no | no | |
Edit Metadata Tags | TBP | ??? | no | no | no | |
Import | depends on file size & type | almost certainly | no | no | no | |
Export (various) | file size calculable | almost certainly | no | no | no | |
Apply Chain | TRICKY | almost certainly | no | no | no | |
Edit Chains | TBP | probably | no | no | no | |
Page Setup | TBP | ??? | no | no | no | |
TBP | ??? | no | no | no |
Edit Menu
Command | % extra | Needs trapping | Assigned to | Fixed | Tested | Resolved |
---|---|---|---|---|---|---|
Cut | TBP | ??? | no | no | no | |
Delete | TBP | ??? | no | no | no | |
Copy | calculable | almost certainly | no | no | no | |
Paste | calculable | almost certainly | no | no | no | |
Duplicate | calculable | almost certainly | no | no | no | |
Labelled Audio>Copy | calculable | almost certainly | no | no | no |
Transport Menu
Command | % extra | Needs trapping | Assigned to | Fixed | Tested | Resolved |
---|---|---|---|---|---|---|
Record | open-ended | yes | Mark Young | ongoing | no | no |
Timer Record | open-ended | yes | Mark Young | ongoing | no | no |
Append Record | open-ended | yes | Mark Young | ongoing | no | no |
Tracks Menu
Command | % extra | Needs trapping | Assigned to | Fixed | Tested | Resolved |
---|---|---|---|---|---|---|
Stereo Track to Mono | probably calculable | almost certainly | no | no | no | |
Mix and Render | probably calculable | almost certainly | no | no | no | |
Mix and Render to new Track | probably calculable | almost certainly | no | no | no | |
Resample | probably calculable | probably | no | no | no |
Generate Menu
Command | % extra | Needs trapping | Assigned to | Fixed | Tested | Resolved |
---|---|---|---|---|---|---|
Chirp | calculable | yes | no | no | no | |
DTMF Tone | calculable | yes | no | no | no | |
Noise | calculable | yes | no | no | no | |
Silence | calculable | yes | no | no | no | |
Tone | calculable | yes | no | no | no | |
Click Track | calculable | yes | no | no | no | |
Pluck | calculable | yes | no | no | no | |
Risset Drum | calculable | yes | no | no | no |
Effect Menu
Command | % extra | Needs trapping | Assigned to | Fixed | Tested | Resolved |
---|---|---|---|---|---|---|
Amplify | 100% | yes | no | no | no | |
Auto Duck | TBP | yes | no | no | no | |
Bass & Treble | 107% - used more while working | yes | no | no | no | |
Change Pitch | 100% | yes | no | no | no | |
Change Speed | varies with % change | yes | no | no | no | |
Change Tempo | varies with % change | yes | no | no | no | |
Click Removal | varies | yes | no | no | no | |
Compressor | 100% | yes | no | no | no | |
Echo | 100% | yes | no | no | no | |
Equalization | 100% | yes | no | no | no | |
Fade In | 100% | yes | no | no | no | |
Fade Out | 100% | yes | no | no | no | |
Invert | 100% | yes | no | no | no | |
Leveller | 100% | yes | no | no | no | |
Noise Reduction | 100% | yes | no | no | no | |
Normalize | 100% | yes | no | no | no | |
Nyquist Prompt | ??? | ??? | no | no | no | |
Paulstretch | massive | yes | no | no | no | |
Phaser | 100% | yes | no | no | no | |
Repair | TBP | unlikely | no | no | no | |
Repeat | 0% | almost certainly | no | no | no | |
Reverb | 100% | yes | no | no | no | |
Reverse | 100% | probably | no | no | no | |
Sliding Time Scale/Pitch Shift | 100% | yes | no | no | no | |
Truncate Silence | varies by amount of silence | possibly | no | no | no | |
Wahwah | 100% | yes | no | no | no |
Effect Menu below the line
Command | % extra | Needs trapping | Assigned to | Fixed | Tested | Resolved |
---|---|---|---|---|---|---|
Adjustable Fade | 100% | probably | no | no | no | |
Clip Fix | 100% | yes | no | no | no | |
Crossfade Clips | adds length of fade | probably | no | no | no | |
Crossfade Tracks | adds length of fade | probably | no | no | no | |
Delay | 100% | yes | no | no | no | |
High Pass Filter | 100% | yes | no | no | no | |
Limiter | 100% | yes | no | no | no | |
Low Pass Filter | 100% | yes | no | no | no | |
Notch Filter | 100% | yes | no | no | no | |
SC4 | 100% | yes | no | no | no | |
Spectral edit multi tool | 100% | probably | no | no | no | |
Spectral edit parametric EQ | 95% | probably | no | no | no | |
Spectral edit shelves | 100% | probably | no | no | no | |
Studio Fade Out | 100% | probably | no | no | no | |
Tremolo | 100% | yes | no | no | no | |
Vocal Reduction and Isolation | 100% | yes | no | no | no | |
Vocal Remover | 50% | yes | no | no | no | |
Vocoder | 50% | yes | no | no | no |
Analyze Menu
Command | % extra | Needs trapping | Assigned to | Fixed | Tested | Resolved |
---|---|---|---|---|---|---|
Contrast | TBP | probably | no | no | no | |
Plot Spectrum | TBP | probably | no | no | no | |
Find Clipping | TBP | probably | no | no | no | |
Beat Finder | TBP | probably | no | no | no | |
Regular Interval Labels | TBP | almost certainly | no | no | no | |
Sample Data Export | TBP | probably | no | no | no | |
Silence Finder | TBP | probably | no | no | no | |
Sound Finder | TBP | probably | no | no | no |
Generate/Effect/Analyze Menus
Command | % extra | Needs trapping | Assigned to | Fixed | Tested | Resolved |
---|---|---|---|---|---|---|
Add / Remove Plug-ins | varies | almost certainly | no | no | no |
Details
TBP
GUI Examples
TBP
Previous Feature Requests relating to this proposal
TBP