Commit Graph

260 Commits

Author SHA1 Message Date
Luna 0e323f6631 repl tweaks 2019-09-29 23:57:24 -03:00
Luna 66a7356502 runner: add newline to runqs message 2019-09-10 22:08:35 -03:00
Luna 49cc7221b0 fix some clones, finish list of commands for printer 2019-09-10 22:00:07 -03:00
Luna 84d582cfd1 image: open curpath instead of path when cloning 2019-09-10 21:35:22 -03:00
Luna 67c42e39d4 add cloning of Runner and Image + basic Runner REPL logic 2019-09-10 21:31:23 -03:00
Luna 88a73e64d8 better repl logic 2019-09-10 15:44:10 -03:00
Luna 058bf8deb9 add push and list commands 2019-09-10 14:51:41 -03:00
Luna c90590e3b5 add Lang.reset, open scri_file and write current commands to it 2019-09-10 12:12:10 -03:00
Luna 8b67ccc1bf add printing of commands to any stream 2019-09-10 11:45:04 -03:00
Luna 736277db04 add parsing of given repl line 2019-09-08 23:28:09 -03:00
Luna 34d3b12c56 add basic main loop 2019-09-08 17:27:59 -03:00
Luna fc8dcf4583 add doRepl func 2019-09-08 17:06:19 -03:00
Luna 7e8023a383 add validation of bmp magic bytes 2019-09-08 11:55:17 -03:00
Luna b3bb56279a remove usage of command pointers for most things
this serves as a workaround for the compiler bugs found on zig trunk

 - use std.StringHashMap
