uli.brueggemann hat geschrieben:Wenn mir jemand sagt wie man all die Funktionen intuitiv klar in einer GUI zusammenbringt, mach ich das gern. Logisch, man könnte auch zig Untermenüpunkte unter CutNWindow realisieren. Was dann auch umständlich ist, wenn man anhand des Menütitels falsch denkt und einen falschen Punkt wählt. Was dann rein und raus aus den Menüs bedeutet.
So ist das mit Benutzerschnittstellen.
Jau, wie man's macht is immer nix
Mal ein Vorschlag für ein Redesign nur lokal, also die Cut/Window/Fade Eingabe-Maske (wie sie heißen könnte, weil auch Fades sind ja eine Anwendung einer Fensterung, halt ohne schneiden):
Code: Alles auswählen
------------- Range -----------
Start [value] Stop [value]
Center [value] Length [value]
[ ] Auto-align window on peak :
(*)left ( )center ( )right. Offset=[value]
[*] Cut
[ ] Window Function([function-list]) :
( *)right-sided ( )symmetric ( )left-sided
[ ] Remove DC
[OK]
Start bzw Stop sind die Nummer des ersten bzw letzen Samples (incl.), also stop>=start.
Center ist die Nummer des als mittig definierten Samples (bei gerader Länge aufgerundet zum nächsten Wert), start<=center<=stop.
Alle drei könnten auch negativ sein oder größer als das File lang ist, es wird nur der sich mit dem vorhandenen Bereich überlappende Teil verrechnet (schlimmstenfalls keiner, ggf mit Warnung). Wäre ggf nützlich für flexiblere Fades.
Length ist die Anzahl Samples, lenth>0.
Genau zwei der vier Parameter "Start...Length" müssen gegeben werden (die beiden zuletzt editierten), die anderen werden dann berechnet und dargestellt, sind aber weiterhin editierbar und werden dann wieder aktiv. Der letzte editierte Wert wird schwarz kursiv dargestellt, der vorletzte schwarz, und die inaktiven grau.
Editiert man "Length" (default:65536), erscheint ein Liste mit Zweierpotenzen zum Auswählen, aber man kann auch einfach einen Wert reinschreiben (so ist es zB in Audition clever gemacht).
Die anderen defaults sind dann 0(Start), 65536(Stop) 32768(Center).
Voraktiviert bei Maskenstart sind Start und dann Length, als hätte man bereits die beiden in der Reihenfolge editiert.
Hört sich jetzt alles komplizierter an als es ist. Alle vier Werte sind immer gültig und aktuell, und immer genau zwei sind aktiv (und führen die anderen beiden nach), nämlich die letzten zwei die man editiert/geändert oder bestätigt hat. Und aus der Editierfunktion kommt man nicht raus ausser durch gültigen/sinnvollen Wert oder Abbruch (ESC)
Setzt man "Auto-align", wird das Fenster automatisch zum Peak platziert, entweder linksbündig (default), mittig oder rechtsbündig zum Peak, und man kann einen optionalen Offset zum Peak angeben (negativ == links vom Peak, früher. Default:0). Damit sind auch "Start" "Stop" und "Center" nicht relevant und folglich inaktiv, nicht erreichbar, ausgegraut (werden aber mit den berechneten Werten aufgefüllt und angezeigt). Nur "Length" ist dann aktiv.
Anderfalls (default) sind entsprechend die drei radio buttons und "Offset nicht erreichbar.
Will man schneiden (default), setzt man "Cut", aber zum Fäden würde man es löschen. Setzt man beide nicht, kann man halt nur DC removen als sinnvolle Anwendung
Setzt man "Window" nicht (default), ist es halt nur ein Cut, setzt man es, kommt die Fensterfunktion (Drop-Down) dazu mit der Angabe welche Seite der Fenster- bzw Fade-funktion man nehmen will, rechte Seite (default), beide (symmetrisch), linke Seite.
...irgendsowas in der Art, mit leicht "mitdenkendem" Verhalten, sodass man bequem auf mehrere Art und Weise den Bereich und die Optionen angeben kann und genau sieht was verwendet wird bzw sich berechnet.
Ganz edel wäre eine graphische Miniatur-Voransicht des (Roh-)Zeitsignals und der Window-Funktion, oder auch das vorherige Setzen und dann im Cut&Window Übernehmen von Marken...