Skip to content

Releases: danartriyudistira/Syntetika-Studio

v1.1.3 - VideoPlayer 2x Speed Fix & Audio Device Sync

Choose a tag to compare

@danartriyudistira danartriyudistira released this 11 Jul 06:13

v1.1.3 — 2026-07-11

Critical Fix: VideoPlayer 2x Speed

Video playback previously ran at approximately 2x speed due to a mismatch between user-configured sample rate/buffer size and the actual audio device values. The global \gSampleRate\ and \gBufferSize\ variables were set from user preferences but never corrected when JUCE's audio device used different values.

Root Cause: \MainComponent.cpp\ only logged a warning when the actual device sample rate/buffer size differed from preferences — it did not update the global timing variables. This caused \gTime\ to advance at the wrong rate, making all time-dependent modules (including VideoPlayer) run too fast or too slow.

Fixes Applied

File Fix
MainComponent.cpp Sync \gSampleRate/\gBufferSize\ from actual audio device after \initialise()\
ModularSynth.cpp Sync \mIOBufferSize\ from \gBufferSize\ every callback; use \gBufferSize\ for \elapsed\
VideoPlayerModule.cpp Remove FloatSliderUpdated→SetPosition feedback loop that triggered seek every frame
VideoPlayerModule.cpp Remove double-seek in SetPosition (direct call + atomic flag)
MovieClip.cpp Fix \isFrameAvailable()\ — removed broken bounds check mixing native rate vs time_base
FFmpegReader.cpp Fix \�v_seek_frame\ — convert samples to stream time_base via \�v_rescale_q\

Portable Build

This portable zip includes full Python 3.13 stdlib (for scripting support) and FFmpeg DLLs (for video playback).

Note

Extract and run \Syntetika.exe\ directly — no installation required.

V1.1.2 — Visual Modules & Audio Spatial

Choose a tag to compare

@danartriyudistira danartriyudistira released this 09 Jul 16:11

Syntetika Studio v1.1.2

Rilis ini membawa modul visual baru, spatial audio binaural, DJPlayer, rewrite PatternMatrix, dan upgrade SpatialRender.


🎨 Modul Visual Baru

Modul Deskripsi
LissajousOut XY oscilloscope buffer audio dengan FBO output, grid, scale/color/zoom
MeshInstances3D 3D OBJ viewer audio-reaktif, orbit camera, instancing, FFT analysis
TriggerWaveEffect Efek visual beat-synced: Pulse, Glitch, Scanlines, All

🎧 Audio Spatial

  • EclipSpatialRender HRTF: Binaural spatial — ITD (Woodworth-Schlosser) + ILD
  • EclipSpatialSource: Sumber audio spatial dengan animasi + occlusion
  • SpatialRender upgrade: SaveState/LoadState, IVisualSource FBO, occlusion processing, per-source volume, orbit invert
  • SpatialDataSource: Shared data structures (SpatialSourceInfo, SpatialRoomInfo)

🎛️ DJPlayer

  • Serato-style DJ player — BPM sync + CUE points
  • Waveform display, click-drag scrub, scroll nudge/zoom
  • Deteksi BPM otomatis (immutable)

🧩 PatternMatrix Rewrite

  • 8 halaman (pages) — pattern data per slot per halaman
  • 32 max slots (sebelumnya 8)
  • Element grids di kanan — Rotary/Slider/Button column bands
  • Save format rev 7 — global bindings, page data

🔧 Modul Lainnya

  • FormantFilterEffect: 4 parallel formant bands
  • LadderFilter: Classic ladder filter
  • MidiChannelFilter: Per-channel MIDI filtering
  • MidiPlayer: MIDI file playback
  • BandLimitedOsc: Band-limited oscillator

🖼️ Infrastruktur

  • IVisualSource: FBO output interface (Source → MonitorModule)
  • GlShaderUtil: Shared GLSL compilation/linking + uniform caching
  • tinyobjloader: OBJ 3D model loader