2019-09-03 12:45:17 -03:00
Luna fecd3b2e69 lang: fix RevDelay's arg count 2019-08-27 14:17:15 -03:00
Luna cfec45eb6c make internal ports a slice of Port structs 2019-08-14 22:35:22 -03:00
Luna 1d86abff5b main: use direct allocator 2019-08-14 16:11:09 -03:00
Luna a33db9f060 custom: add Write.deinit and fix WildNoise.deinit 2019-08-14 09:13:06 -03:00
Luna e142285a32 use Plugin.deinit() 2019-08-14 09:10:54 -03:00
Luna f8d8ed067d add deinit() calls to custom plugins 2019-08-14 09:10:09 -03:00
Luna 0ad1c88274 free some things in runner 2019-08-13 10:33:08 -03:00
Luna b66070c4e4 lang: use std.mem.startsWith 2019-08-13 10:19:39 -03:00
Luna b0ddb35ae9 fix mbeq arg validation 2019-08-12 13:07:06 -03:00
Luna af34f71c8f move lv2 core constants to comptime 2019-08-10 14:36:51 -03:00
Luna 0cab58429c fix std.AutoHashMap usage 2019-08-09 18:40:11 -03:00
Luna c0269ead20 image: bump BufferSize 2019-08-09 14:03:32 -03:00
Luna 99382d0a66 add better freeing procedures w/ errdefer 2019-08-09 13:55:40 -03:00
Luna 4aa9e9d7b9 runner: bump ident of load path msg 2019-08-09 11:29:10 -03:00
Luna 6fd4cd0ecd add better error messages for no cmd and unknown cmd 2019-08-09 11:28:40 -03:00
Luna a0bf1e2723 lang: do as many semantic errors as possible before ParseFail 2019-08-08 20:30:24 -03:00
Luna 90bc830a9a lang: show line where error happened 2019-08-08 20:27:24 -03:00
Luna ab2e8884b8 lang: add arg checks for the other commands 2019-08-08 20:24:25 -03:00
Luna 422cd2502c lang: add basic argument validation 2019-08-08 20:13:49 -03:00
Luna 9fd41a61bf add runner test + 'zig build test' subcommand 2019-08-08 16:48:31 -03:00
Luna 704eaac081 lang: defer deinit() on tests 2019-08-07 21:09:04 -03:00
Luna 7e6b85ef48 lang: add tests
- lang: add deinit()
2019-08-07 21:04:51 -03:00
Luna b8dcb84294 image: fix typo 2019-08-06 23:35:02 -03:00
Luna 981b52c05b lang: add hack while AutoHashMap is broken
- image: add timer for runPlugin
2019-08-06 23:34:11 -03:00
Luna fc3972d65c remove unecessary allocation in RunContext 2019-08-06 19:25:47 -03:00
Luna 75eeea14f3 add check for n_audio_out>2 2019-08-06 19:25:31 -03:00
Luna 8172066851 add write cmd
- make custom plugins return ?Plugin instead of !Plugin
2019-07-29 11:51:40 -03:00
Luna ff78044587 magick: reopen the image post MagickWriteImage 2019-07-23 18:30:16 -03:00
Luna c0b70a81b1 magick: reopen the file instead of just setting curpath 2019-07-22 22:48:37 -03:00
Luna f9aa226d9e add proper arguments to rotate cmd 2019-07-22 22:22:01 -03:00
Luna 4a49b39159 make magickSave edit Image.curpath 2019-07-22 22:15:06 -03:00
Luna 6775773674 move to graphicsmagick 2019-07-22 21:50:11 -03:00
Luna 8784f3baf9 decouple magick init/save into helper functions 2019-07-22 20:37:57 -03:00
Luna 73794e1867 add magickwand load/unload 2019-07-22 20:32:50 -03:00
Luna b056a0edb3 add imagemagick linking 2019-07-22 19:28:55 -03:00
Luna 67c9f425bb add rotate cmd to lang 2019-07-22 17:04:43 -03:00
Luna 2151afb115 add roomWidth arg to reverb, update reverb docs 2019-07-15 14:21:08 -03:00
Luna 87556c5b7e simplify copyBytes excess calc and do sseek() 2019-07-15 11:26:41 -03:00
Luna c5a2e317c4 remove error part of sseek() 2019-07-15 10:58:45 -03:00
Luna d12268f028 ensure sf_seek is called on the out file in copyBytes 2019-07-15 10:53:23 -03:00
Luna 8c2bbee372 make copyBytes allocate its own buffer 2019-07-14 19:01:50 -03:00
Luna b59f937d00 decomission getEndPos() in favor of SF_INFO.frames 2019-07-14 18:54:48 -03:00
Luna a71ff830ac add wildnoise cmd 2019-07-13 19:55:57 -03:00
Luna f85ff2037d finish custom plugins impl, finish noise cmd
- add ParamMap
2019-07-13 18:17:44 -03:00
Luna 3edca782ac add basic rng init on RandomNoise plugin 2019-07-13 17:49:09 -03:00
Luna 16116371f5 split in_buf/out_buf into RunBuffers struct
- add basics of RandomNoise custom plugin
2019-07-13 17:42:46 -03:00
Luna aedf47dbe1 add revdelay cmd 2019-07-13 17:20:14 -03:00
Luna 223fb6628c change mono plugin check to a 3+ channel plugin check
i'm not sure if there's anyone with more than two ears who is biological
2019-07-13 16:48:53 -03:00
Luna 8d3cd47665 add vinyl cmd 2019-07-13 16:46:26 -03:00
Luna f07c989407 allow for stereo input (unused, though) 2019-07-13 16:40:08 -03:00
Luna 387984bff1 call sf_seek before main plugin loop 2019-07-11 10:57:39 -03:00
Luna 107a00593a do larger copies for safety reasons 2019-07-11 10:51:00 -03:00
Luna b9160adad2 add delay cmd 2019-07-11 10:20:09 -03:00
Luna 79dc56daae fix color mayhem caused by Image.copyBytes() 2019-07-11 09:10:21 -03:00
Luna 542c239e0c optimize main plugin loop
this makes it faster to have the main loop focus on running the actual
plugin while pre- and post- parts of the loop become their own thing
with bigger buffers.
2019-07-10 22:28:34 -03:00
Luna 2d9fe80395 add runqs command 2019-07-10 21:43:23 -03:00
Luna 3a8f84a3b2 add implicit arg index for Command helper funcs 2019-07-10 20:46:22 -03:00
Luna c743681515 add highpass cmd
- remove bypass arg from reverb cmd
2019-07-10 20:41:17 -03:00
Luna 159048550d add reverb command 2019-07-10 20:19:40 -03:00
Luna ab9eaa1400 add pitchscaler cmd 2019-07-10 17:31:18 -03:00
Luna f9898b2f11 refactor command functions 2019-07-10 17:15:57 -03:00
Luna 5fb0f9c066 add chorus command 2019-07-10 16:59:15 -03:00
Luna 317916a1e0 add mbeq command 2019-07-10 16:43:30 -03:00
Luna 6bc54f8e46 add phaser cmd 2019-07-10 16:24:43 -03:00
Luna 9a5d4f14e5 add eq command 2019-07-10 16:06:44 -03:00
Luna c534721e88 use a hashmap for CommandType conversion 2019-07-10 14:44:22 -03:00
Luna 8b189914f7 add rflanger command, update readme 2019-07-10 13:24:03 -03:00
Luna 2b2eb51dff clean up some debug prints
- free file and command memory on exit
2019-07-10 12:13:44 -03:00
Luna 16a082ce0a remove oldMain, add LICENSE 2019-07-10 12:10:09 -03:00
Luna 0e0b9add13 update todo 2019-07-10 12:00:43 -03:00
Luna 17ca737291 fix multiple plugin runs over same file
- add deinit() functions to help
2019-07-10 11:47:35 -03:00
Luna 8677e977ee add file "saving" to quicksave cmd 2019-07-09 23:04:05 -03:00
Luna 9e43367111 add main plugin run loop 2019-07-09 18:34:05 -03:00
Luna 32699a55a5 add basic plugin position code 2019-07-09 16:52:46 -03:00
Luna 25bef23933 add basic lilv instantiation support 2019-07-09 15:15:02 -03:00
Luna fc69a3f62f add temporary file name generator 2019-07-09 14:29:54 -03:00
Luna 05fe41d8b4 add setting of parameters to the ports
- fix ampCmd's param pass
2019-07-09 13:55:52 -03:00
Luna bbf34f1133 add port setup code 2019-07-09 13:21:07 -03:00
Luna 8e453298bc add basic machinery around plugin 2019-07-09 00:04:01 -03:00
Luna eea39cdd24 add comments 2019-07-08 22:41:38 -03:00
Luna 176bbd446a add draft impl for ampCmd 2019-07-08 22:40:52 -03:00
Luna 276100c556 add implementation for quicksave command 2019-07-08 15:40:31 -03:00
Luna 1b8784dc8f add Image struct wrapper around libsndfile, finish loadCmd 2019-07-08 14:43:58 -03:00
Luna e2f9566529 add basic resolution of arguments 2019-07-08 13:55:54 -03:00
Luna 87459939cf add debug flag to runCommands 2019-07-08 13:13:03 -03:00
Luna 41a8b18d66 add basic runner 2019-07-08 12:38:16 -03:00
Luna ac4624ae58 add better errors 2019-07-08 00:23:12 -03:00
Luna be280d44f3 basic parser 2019-07-08 00:09:34 -03:00
Luna 4bbe980014 add basic lang parse code 2019-07-07 23:03:55 -03:00
Luna fdbed55b80 fix output ports not using out_buf 2019-07-07 16:05:10 -03:00
Luna f222c5e34f fix ports, fix c-str for params 2019-07-07 15:54:38 -03:00
Luna bd00f61977 add helpers for c string construction 2019-07-07 15:04:25 -03:00
Luna 846faafc92 make lv2core namespaces use std.cstr.addNullByte 2019-07-07 14:39:51 -03:00
Luna f7a16447f4 fix cimport not doing deref 2019-07-07 14:26:49 -03:00
Luna 58aea2755e lv2apply port to zig, episode 1 2019-07-07 02:26:05 -03:00
Luna 24e4f01a3e initial commit for zig project 2019-07-05 16:59:45 -03:00