Skip to content

v0.17.5

Choose a tag to compare

@almuleev almuleev released this 16 Oct 17:59
· 12 commits to main since this release

Скачать EXE / Download EXE · SHA-256

Русский

  • Удобнее правая панель: единый видимый диапазон в «Каналах», исправленные перекрытия и прокрутка.
  • Точнее выбор участка: подвижные границы с магнитом к исходным отсчётам, preview и Undo/Redo.
  • Больше удобства в разметке: карточки маркеров, размеры прицела и единый диалог точной линии.
  • Исправлены ползунки фильтра: без исчезновения дорожки и синих следов при резком движении.
  • Приоритет FFT/АЧХ: ненужный фоновый обзор отменяется и возобновляется при возврате к сигналу.

Клавиши режимов: S — Сигнал · F — FFT · R — АЧХ. Включены все изменения после v0.17.2.

EXE без цифровой подписи. Ранее отмеченные затраты RAM и прочие отличия производительности не объявляются устранёнными.

English

  • Cleaner side panel: shared visible-range controls in Channels, fixed overlaps and scrolling.
  • Precise analysis selection: draggable bounds with original-sample snapping, preview and Undo/Redo.
  • Better annotations: marker cards, selectable crosshair sizes and one exact-line dialog.
  • Reliable filter sliders: fixed disappearing tracks and blue remnants during abrupt drags.
  • FFT/FRF priority: unnecessary overview work is cancelled and resumes when returning to Signal.

Mode shortcuts: S — Signal · F — FFT · R — FRF. Includes every change since v0.17.2.

Executables are unsigned. Previously recorded RAM costs and other performance differences are not claimed fixed.


Полный журнал, проверки и ограничения / Full changelog, validation and limitations

Русский

Выпуск Windows x64 объединяет все изменения после последнего опубликованного
v0.17.2: локальные выпуски v0.17.3, v0.17.4 и v0.17.5. Основные изменения —
управление графиками, правая панель, выделенный участок анализа, фильтр и
приоритет FFT/АЧХ перед ненужным фоновым обзором. Методики FFT, H1/Welch и
coherence, исходные отсчёты и полные длины N/L сохраняются.

Правая панель и видимый диапазон

  • Общий блок «Видимый диапазон» расположен снизу вкладки «Каналы» в
    Сигнале, FFT и АЧХ. Поля «От» / «До», кнопка «Показать диапазон» и Enter
    задают исходное время в секундах либо частоты в герцах. В «Точках» и
    «Фильтре» блок скрыт; внизу «Точек» нет пустого места и лишней прокрутки.
  • Видимый диапазон меняет только просмотр: участок анализа, готовые расчёты
    и история разметки сохраняются. Проверяются конечность, порядок и допустимые
    границы; поля FFT/АЧХ отключаются до результата и на время вычисления.
  • Исправлены перекрытия названий каналов, коэффициентов, формул и полей.
    Общий layout согласует геометрию, видимость и прокрутку после смены режима,
    вкладки и обновления настроек; старые рамки и подписи не остаются на фоне.
  • Старые отдельные поля диапазона АЧХ удалены. Настройки и общий диапазон
    прокручиваются вместе и не перекрывают вкладки в небольшом окне.
    Если роли опор/откликов не заполнены, открытие АЧХ раскрывает «Каналы».
    Убраны лишняя подсказка и пустая строка параметров ещё не рассчитанной АЧХ.

Участок анализа и навигация

  • Рабочая область сохраняет исходные цвета кривых, сетки и фона. Исключённые
    области отмечены нейтральной диагональной штриховкой и лёгким затемнением.
    Границы контрастны, имеют увеличенные ручки сверху/снизу и подсветку наведения.
  • Границы можно перетаскивать без Shift, в том числе в режиме точек и при
    замке разметки. Движение даёт preview, отпускание — одну запись Undo/Redo.
    Escape, ПКМ, потеря capture и смена документа отменяют незавершённый жест.
    Явно выбранный инструмент линии/маркера сохраняет приоритет.
  • Магнит привязывает границу к ближайшему по X/Y исходному отсчёту видимой
    обработанной кривой. В дисковом режиме используется отменяемый асинхронный
    поиск исходного значения; обзорный экстремум не подменяет отсчёт.
    Учитываются скрытые каналы и склейка времени; отменённый ответ не применяется.
  • Над графиком показаны начало, конец и длительность участка, включая preview
    и границы вне экрана. При скрытии разрывов явно указано исходное время.
  • Исправлены Shift+колесо и горизонтальное колесо для обычной/склеенной оси
    и АЧХ. В режиме точек нижний график средней опоры АЧХ снова поддерживает
    панорамирование и масштабирование по высоте без постановки лишней точки.

