Difference between revisions of "Proposal Timer Record Improvements Phase-2"

From Audacity Wiki
Jump to: navigation, search
(Use Cases: trim)
(Previous Feature Requests relating to this proposal: added vote)
 
(14 intermediate revisions by 2 users not shown)
Line 3: Line 3:
 
==The Problems==
 
==The Problems==
 
There are many [[Feature Requests#timer_record|existing feature requests for Timer Record]] lodged in the Wiki relating to usability improvements. For example:
 
There are many [[Feature Requests#timer_record|existing feature requests for Timer Record]] lodged in the Wiki relating to usability improvements. For example:
*The current implementation of Timer Record operates as an "unattended recording" rather than a proper timed recording in that most of Audacity's recording controls are unavailable to the user once a "Timer Record" has been initiated.  In particular the levels cannot be re-adjusted once Timer Record has been initiated but also but also the zoom level and resizing of tracks cannot be accessed. Also labels and markers cannot be dropped. This is a prominent feature request.
+
*The current implementation of Timer Record operates as an "unattended recording" rather than a proper timed recording in that most of Audacity's recording controls are unavailable to the user once a "Timer Record" has been initiated.  In particular the levels cannot be re-adjusted once Timer Record has been initiated but also the zoom level and resizing of tracks cannot be accessed. Also labels and markers cannot be dropped. This is a prominent feature request.
  
 
== Proposed Features ==
 
== Proposed Features ==
 
#Timer Record to enable access to the normal set of recording controls.
 
#Timer Record to enable access to the normal set of recording controls.
 
#Ability to change the event times
 
#Ability to change the event times
 +
#*The above two to be an option that the user can turn on
 
#Add a Timer Stop to be available for manually initiated recording.
 
#Add a Timer Stop to be available for manually initiated recording.
  
 
==Developer/QA Backing==
 
==Developer/QA Backing==
 
* '''Peter Sampson:'''  I support full access to the controls during Timer Record, including adding the ability to alter the end-time or duration of the timed recording  
 
* '''Peter Sampson:'''  I support full access to the controls during Timer Record, including adding the ability to alter the end-time or duration of the timed recording  
** '''Gale 25Feb15:''' I think the lockout while recording is over-enforced. I can see no good reason to dispense with metering and access to Mixer Toolbar. Perhaps, input/output sliders should be available in both the Waiting to Start and Record Progress dialogues. Perhaps a button in the Record Progress dialogue to Add Label at Playback Position.
+
** '''Gale 25Feb15:''' I think the lockout while recording is over-enforced. I can see no good reason to dispense with metering and access to Mixer Toolbar. Perhaps, input/output sliders should be available in both the Waiting to Start and Record Progress dialogs.
  
 
==Use Cases==
 
==Use Cases==
Line 19: Line 20:
  
 
==Details==
 
==Details==
<font color="gray">
+
*'''Controls:''' Timer Record to facilitate availability of all the normal set of Audacity recording controls:
*'''Optional forced Save and/or Export on Timer Record completion:''' add tools to optionally auto-save/export and optionally close down the computer and/or input stream.  Would require extensions to the setup dialog box.
+
#use of the Mixer Toolbar sliders to adjust the signal level
**An option to auto-save and/or auto-export at successful completion of the recording event, to a user-specified name and location (and specified format for export). Would need to be specified at event set-up which would require extensions to the setup dialog box.
+
#drop markers/labels with {{shortcut|Ctrl + B}} and {{shortcut|Ctrl + M}},
**Optionally close Audacity on successful event completion.
+
#* Edit labels
**Optionally shut down the computer on successful event completion.
+
#* Label deletion via context menu
**Optionally disconnect the internet stream (if appropriate) on successful event completion.
+
#zoom in/out,
*'''Peter 24Feb15:''' <strike>For 2.1.0 Vaughan has provided an automatic Save on TR completion if the user has Saved the project prior to starting the timed recording, otherwise on completion the user is invited to make the save.  This interface need a little more work for the next release as the behavior is somewhat opaque and not very discoverable. </strike>
+
#pause and un-pause recording ''(Note that this merely temporarily interrupts the recording; it does not extend the recording time)'',
*'''Peter 22Mar16:''' Mark Young has been working on implementing the changes requested in this proposal with an extension to the Timer Record dialog box giving access to the new options for Automatic Save, Automatic Export and completion action.  This makes the automatic save much more "discoverable". There is no explicit option for disconnection from an internet stream that a recording may have been made from, but if the user chooses "Shutdown System" or "Restart System" as the completion option then the webstream will de facto be  disconnected.
+
#change the track size,
**'''Peter 03Apr16:''' These changes have now been pulled into the main trunk of Audacity - so should be in 2.1.3
+
#rename the track,
</font>
+
#change the waveform display type.
 
 
 
 
*'''Waiting for Start dialog enhancements:'''
 
**Under "Waiting to start recording at: dd-mmm-yy hh:mm:ss", add duration and scheduled stop time:
 
*** Recording duration: hh:mm:ss
 
***Scheduled to stop at: dd-mmm-yy hh:mm:ss
 
**Add post completion actions selected:
 
*** Automatic Save Enabled: Yes/No
 
*** Automatic Export Enabled:  Yes/No
 
*** Post Timer Recording Action:  <action(s)>
 
**Remove "Elapsed Time: hh:mm:ss".  It adds nothing is of no real clue to the user.
 
**Rename "Remaining Time: hh:mm:ss" to "Recording will commence in: hh:mm:ss"
 
 
 
 
 
 
 
*'''Progress dialog enhancements:'''
 
**Add post completion actions selected:
 
*** Automatic Save Enabled:  Yes/No
 
*** Automatic Export Enabled:  Yes/No
 
*** Post Timer Recording Action:  <action(s)>
 
{{note|Now that the "Waiting for Start dialog" is being enhanced as above, it is noticeably lacking in this dialog.}}
 
 
 
 
 
 
 
*'''Add a Confirm dialogue when the user uses Stop/Spacebar/Esc:'''
 
**Effected (while Waiting or Recording) to prevent accidental stoppage.
 
** Simple Yes/No two-button dialogue
 
** "No" to be the default
 
***Thus two accidental presses on the space bar cannot halt the ongoing Timer Record.
 
{{note|'''Peter 01Apr16:''' The recording/waiting can easily be accidentally stopped while waiting or recording by a single press of the spacebar.  This is due to the fact that focus is on the "Stop" button in the dialog. }}
 
 
 
 
 
*'''Error handling (or warning) on potential disk full situation'''
 
**When a single Timer Record event is created ''(or set of Timer Record events if the multi-event feature is added)'' that would exceed the potential remaining available record time that Audacity calculates ''(and which would lead to a full disk and a failed recording)'' generate either an error message (or possibly a warning to enable the user to free up disk space).
 
**Would need to be further invoked if the '''Ability to change the event times''' as below is implemented
 
*'''Peter 03Apr16:''' Mark Young is working on this, The space checking takes account of the settins for: channels, sample rate and sample format.  This will be a warning rather than an error condition.
 
  
  
Line 74: Line 39:
  
  
*'''Controls:''' Timer Record to facilitate availability of all the normal set of Audacity recording controls:
+
*'''Access to be a user-option'''
#use of the Mixer Toolbar sliders to adjust the signal level
+
**The above items should be an option that the user can opt to turn on
#drop markers/labels with Ctrl+B and Ctrl+M,
+
**Either from within the Timer Record setup dialog - or as a Recording Preference.
#zoom in/out,
 
#pause and un-pause recording ''(Note that this merely temporarily interrupts the recording; it does not extend the recording time)'',
 
#change the track size,
 
#rename the track,
 
#change the waveform display type.
 
  
  
Line 87: Line 47:
 
**Provide a '''Timer Stop''' to be available for a manually initiated recording to be stopped after a settable time, possibly implemented by making the Timer Record dialog available after recording has been initiated.
 
**Provide a '''Timer Stop''' to be available for a manually initiated recording to be stopped after a settable time, possibly implemented by making the Timer Record dialog available after recording has been initiated.
 
**Presumably this could be implemented by providing access for the user to the Timer Record setup dialog while a recording is active.
 
**Presumably this could be implemented by providing access for the user to the Timer Record setup dialog while a recording is active.
 
 
<font color="gray">
 
*<del>'''Re-size the "Progress" box smaller'''</del>
 
**<del>The "Progress" box is un-necessarily wide at 22 cm</del>
 
**<del>Reduce the width of the "Progress" box to 10.5 cm to match the width of the "Waiting for Start" box'''</del>
 
**<del>This would still leave the progess bar wide enough to be useful (cf. progress boxes for Effects and Analyze tools which are only about 8.25 cm wide).</del>
 
***This has been completed.
 
</font>
 
  
  
 
*'''Ability to minimize the Timer record Window'''
 
*'''Ability to minimize the Timer record Window'''
 
**Timer Record to behave like a proper Windows window so that it can be minimized to the Applications bar with the minimize button in the Audacity window.   
 
**Timer Record to behave like a proper Windows window so that it can be minimized to the Applications bar with the minimize button in the Audacity window.   
***'''Gale:''' Bug [http://bugzilla.audacityteam.org/show_bug.cgi?id=104 104] relates to this.
+
***'''Gale:''' Bug [https://bugzilla.audacityteam.org/show_bug.cgi?id=104 104] relates to this.
 
***'''Gale:''' It would be quite odd on Windows to be able to minimize an app having a modal window ''(though Ubuntu allows it)''. So making Timer Record dialog modeless (for the current project) would be one solution.   
 
***'''Gale:''' It would be quite odd on Windows to be able to minimize an app having a modal window ''(though Ubuntu allows it)''. So making Timer Record dialog modeless (for the current project) would be one solution.   
  
  
<br>
+
===GUI Examples===
<font color="gray">
+
TBP
*<del> '''Remove the Cancel button from the Progress box''' </del>
 
*<del> ''(Fixed by Vaughan for v2.0.1.)''</del>
 
**<del> Simply remove this button from the box</del>
 
**<del> The box has a de facto cancel already in the '''X''' in the top-right corner</del>
 
**<del> A second de facto cancel is available by use of the '''ESC''' button</del>
 
**<del> User can achieve the same effect by using the '''Stop''' and then optionally deleting the recorded track if required (this is safer). </del>
 
</font>
 
  
 +
==Previous Feature Requests relating to this proposal==
 +
* '''Access to progress or record controls:''' {{votesdate|18|27Mar20}}
 +
** '''Both dialogs should be modeless for current project, allowing access to same controls available during standard recording''' {{votes|16}} This lets you change levels, pause manually, drop a label, zoom in/out or resize tracks, plus it lets Audacity on Windows be minimised while Timer Record is in progress.   
 +
** '''Waiting for Start dialog should be modeless for all (or at least, other) projects:''' {{votes|5}} allowing to work normally until recording starts
 +
{{devcomment|This raises all manner of issues about what happens if user is in the middle of playing / exporting when recording is due to start.<p>'''Peter 15Mar16:''' My PVR deals with this by giving me a ten and five minute warning of a scheduled recording or channel change. If I ignore it the recording or channel change takes precedence at the prescribed time.</p><p>'''Peter 04Feb17:'''Mark Young has dealt with this in 2.1.3 by ensuring that for Timer Record the user must have that sole project open.  No other projects can be open when setting up a Timer Record - and none can be opened after the Timer Record is set up.</p> }}
  
===GUI Examples===
+
For further detail see  [[Feature Requests#Timer_Record_enhancements|Timer Record enhancements]]
TBP
 

Latest revision as of 16:52, 27 March 2020

Proposal pages help us get from feature requests into actual plans. This page is a proposal to improve Timer Record
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 Problems

There are many existing feature requests for Timer Record lodged in the Wiki relating to usability improvements. For example:

  • The current implementation of Timer Record operates as an "unattended recording" rather than a proper timed recording in that most of Audacity's recording controls are unavailable to the user once a "Timer Record" has been initiated. In particular the levels cannot be re-adjusted once Timer Record has been initiated but also the zoom level and resizing of tracks cannot be accessed. Also labels and markers cannot be dropped. This is a prominent feature request.

Proposed Features

  1. Timer Record to enable access to the normal set of recording controls.
  2. Ability to change the event times
    • The above two to be an option that the user can turn on
  3. Add a Timer Stop to be available for manually initiated recording.

Developer/QA Backing

  • Peter Sampson: I support full access to the controls during Timer Record, including adding the ability to alter the end-time or duration of the timed recording
    • Gale 25Feb15: I think the lockout while recording is over-enforced. I can see no good reason to dispense with metering and access to Mixer Toolbar. Perhaps, input/output sliders should be available in both the Waiting to Start and Record Progress dialogs.

Use Cases

  1. Access to controls: User uses Timer Record while they are active on their computer (on other, non-Audacity, tasks) so that they do not forget to start a live FM broadcast capture from the radio at a time in the future. In that case they need access to the recording controls.
  2. Timer Stop: User has activated a long recording process manually and then has to leave the computer unattended. Timer Stop would provide a safety measure so Audacity does not record endlessly until the hard drive is full and the recorded session becomes jeopardized.

Details

  • Controls: Timer Record to facilitate availability of all the normal set of Audacity recording controls:
  1. use of the Mixer Toolbar sliders to adjust the signal level
  2. drop markers/labels with Ctrl + B and Ctrl + M,
    • Edit labels
    • Label deletion via context menu
  3. zoom in/out,
  4. pause and un-pause recording (Note that this merely temporarily interrupts the recording; it does not extend the recording time),
  5. change the track size,
  6. rename the track,
  7. change the waveform display type.


  • Ability to change the event times:
    • Add the ability to change (extend or shorten) the recording stop time during recording. Would require a modification to the "Audacity Timer Record Progress" dialog box.
    • Add the ability to change (extend or shorten) the recording stop time or the start time while waiting to record. Would require a modification to the "... Waiting for Start" dialog box.
      • This is less critical than the ability to change while the recording is ongoing as the user has the workaround of Cancelling the waiting Timer Record dialog and setting up a fresh Timer Record.
    • Would need to invoke the "Error handling (or warning) on potential disk full situation" if and when that is implemented


  • Access to be a user-option
    • The above items should be an option that the user can opt to turn on
    • Either from within the Timer Record setup dialog - or as a Recording Preference.


  • Add a Timer Stop to be available for manually initiated recording.
    • Provide a Timer Stop to be available for a manually initiated recording to be stopped after a settable time, possibly implemented by making the Timer Record dialog available after recording has been initiated.
    • Presumably this could be implemented by providing access for the user to the Timer Record setup dialog while a recording is active.


  • Ability to minimize the Timer record Window
    • Timer Record to behave like a proper Windows window so that it can be minimized to the Applications bar with the minimize button in the Audacity window.
      • Gale: Bug 104 relates to this.
      • Gale: It would be quite odd on Windows to be able to minimize an app having a modal window (though Ubuntu allows it). So making Timer Record dialog modeless (for the current project) would be one solution.


GUI Examples

TBP

Previous Feature Requests relating to this proposal

  • Access to progress or record controls: (18 votes 27Mar20)
    • Both dialogs should be modeless for current project, allowing access to same controls available during standard recording (16 votes) This lets you change levels, pause manually, drop a label, zoom in/out or resize tracks, plus it lets Audacity on Windows be minimised while Timer Record is in progress.
    • Waiting for Start dialog should be modeless for all (or at least, other) projects: (5 votes) allowing to work normally until recording starts
      This raises all manner of issues about what happens if user is in the middle of playing / exporting when recording is due to start.

      Peter 15Mar16: My PVR deals with this by giving me a ten and five minute warning of a scheduled recording or channel change. If I ignore it the recording or channel change takes precedence at the prescribed time.

      Peter 04Feb17:Mark Young has dealt with this in 2.1.3 by ensuring that for Timer Record the user must have that sole project open. No other projects can be open when setting up a Timer Record - and none can be opened after the Timer Record is set up.

For further detail see Timer Record enhancements