🐛 Bug Fix

  • SpatialRender: stereo width, orbit animation XY plane + invert, thread safety
  • EclipSpatialRender: std::sort, const_cast fix, mutex, per-instance clock
  • PatternMatrix: 11 layout bugs
  • Python stdlib bundling via SYNTETIKA_PORTABLE
  • .gitmodules: missing libkeyfinder URL

📦 Download

File Deskripsi
Syntetika-Studio-v1.1.2-Portable.zip Portable — extract & jalankan Syntetika.exe

Catatan: VideoPlayerModule & VideoDrumSampler akan hadir di v1.1.3 (menunggu FFmpeg 8.x compatibility fix).

v1.1.1 — HRTF Overload Hotfix & Project Cleanup

Choose a tag to compare

@danartriyudistira danartriyudistira released this 03 Jul 04:09

v1.1.1 — HRTF Overload Hotfix & Project Cleanup

Critical Bug Fix

  • SpatialRender HRTF overload: Nested inner for (int s = 0; s < bufferSize; ++s) loop at line 255 removed — was running inside the outer per-sample loop, causing bufferSize× (256-512×) amplification into binaural output. Now uses outer s index directly, correct 1 sample per iteration.
  • SpatialRender brace mismatch: Missing } for mutex scope added — build was broken after HRTF refactoring.
  • Debug logging removed: HRTF debug printf (peak level per 60 callbacks) cleaned up.

Project Cleanup

  • Dead code removed: VisualNodeBase.cpp/.h, CodeEditorNode.h, VisualNode.h — all unused.
  • Stale artifacts deleted: build2/ (270 MB stale Ninja/Multi-Config build dir), build.log, dist/ (v1.0.0 installer), ignore/, Syntetiscope.cpp/.h.

Full Changelog

v1.1.0...v1.1.1

v1.1.0

Choose a tag to compare

@danartriyudistira danartriyudistira released this 24 Jun 14:22

Full Changelog: v1.0.0...v1.1.0

v1.1.0

Choose a tag to compare

@danartriyudistira danartriyudistira released this 22 Jun 06:28

Synthetika Studio v1.0.0

Rilis perdana Synthetika Studio — Open Experience Composition Platform.

Fitur

  • Node-based architecture — modular signal routing dengan koneksi visual real-time
  • Real-time audio processing — engine audio performa tinggi untuk live performance
  • Spatial Audio — SpatialRender + SpatialSource untuk audio 3D multi-speaker
  • MIDI ecosystem — sequencer, generative MIDI, controller mapping
  • Python scripting — otomasi dan ekstensi via pybind11
  • Ableton Link — sinkronisasi tempo dengan Ableton Live dan software lain
  • VST2 support — gunakan plugin VST favorit (non-FOSS build)
  • Microtonal tuning — dukung berbagai sistem tuning via tuning-library
  • Cross-platform — Windows, macOS, Linux

Baru di rilis ini

  • LayerComposition — modul visual 4-8 layer compositor (blend modes, opacity, scale, position)
  • ImageLoaderModule + GIFAnimator — dukungan gambar PNG/JPG/GIF dengan animasi
  • VisualFBO — framebuffer object untuk rendering visual
  • DisplayManager — modul manajemen tampilan multi-source

Perbaikan

  • Thread safety: Transport, DisplayManager, SpatialRender — data race fixes
  • Memory leak: Push2Control — mPixels dan static FBO cleanup
  • Buffer overflow: SpatialRender audioBuffer, GIFAnimator LZW stack + integer overflow
  • Save/Load: atomic file write (hapus deleteFile sebelum replaceWithData)
  • Dead code cleanup: hapus 50MB WebView2 dependency, 8 file source mati, 3 orphan header

Catatan

  • Rilis ini untuk Windows 64-bit
  • Build dari source untuk macOS/Linux: lihat README.md
  • Lisensi: GPL v3.0