Разметка и инструменты

  • Магнит вынесен в общую кнопку для точек, линий и маркеров. Группы
    «Курсор / Точки», «Маркер / Линия», «Магнит / Замок» визуально разделены.
  • Прицел имеет тонкие линии и заметный центр; в настройках доступны размеры
    17/21/25/31/41/49/63 px, по умолчанию 31 px. Выбор сохраняется в INI.
  • После постановки, выбора или наведения текущий маркер показывает компактную
    карточку t/Y, f/A или f/|H| с единицами. Она остаётся внутри графика,
    скрывается крестиком или через «Вид → Значения маркеров» и использует
    сохранённые координаты без повторного чтения записи.
  • Горизонтальная и вертикальная линии маркера остаются видны независимо,
    пока соответствующая координата находится в пределах графика.
  • Точная вертикальная/горизонтальная линия задаётся одним тематическим
    диалогом «Задать линию (точно)» с проверкой числового значения.
  • «Скрывать разрывы времени» относится к оси документа, а «Отмечать разрывы
    времени» — к общей настройке приложения. Показ маркеров разрывов одинаков
    для всех файлов, хранится в INI и не подменяется старым проектом.

Фильтр и память

  • Ползунки обеих частот оформлены для светлой/тёмной темы. Исправлены пропажа
    дорожки/бегунка и синие следы при резком движении с удержанием мыши.
    Полный буферизованный кадр обновляется на каждом событии движения.
  • При пересечении границ сохраняется редактируемая частота, вторая подстраивается.
    Обе позиции и подписи согласованы; preview не применяет фильтр и не создаёт
    Undo, отпускание создаёт одну запись истории.
  • RAM и дисковый кэш настраиваются отдельно. Автоматический RAM-бюджет
    учитывает свободную RAM/commit и резерв системы, ручной — 64–65536 MiB.
    Это бюджет данных и расчётов, а не предел памяти всего процесса.
  • Дисковая квота: 64–1048576 MiB, по умолчанию 2048 MiB, либо без ограничения
    объёма; предел 256 записей сохраняется. Активные lease защищены от удаления,
    уменьшение квоты ниже занятого ими размера отклоняется. Исходные записи и
    отдельные временные FFT/FRF workspace этой квотой не ограничиваются.

Горячие клавиши

Основные режимы: S — Сигнал, F — FFT, R — АЧХ. Старые стандартные T и
Ctrl+R мигрируют только при свободных S/R. Пользовательские назначения и
явно снятые сочетания сохраняются; конфликты новых стандартных клавиш не
перезаписывают существующие назначения. Все команды доступны в настройках и F1.

Команда По умолчанию
Курсор / навигация N
Магнит / замок разметки G / L
Точная линия Shift+L
Правая панель B
Каналы / Точки / Фильтр Ctrl+1 / Ctrl+2 / Ctrl+3
Фильтр / скрытие разрывов времени Shift+F / Shift+G
Значения маркеров / легенда / фигуры кривых Shift+M / Ctrl+Shift+L / Shift+C
Участок анализа / видимый участок / вся запись Ctrl+I / Ctrl+Shift+I / Ctrl+Alt+I

Команды вкладок раскрывают панель. Команды фильтра/разрывов работают через
акселераторы; ввод в текстовых полях защищён от команд графика.

Приоритет FFT/АЧХ и очистка

  • Переход из Сигнала в FFT/АЧХ кооперативно отменяет ненужный фоновый обзор
    перед анализом. Нет ожидания потока в UI; готовые index/view, исходник и
    рабочий поток сохраняются. Поздние отменённые результаты отбрасываются.
  • При возврате в Сигнал отменённое уточнение плотности/каналов запрашивается
    заново. Полностью готовый совпадающий вид переиспользуется. Численная ревизия,
    участок анализа и Undo не меняются; анализ получает полные исходные данные.
  • Удалены 20 подтверждённо неиспользуемых элементов: четыре функции, 13 полей
    и три таймера, чистое сокращение — 76 строк производственного C++.
    Номера команд, тестовые API и поведение старых обработчиков сохранены.

