Skip to content

DVM Console NEO 0.6.0

Choose a tag to compare

@github-actions github-actions released this 31 Aug 05:42
· 23 commits to neo since this release

DVM Console NEO 0.6.0

Version 0.6.0 completes the first portability refactor. It keeps macOS and
Windows as the supported runtime targets while separating the console runtime,
shared Avalonia presentation, audio, vocoder, storage, and optional physical
PTT capabilities needed by future Linux, iOS, and Android hosts.

This release is based on the complete v0.5.5 runtime baseline. It includes the
v0.5.4 configuration-save, TAR correlation, typed FNE state, cancellable web
stream, receive lifecycle, decoder ownership, mixer-tail, and native-audio
reliability changes, plus the v0.5.5 canceled-stream Off-state correction.

Operator changes

  • File > Configuration Library manages configurations as immutable app-owned
    revisions. Opening an external YAML codeplug imports it; later saves never
    overwrite that source file.
  • File > New Configuration can create a complete configuration in Studio.
    YAML remains available through full and sanitized export.
  • View > Channel view > Cards/List selects the desktop renderer. Cards stay
    the default and retain their existing geometry and colors. List is virtualized,
    grouped by system and zone, and becomes the temporary renderer below 600
    logical pixels.
  • Card layout, routes, gain, balance, recording policy, encryption selections,
    groups, patches, and authorized web-stream state are stored per managed
    configuration. A compatible legacy layout is attributed during first import.
  • Configuration Studio and Console Settings use denser desktop rows while
    retaining responsive phone-width layouts and accessible touch targets.
  • Event History retains the newest 5,000 current-session calls and events even
    when they do not have TAR recordings. The compact Activity sidebar continues
    to show at most 100 matching entries, and TAR catalog retention is unchanged.

Portability boundaries

  • DvmConsole.Application owns the application-session façade, stable IDs,
    immutable runtime snapshots, commands, meters, logs, lifecycle coordination,
    recording playback, generated audio, web streams, and patches without an
    Avalonia dependency.
  • DvmConsole.Presentation owns reusable Avalonia controls, pages, view models,
    styles, responsive policy, List rendering, Configuration Studio, and the
    Configuration Library without desktop lifetimes, pickers, filesystem paths,
    serial ports, or native APIs.
  • Audio is split into abstractions, managed DSP/codecs, macOS CoreAudio,
    Windows WASAPI, and desktop selection projects. The Windows adapter is the
    only audio project that references NAudio.
  • Vocoder abstractions are separate from the current native implementation.
  • Focused/global keyboard and serial PTT live in desktop-only projects. The
    application accepts no physical PTT factories, leaving on-screen PTT
    available to a future mobile host.
  • Configuration, asset, and recording APIs use stable IDs and stream/document
    handles. Desktop-only path and reveal-in-file-manager behavior stays in the
    desktop host.

Reliability and efficiency

  • Runtime control snapshots are content-deduplicated; meter samples and logs do
    not rebuild the full console state. List meters are coalesced per dispatcher
    turn and ignore visually insignificant changes.
  • Programmatic gain restoration no longer feeds back as an operator command.
  • TAR playback decodes a first block before opening the output endpoint and
    records source, decoder, prefetch, endpoint, and first-output timing.
  • Configuration Library filesystem work runs away from Avalonia synchronization
    contexts while remaining compatible with the existing synchronous startup
    bridge.
  • Filesystem identities follow the target platform's case rules, avoiding
    accidental recording or revision collisions.

Removed

  • The unused external FFmpeg fallback and DVM_FFMPEG environment variable.
    Managed PCM WAV, MPEG/MP3, and Ogg Opus decoding remain supported.
  • The abandoned high-quality Bluetooth option and macOS native activation ABI.
    Ordinary Bluetooth route handling, cold-profile safety, Keep Mic Warm, and
    Apple Voice Processing remain unchanged.

Packages

Extract the complete archive before starting DVM Console NEO.

Platform Package
Apple Silicon macOS dvmconsole-0.6.0-osx-arm64.zip
Intel macOS dvmconsole-0.6.0-osx-x64.zip
Windows x64 dvmconsole-0.6.0-win-x64.zip

The packages are unsigned and not notarized. Signing and notarization status is
reported with the release.

Evidence and support boundary

Automated validation covers architecture boundaries, migrations, immutable
revisions, settings compatibility, desktop behavior, media/runtime behavior,
PTT release paths, and headless responsive rendering. Package checks cover
architecture, native libraries, documentation, privacy strings, private-data
exclusion, and size/file-count budgets.

This release does not claim Linux, iOS, or Android runtime support. Live FNE,
radio, default-device, Bluetooth, microphone, serial, and Windows hardware
acceptance remain distinct tests on the destination systems.

DVMHost/FNE R06A00 or newer is recommended. This software is for personal,
non-commercial, amateur, and educational use and must not be used in
public-safety or life-safety-critical applications.

This repository is an independently maintained downstream version of
DVMProject/dvmconsole.

For the complete history, see the
changelog.