Audiotool board archive

Expanding on Idle Devices

Apollo · started 2020-04-15 12:24 · updated 2020-04-15 17:12

The new idle devices feature is an interesting implementation, though there are some additions that could prove to make it more comprehensive:

Idle devices with timeline tracks (patterns and note regions especially) that aren't empty will still read as idle and would be selected when clicking "Select all idle devices"/deleting them. This could lead to inadvertently losing work. If this is the case, perhaps a confirmation could appear to negate that. "Delete device(s)? Device(s) in the selection contain note regions you'll lose" (probably a better message than that though)

I notice the Merger in the screenshot of the https://www.audiotool.com/board/news/display_idle_devices post is not read as Idle, however there is no incoming input and it is technically Idle because of that (even though it is connected to the Centroid). With 1 in mind, perhaps there is a spectrum of what Idle means and perhaps that can be reflected accordingly by the indicator icon

Comments (8)

2020-04-15 14:20 · 2020-04-15
  1. Selection doesn't need to be revised, the current implementation is fine. I just suggest a warning if deleting a partially idle device (see 2.I.b.) >> If selection contains partially idle device, wrap deletion process in confirmation
  2. From my understanding, audiotool consists of input/output devices (AudioTrack being the only exception). A flag for each interface may be sufficient: receivesInput (connected to a device whose sendsOutput flag is true) sendsOutput defined by producing or carrying signals via note/pattern track or audio. This in mind, I'd say that yes, a synth with an empty note region should be considered idle because it is not producing anything.
    I'd propose the following (correct me if I'm missing something)
    I. Idle Device
    ‍‍‍ a. Fully Idle (no output) (red/orange icon?)
    ‍‍‍ b. Partially Idle (disconnected with output) (yellow icon?)
2020-04-15 14:41 · 2020-04-15
  1. I'm not sure I fully understand your point on 1 then, could you expand? The studio doesn't hold data about selected devices? The confirm would only show if the user is deleting devices that are partially idle (regardless of how device(s) were selected)
  2. I see, if in this case its a synth with a note track it would be partially idle, but fully idle as long as there is no signal out. But I understand there are likely several cases for this
2020-04-15 15:04 · 2020-04-15
  1. Sorry, I'm not following entirely. Just to verify we're on the same page, what do you mean by "origin" and "where the selection has been assembled". If selected items are shared, as you say, you could run a test on the selected devices, something like:
    [ ...selectedDevices ].some(device => device.partiallyIdle)
2020-04-15 15:14 · 2020-04-15
  1. That's fair, I'd like to see how this works in practice
2020-04-15 15:32 · 2020-04-15
  1. Ah, you're right, it doesn't really have anything to do with Idle devices, but rather any device with "complex assets" as you say. As to where to draw the line, I think preventing the loss of modified note regions and patterns should be considered. Not sure if there's anything you'd want to add
2020-04-15 16:44 · 2020-04-15
  1. Is including non-default patterns or presets/not empty note regions a fair definition of "complex assets"?
  2. The new implementation looks better! This solves the issue brought up by the screenshot well. Though I recognise this as a fairly complex implementation now, one issue I still have has to do with "partially idle" devices. For example:
  • Connecting a producing device to the main out (or some chain connected to the main out) will still render the chain as "not idle" even if the device is not producing any output (this may be simplified to just having an active, non-empty note/pattern track)
2020-04-15 17:05 · 2020-04-15

Okay that's fair. The current implementation is better in my opinion, though if possible, being able to draw the line could work to improve it. Is it possible to draw a line somewhere that eliminates potential edge cases?

2020-04-15 17:12 · 2020-04-15

Yes, that works for me, I appreciate the discussion! c;