Проверки и измерения

  • 1357 проверок ядра и 8654 GUI-проверки прошли. Из чистого тега v0.17.5
    выполнены полные штатные сборки CLI/GUI и GUI-регрессия; проверены версии
    ресурсов обеих программ, CLI-чтение/FFT/CSV и SHA-256.
  • Все 28 групп полных FFT/H1 совпали с frozen-эталоном в Auto и Manual
    64 MiB: raw/processed, фильтр, выбранный участок и возврат к raw.
    При очистке все 11 контрольных PNG совпали побайтово по SHA-256.
  • Контрольная пара на 58 185 676 байт, N=337132, восемь каналов источника,
    FFT одного канала, Manual 64 MiB и незавершённый обзор: первый FFT
    8.3187 → 1.9168 с, повторный 2.2120 → 1.9221 с. Полные результаты
    совпали. Это отдельные запуски, не медианы и не универсальное ускорение.
  • Узкий аудит rc.3/v0.17.4 локализовал прежние +52% первого FFT в конкуренции
    с фоновым чтением обзора; это не доказанная регрессия математического ядра.
  • Сохранённая широкая серия rc.3/v0.17.2/v0.17.3: 46 API-сценариев, 2484
    вызова, 27 процессов GUI-анализа и 54 процесса навигации; совпали 92 группы
    отпечатков. Пять открытий 10 GB — единичные наблюдения, без медиан.
    Эти результаты относятся к прежним версиям, новой широкой серии v0.17.5 нет.

Известные ограничения и поставка

  • Ранее зафиксированный рост Peak WS и остальные отличия производительности
    v0.17.2 не объявляются устранёнными. Бюджет данных не ограничивает весь процесс.
    Disk-фильтрация может требовать прогрева префикса, FFT — scratch и времени;
    большой Direct/Auto L может вернуть ResourceLimit без уменьшения N/L.
    CLI загружает исходную запись в RAM.
  • Нового полного анализа 10 GB, проверки физического ПК с 8 GiB и сравнения
    FAMOS нет. Текущая область испытаний — до 10 000 000 000 байт включительно;
    новые 20 GB испытания исключены. Это область проверки, не предел открытия.
  • EXE этого выпуска не подписаны. Предупреждение Windows/Edge возможно.
    Политика и инфраструктура подписи сохранены; действительная подпись этим
    выпуском не заявляется. Старые теги, файлы и releases не заменяются.

Поставка: готовый GUI AMSignal-0.17.5-x64.exe и SHA256SUMS.txt.
Документация, GNU GPLv3 LICENSE и исходный код доступны в репозитории.

English

This Windows x64 release includes every change since the last published
v0.17.2: local versions v0.17.3, v0.17.4 and v0.17.5. It improves graph
controls, the side panel, analysis selection, filtering and FFT/FRF priority
over unnecessary background overviews. FFT, H1/Welch and coherence methods,
original samples and complete N/L lengths are preserved.

Side panel and visible range

  • Signal, FFT and FRF share a Visible range block at the bottom of
    Channels. From/To, Show range and Enter use original seconds or Hz.
    Points and Filter hide it; Points has no empty reservation or extra scrolling.
  • Range changes affect the viewport and preserve analysis selection, computed
    results and annotation history. Fields validate finite, ordered, available
    endpoints and are disabled before FFT/FRF results or during computation.
  • One layout owns geometry, visibility and scrolling, fixing overlapping
    labels, multipliers, formulas, range fields and stale frames after mode/tab
    changes or refresh. FRF settings and range scroll together below the tabs.
  • Old separate FRF range fields, redundant guidance and the empty parameter
    placeholder are removed. Missing reference/response roles reveal Channels.

Analysis interval and navigation

  • The working area retains original plot colors; excluded areas use neutral
    diagonal hatching and light shading. Contrast boundaries have larger top/bottom
    handles and hover feedback, without false handles for offscreen boundaries.
  • Drag bounds without Shift, including in point mode and with annotations
    locked. Movement previews; release creates one Undo/Redo action. Escape,
    right-click, capture loss or document changes cancel the gesture. Explicitly
    armed line/marker tools retain priority.
  • Magnet snaps bounds to the nearest original sample by X/Y on visible processed
    curves. Disk views use cancellable asynchronous source lookup, preserving
    stitching and hidden-channel rules. Overview extrema never replace samples;
    cancelled final lookups cannot apply stale bounds.
  • Start/end/duration labels include preview and offscreen bounds; stitched
    views explicitly identify original time. Shift+wheel/horizontal wheel work
    across normal/stitched time and FRF. In point mode the lower mean-reference
    FRF plot supports panning/vertical scaling without adding a point.

Annotations and tools

  • A shared Magnet button serves points, lines and markers, with separated
    Cursor/Points, Marker/Line and Magnet/Lock groups.
  • The thin crosshair has a clearer center and selectable 17/21/25/31/41/49/63 px
    sizes, default 31 px, persisted in INI.
  • The current marker has a compact in-plot coordinate card for t/Y, f/A or
    f/|H| with units, using stored values without rereading the recording. Close
    it directly or through View → Marker values. Marker horizontal/vertical
    lines remain visible independently while the corresponding coordinate is in view.
  • One themed exact-line dialog selects vertical/horizontal direction and a
    validated value. Hide time gaps belongs to each document's axis; Mark time
    gaps is global, persisted in INI and unaffected by older project settings.

