Wykres commitów

268 Commity (9c6cd13f0450a5d1b94864e0133d10b3d4bec8e1)

Autor SHA1 Wiadomość Data
James Ball 230707823d Convert all parameters to raw pointers as JUCE manages them 2023-07-18 19:20:54 +01:00
James Ball 28f8626dbc Update effect sliders when DAW changes parameter 2023-07-18 18:28:09 +01:00
James Ball e22897d8d0 Add parameters for enabling and disabling effects, and refactor effects to store a boolean for enabled effects rather than presence in a list 2023-07-18 17:25:09 +01:00
James Ball de3ab79052 Parameters are now controllable from DAW 2023-07-17 20:09:13 +01:00
James Ball 707715bc2e Refactor EffectDetails into EffectParameter 2023-07-17 17:16:18 +01:00
James Ball a9e99d336b Ensure min < max always 2023-07-17 15:39:21 +01:00
James Ball 72951d3146 Range of sliders is now controllable 2023-07-17 14:37:36 +01:00
James Ball bb91460429 Store range, step, and smoothing within EffectDetails 2023-07-16 20:54:41 +01:00
James Ball afc16fc044 Most effects now change smoothly between values, making the visuals MUCH smoother when using sliders 2023-07-14 15:34:24 +01:00
James Ball 6d048ce26e Add wobble effect and remove frequency input from effect applications 2023-07-13 20:11:24 +01:00
James Ball 89452a4dd6 Introduce more locks to prevent concurrency issues 2023-07-11 22:28:54 +01:00
James Ball 3ea8bad02b Use weak_ptr to avoid memory leak and circular reference 2023-07-11 19:25:42 +01:00
James Ball 2462a7978e Add variable-size listboxes for echo effect 2023-07-11 18:48:45 +01:00
James Ball a369adb6ae Add delay effect and refactor effects to allow multiple values per effect 2023-07-11 13:32:52 +01:00
James Ball a103ac44b6 Add audio websocket server that sends data to software oscilloscope browser client 2023-07-10 22:00:36 +01:00
James Ball 662f423bc2 Add volume and threshold icons 2023-07-10 18:04:24 +01:00
James Ball c0e64094aa Create fully-functioning and somewhat good looking volume visualiser 2023-07-10 17:42:22 +01:00
James Ball afdd4483b3 Add basic volume visualiser with non-functioning sliders 2023-07-10 13:17:04 +01:00
James Ball be64e7325e Set audio visualiser to 60fps and show current frequency 2023-07-09 21:30:33 +01:00
James Ball 061595b575 Add proof of concept audio visualiser component 2023-07-08 18:59:05 +01:00
James Ball 8e61d6f280 Add core functionality for audio buffer producers and consumers 2023-07-08 13:25:35 +01:00
James Ball 011fc8bb10 Add trace min and trace max effects 2023-07-06 17:57:10 +01:00
James Ball 18704f46ed Files can be created within osci-render 2023-07-05 22:45:51 +01:00
James Ball 1b974b9706 Restrict to only one additional component in EffectComponent and make code less hacky 2023-07-05 18:17:11 +01:00
James Ball 3db0a94254 Make components align in ObjComponent and reset more things when resetting rotation 2023-07-05 18:14:04 +01:00
James Ball 40537cbe55 Add resources from Java osci-render, fully implement fixed rotation axis for 3D rotation, fix various bugs when opening and closing GUI as a VST 2023-07-05 17:57:41 +01:00
James Ball 241b6c8d18 Introduce proper thread safety around audio effects, and make sure key press detection is global 2023-07-05 15:17:17 +01:00
James Ball af0cd0e8d0 Add reset rotation button and rotation with mouse 2023-07-05 14:14:27 +01:00
James Ball e2f9a6c4a4 Focal length, rotation, and rotation speed sliders all functional, and add Effect initialisable with a lambda 2023-07-05 12:02:28 +01:00
James Ball a487306784 Prevent double-locking when using code editor 2023-07-04 20:59:47 +01:00
James Ball b5cfc2824b Add non-functional .obj settings that appear when .obj file is opened and start properly locking between audio/gui threads 2023-07-04 20:47:54 +01:00
James Ball b117aae5f5 Complete infinite lua slider support 2023-07-04 14:58:36 +01:00
James Ball 2ec4eaba52 Add .lua file settings with infinite (non-working) slider support 2023-07-02 21:00:14 +01:00
James Ball e4b5545723 Add common EffectComponent across all sliders incl. frequency and remove EffectComponentGroup 2023-07-02 18:47:04 +01:00
James Ball 902286a086 All files have their own code editors, fix various bugs 2023-07-02 13:09:24 +01:00
James Ball bb2a03ec2d Correctly show code editor by default 2023-07-02 11:22:01 +01:00
James Ball 91aa11ddcc Lua support fully working and efficient except for sliders 2023-07-01 15:29:53 +01:00
James Ball a4ee966f50 Get initial non-working lua parser set up 2023-04-04 16:17:37 +01:00
James Ball ac67c1bec6 Allow multiple files to be opened, allow files to be closed, and use j and k to change file 2023-03-30 21:09:53 +01:00
James Ball 0ff71379e4 Add basic support for live-editing open files 2023-03-30 17:28:47 +01:00
James Ball c54ab95b0d Massively speed up .obj file loading - now comparable to java osci-render - and fixed missing and duplicated edges 2023-03-29 18:02:23 +01:00
James Ball f6b0411901 Keep track of open files, and massively reduce memory usage for .obj files 2023-03-29 17:19:16 +01:00
James Ball 4bc4629474 Make code editor collapsible 2023-03-29 15:02:29 +01:00
James Ball 9a3e707257 Add very basic code editor 2023-03-29 12:51:22 +01:00
James Ball f6b32c3a0b Add lua library successfully to code 2023-03-29 12:16:26 +01:00
James Ball fe7b59bc70 add checkbox to effects 2023-03-29 10:55:11 +01:00
James Ball 945acf1df9 Change precedence of effects when order in list is changed 2023-03-28 16:21:18 +01:00
James Ball 4cf64c9654 Add smooth effect 2023-03-28 15:52:51 +01:00
James Ball e6c9cee6b1 Add vertical/horizontal distort, rotate, and vector cancelling effects 2023-03-28 14:33:56 +01:00
James Ball a032a16b66 Significantly reduce required code for adding effects 2023-03-28 13:44:46 +01:00
James Ball 3056ae3997 Add functional sliders for bit crush and bulge 2023-03-28 13:12:41 +01:00
James Ball 0ed2a10ac4 Add bulge effect, a way of adding effects, and a draggable list component for showing effects 2023-03-26 13:58:31 +01:00
James Ball cd07ce20a8 Add initial audio effect functionality 2023-03-25 20:24:10 +00:00
James Ball f2719d85b5 Add basic .txt support 2023-02-05 20:36:51 +00:00
James Ball 41af7364f5 Fix various parser bugs 2023-02-05 19:36:50 +00:00
James Ball b0806ecf3d Fully implement SVG parser 2023-02-05 17:39:02 +00:00
James Ball a063f2f988 Add code for SvgParser that mostly works 2023-02-05 00:43:57 +00:00
James Ball 60b80b7812 Add code for SvgState, MoveTo, LineTo, CurveTo, ClosePath 2023-01-23 22:40:55 +00:00
James Ball f0e99440fc Add todo 2023-01-20 23:42:49 +00:00
James Ball 56eaa48bb1 Various optimisations to improve obj file performance 2023-01-20 23:41:37 +00:00
James Ball d8256ac812 Add support for obj files with multiple connected components 2023-01-20 21:39:21 +00:00
James Ball 56efe597cb Use tinyobjloader instead of custom obj reader 2023-01-19 23:02:52 +00:00
James Ball ece67ce7ee Fix bugs with chinese postman solving 2023-01-19 22:16:13 +00:00
James Ball f43a82ae78 Add code for finding z pos of camera 2023-01-19 20:46:41 +00:00
James Ball 435c0fead7 Implement partially working chinese postman (without separate connected components working) 2023-01-19 15:36:33 +00:00
James Ball 0efc108e76 Add support for .obj files (unoptimised) 2023-01-15 22:34:02 +00:00
James Ball 6162a7f203 Create initial pipeline for generating frames and rendering them 2023-01-15 17:01:27 +00:00
James Ball 1154d09f52 Initial JUCE commit 2023-01-09 21:58:49 +00:00