Releases: luigifcruz/CyberEther
V1.0.0 (Alpha 5)
This is another alpha release of CyberEther with multiple bug fixes and quality-of-life improvements!
This release is not particularly stable because of extensive Render changes. If you are having problems, it might be worth to downgrade to Alpha 4. The next Alpha 6 release should make things much better.
Featured
- Text rendering in Lineplot.
- Better line anti-aliasing for plots.
- Added multi-draw and instancing support for Vulkan, Metal, and WebGPU.
- Huge amount of bug fixes and quality-of-life improvements.
What's Changed
- Added module yielding for variable rate compute.
- Implemented interactive cursor for Lineplot.
- Added Font and Text Components to Render system.
- Created Components class in Render.
- Moved texture and buffer declarations to Window level.
- Added multi-draw support for Vulkan, Metal, and WebGPU.
- Implemented viewport debug view in compositor.
- Added clear color configuration for Render Surface.
- Optimized Text Component buffer updates.
- Improved Render resources unbinding.
- Fixed macOS trace trap, CUDA Tensor Copy, and compositor race condition.
- Refactored buffer element byte size for platform-specific types.
- Moved static assets to external folder.
- Harmonized Lineplot shaders.
- Removed option to disable ImGui.
- Added "Hello World" example with pause functionality.
- Updated alpha blending configuration for SDF.
- Implemented client local address passing to headless server.
- Update
fmtlib
tov11.0.2
. - Update Naga (WGSL) to the latest version.
Known Issues
- The output of a CUDA-backed block can't be connected to a CPU-backed block.
- Fix expected in the next alpha release.
- No Intel-based macOS binary is available for this release.
- GitHub Actions is a bit flaky with macOS but this should be solved in the next release.
Full Changelog: v1.0.0-alpha4...v1.0.0-alpha5
Running
Warning
CyberEther is in Alpha. Expect bugs, missing features, and breaking changes.
It's recommended to build it from the source. The complete install instructions are available in the README. If you don't want to do that, try using the binaries below. For macOS and Linux, you will need to install the runtime dependencies described in the README for your system for the binaries to work. Future releases will package dependencies together with the binary.
V1.0.0 (Alpha 4)
This is another alpha release of CyberEther with multiple bug fixes and quality-of-life improvements!
Featured
- Better line anti-aliasing for Lineplot.
- New API-independent computer Kernel for Render.
- New
SigMF
sink block. - Huge amount of bug fixes and quality-of-life improvements.
What's Changed
- Removes unnecessary public headers.
- Adds real number support in Amplitude module.
- Adds
Arithmetic
module for addition, subtraction, division, or multiplication along an axis. - Creates custom serialization and deserialization API of custom types (e.g. enum).
- Adds panning and zoom to the Lineplot block.
- Adds anti-aliasing (MSAA) to render surfaces in
Vulkan
andMetal
backends. - Adds averaging option to the Lineplot block.
- Fixes multiple bugs.
- Adds
CUDA
backend toArithmetic
andDuplicate
modules. - Treats backtick enclosed words with emphasis in Markdown.
- Adds Taints to modules for feature identification.
- Cleans headers imports.
- Moves Tensor methods from header to source files.
- Changes tensor slice method name from
view
toslice
. - Adds assertions for non-contiguous tensors in modules.
- Improves compile-type automatic system identification (#62)
- Enables pedantic compiler warnings by default.
- Installs Catch2 automatically in case a suitable version is not found (#71)
- Fixes
NVENC
colorimetry in headless remote mode. - Adds tensor
Slice
block. - Adds partial support for Intel-based Macs with Vulkan (#49)
- Enables the Intel macOS build CI.
- Improves preview scaling.
- Reduces terminal output. Old log volume available with
JST_DEBUG=3
env. - Updates Metal bindings for C++.
- Saves or opens files on enter or dialog confirmation in the compositor.
- Adds file format filtering in file picker on macOS.
- Adds fullscreen mode for flowgraph blocks. Very useful for headless remote sessions.
- Adds FAQ question
Is CyberEther web-based?
. - Aligns all graphical backends to encode present modules on frame begin.
- Replaces custom web-based
libusb
implementation with upstream. - Fixes bug preventing block deletion when connected to another block.
- Fixes bug resetting block state when type changed.
- Fixes empty Tensor interoperability.
- Improves legibility of parser errors.
- Implements flowgraph rewind when block configuration change causes dependency error.
- Adds Tensor
reshape
method block. - Implements more assertions for Tensor
slice
method. - Add initial Tensor Storage unit tests.
- Create
SigMF
sink block. - Create compute Kernel element for render.
- Refactor thick-line drawing mechanism with compute Kernel.
- Update WebGPU to the latest version.
- Implement better anti-aliasing in Lineplot.
Known Issues
- The output of a CUDA-backed block can't be connected to a CPU-backed block.
- Fix expected in the next alpha release.
- No Intel-based macOS binary is available for this release.
- GitHub Actions is a bit flaky with macOS but this should be solved in the next release.
Full Changelog: v1.0.0-alpha3...v1.0.0-alpha4
Running
Warning
CyberEther is in Alpha. Expect bugs, missing features, and breaking changes.
It's recommended to build it from the source. The complete install instructions are available in the README. If you don't want to do that, try using the binaries below. For macOS and Linux, you will need to install the runtime dependencies described in the README for your system for the binaries to work. Future releases will package dependencies together with the binary.
V1.0.0 (Alpha 3)

This is another alpha release of CyberEther with multiple bug fixes and quality-of-life improvements!
Featured
- Initial CUDA support for the main blocks. Spoiler: It's fast!
- Windows support is now at Alpha level.
- Lots of quality-of-life improvements and bug fixes. Largest change-log yet!
- Experimental Apple Silicon binary.
What's Changed
- Fixes compiler warnings.
- Adds tooltip information for detaching link (#42)
- Adds automatic macOS build for the Apple Silicon.
- Adds CUDA support for scheduler using NVRTC via Just In Time compilation.
- Cleans header imports.
- Adds locality methods
host_native
anddevice_native
inTensorBuffer
. - Adds
Tensor
interoperability fromCPU
toCUDA
, andCUDA
toCPU
. - Adds
Memory::Copy
for contiguousTensors
fromCUDA
,CPU
, andMetal
. - Refactors
Amplitude
,Lineplot
,Waterfall
, andSpectrogram
modules to usepimpl
. - Implements
CUDA
backend forFFT
,Amplitude
,Lineplot
,Waterfall
, andSpectrogram
modules. - Improves backend context sharing with module.
- Removes
Node ID
from block drop down. - Implements
CUDA
toVulkan
interoperability with zero-copyTensor
sharing. - Creates
ConvertToOptimalStorage
method to facilitate zero-copy data sharing between compute and present. - Creates
MapOn
method for quickTensor
interoperability. - Removes Hello World example in favor of the Custom Interface example.
- Bumps minimal CUDA version to
>=11.7
. - Adds shader based interpolation for Spectrogram module.
- Improves CPU backend performance in
Lineplot
module. - Adds frame queue lock while unbinding and binding surfaces.
- Refactors Instance API with new
start
andstop
methods. - Fixes FFT forward and inverse mapping with Metal backend.
- Disables Metal support on Intel-based Macs automatically.
- Adds further clarification about Intel-based compatibility (#65)
- Adds
TensorCircularBuffer
andJuggler
utilities to the memory namespace. - Refactors instance method
buildInterface
intobuild
with struct-based arguments. - Removes remaining
std::span
includes. - Fixes waterfall and spectrogram block overlap in spectrum analyzer example flowgraph.
- Fixes bug in compositor block resize logic that caused unwanted resizing during initialization.
- Fixes block coordinates export from systems with different scaling (#66)
- Fixes bug while deactivating a Soapy stream.
- Fixes Filter Taps block crash when zero heads (#68)
- Patches Note block markdown occlusion issue (#67)
- Adds data locality metadata to Tensor tooltip.
- Creates
Duplicate
module and block to copy Tensors.
Known Issues
- The output of a CUDA-backed block can't be connected to a CPU-backed block.
- Fix expected in the next alpha release.
- No Intel-based macOS binary available for this release.
- GitHub Actions is a bit flaky with macOS but this should be solved in the next release.
Full Changelog: v1.0.0-alpha2...v1.0.0-alpha3
Running
Warning
CyberEther is in Alpha. Expect bugs, missing features, and breaking changes.
It's recommended to build it from the source. The complete install instructions are available in the README. If you don't want to do that, try using the binaries below. For macOS and Linux, you will need to install the runtime dependencies described in the README for your system for the binaries to work. Future releases will package dependencies together with the binary.
V1.0.0 (Alpha 2)
This is another alpha release of CyberEther with multiple bug fixes and quality-of-life improvements!
Featured
- Real-to-Complex FFT support by @Paulo-D2000 in #55
- Support for in-flowgraph markdown documentation with the Notes block.
- Export and share your benchmark results here!
What's Changed
- Adds Windows file picker dialog (#45) [@Paulo-D2000]
- Implements real to complex FFT for CPU backend (#55) [@Paulo-D2000]
- Adds initial batch of unit tests.
- Adds the ability to create blocks inside blocks.
- Renames
Filter
block toFilter Taps
. - Creates the
Filter
block with the functionality ofFilter Taps
andFilter Engine
. - Adds the ability to export the benchmark in markdown format.
- Improves reliability of the Tensor library.
- Adds Windows cross-compilation Docker image and CI tests workflow.
- Improves README accuracy.
- Changes
buildDefaultInterface
method name tobuildInterface
. - Adds Markdown support for Block description text.
- Fixes Remote with older Gstreamer versions (<1.22).
- Cleans up unnecessary header exports.
- Updates Emscripten version to 3.1.51 with upstreamed HiDPI support.
- Updates ImGui version to 1.90.1.
- Fixes flowgraph mouse interaction erroneously triggering panning when a window hovers above.
- Introduces new Note Block with Markdown support.
- Fixes crashes when an invalid flowgraph file path is typed.
- Adds speaker selection to the Audio Sink block.
- Pins CPU memory with CUDA by default in supported platforms.
- Fixes crash while deleting blocks (#61).
- Adds assertions for FreeBSD (#62).
- Adds benchmarks for
Amplitude
,AGC
,Cast
,Constellation
,Spectrogram
,Waterfall
, andScale
modules.
New Contributors
- @Paulo-D2000 made their first contribution in #50
Full Changelog: v1.0.0-alpha1...v1.0.0-alpha2
Running
Warning
CyberEther is in Alpha. Expect bugs, missing features, and breaking changes.
It's recommended to build it from the source. The complete install instructions are available in the README. If you don't want to do that, try using the binaries below. For macOS and Linux, you will need to install the runtime dependencies described in the README for your system for the binaries to work. Future releases will package dependencies together with the binary.
V1.0.0 (Alpha 1)
This is the first alpha release of CyberEther. It's recommended to build it from source. If you don't want to do that, you can try use the binaries below. You will need to install the runtime dependencies described in the README for your system for this to work. Future releases will probably package them together with the binary.
Warning
CyberEther is in Alpha. Expect bugs, missing features, and breaking changes.