Filtering and memory

  • Both frequency sliders follow light/dark themes. Fixed disappearing tracks/
    thumbs and blue remnants during abrupt held drags. A complete buffered frame
    is painted synchronously on each move.
  • Crossing bounds preserves the edited frequency and adjusts the other bound.
    Both labels/positions stay synchronized. Preview neither applies the filter
    nor adds history; release creates one Undo action.
  • RAM and disk cache controls are separate. Auto RAM admission considers available
    RAM/commit and system headroom; manual admission is 64–65536 MiB. This is a
    data/analysis budget, not a process-wide memory cap.
  • Disk cache accepts 64–1048576 MiB, default 2048 MiB, or unlimited bytes, with
    the 256-entry limit retained. Active leases are protected; reducing the quota
    below their occupied size is rejected. Source files and separate temporary
    FFT/FRF workspaces are outside this quota.

Keyboard shortcuts

Main modes: S — Signal, F — FFT, R — FRF. Previous defaults T/Ctrl+R migrate
only when S/R are free. Custom assignments and explicitly cleared shortcuts
are preserved; conflicting new defaults do not overwrite existing bindings.
All commands are available in Settings and F1.

Command Default
Cursor/navigation N
Magnet / annotation lock G / L
Exact line Shift+L
Side panel B
Channels / Points / Filter Ctrl+1 / Ctrl+2 / Ctrl+3
Filter / hide time gaps Shift+F / Shift+G
Marker values / legend / curve shapes Shift+M / Ctrl+Shift+L / Shift+C
Analysis interval / visible interval / entire recording Ctrl+I / Ctrl+Shift+I / Ctrl+Alt+I

Tab commands reveal the panel. Filter/gap commands handle accelerators while
text entry remains protected from graph shortcuts.

FFT/FRF priority and cleanup

  • Switching from Signal to FFT/FRF cooperatively cancels unnecessary overview
    work before analysis. There is no UI thread wait; ready index/view objects,
    the source and reusable worker are retained. Late cancelled results are rejected.
  • Returning to Signal resubmits cancelled density/channel refinement; fully
    ready matching views are reused. Numerical revision, selection and Undo stay
    unchanged, and analysis uses complete original data.
  • Removed twenty confirmed unused elements: four functions, thirteen fields
    and three timers, reducing production C++ by 76 lines. Command IDs, test APIs
    and legacy handler behavior remain intact.

Validation and measurements

  • 1357 core checks and 8654 GUI checks passed. Clean v0.17.5 standard full
    CLI/GUI builds and GUI regression passed; both executable version resources,
    CLI parsing/FFT/CSV and SHA-256 were checked.
  • All 28 complete FFT/H1 groups matched a frozen baseline in Auto and Manual
    64 MiB, covering raw/processed, filtering, selected intervals and return to raw.
    All eleven cleanup control PNGs matched byte for byte by SHA-256.
  • One controlled pair: 58185676-byte input, N=337132, eight source channels,
    one FFT channel, Manual 64 MiB and pending overview. First FFT changed
    8.3187 → 1.9168 s, repeated FFT 2.2120 → 1.9221 s, with complete
    matching results. These are individual runs, not medians or universal speedups.
  • A focused rc.3/v0.17.4 audit traced the earlier +52% first FFT to competing
    overview reads, rather than establishing a mathematical FFT kernel regression.
  • The retained broad rc.3/v0.17.2/v0.17.3 series includes 46 API cases, 2484
    calls, 27 GUI analysis processes and 54 navigation processes; all 92 fingerprint
    groups matched. Five 10 GB openings are individual observations without medians.
    These measurements belong to older versions; no broad v0.17.5 series was run.

Known limitations and distribution

  • Earlier v0.17.2 peak RAM growth and other performance differences are not
    claimed fixed. Admission is not a process-wide cap. Disk filtering may require
    prefix warm-up, disk FFT needs scratch/time, and large Direct/Auto L can return
    ResourceLimit without silently reducing N/L. CLI input remains resident.
  • No new full 10 GB analysis, physical 8 GiB PC validation or FAMOS comparison.
    Current testing covers up to and including 10000000000 bytes; new 20 GB tests
    are excluded. This is validation scope, not an artificial opening limit.
  • These executables are unsigned. Windows/Edge may display a warning.
    Signing policy/infrastructure remain available; this release does not claim
    an actual signature. Existing tags, files and releases are preserved.

Distribution: ready-to-run GUI AMSignal-0.17.5-x64.exe and SHA256SUMS.txt.
Documentation, GNU GPLv3 LICENSE and source code are available in the repository.

Full version-specific notes: v0.17.3,
v0.17.4,
v0.17.5.
All changes since v0.17.2.