Luna
47a97636cd
enable command debug printing
2020-05-30 22:39:45 -03:00
Luna
c3b83c3e4b
replace f64 to f32 on some commands
2020-05-30 22:29:13 -03:00
Luna
f20079b807
disable codepaths not supporting new commands
2020-05-30 22:25:43 -03:00
Luna
154032f9b1
revamp command structure for tags and base types
2020-05-30 22:25:30 -03:00
Luna
27f499dfbb
add basics of generic command parsing
2020-05-30 17:48:14 -03:00
Luna
d86e9efe43
add main command struct and make fillKeywords mostly-comptime
2020-05-30 16:57:00 -03:00
Luna
e462b4e9d6
fix for latest zig
2020-05-30 15:56:58 -03:00
Luna
c8f949fe96
remove embedded magick_wand in favor of cimport
2020-05-12 17:48:20 -03:00
Luna
3de84b5a23
finish arraylist updates
2020-05-12 17:48:15 -03:00
Luna
0c2cd5638e
update because of arraylist api changes
2020-05-12 17:26:46 -03:00
Luna
043556e798
Update README on new env var
2020-04-10 00:20:46 -03:00
Luna
9614b96c71
Add SCRITCHER_RUNNER env var
...
Closes #13
2020-04-10 00:01:23 -03:00
Luna
8bb09f1573
fixes for latest zig
...
- arraylist breaking changes
- mem.separate => mem.split
- heap.page_allocator
2020-04-09 23:51:33 -03:00
Luna
8261d202bd
multiple fixes for latest zig
2020-03-26 16:35:58 -03:00
Luna
08d9923e75
add saturator, vintagedelay cmd
2020-01-26 14:50:50 -03:00
Luna
bc8ab98689
add multichorus cmd
2020-01-26 14:03:01 -03:00
Luna
127ea389fd
add moddelay cmd
2020-01-26 02:05:43 -03:00
Luna
a0a75579dd
add tapedelay cmd (broken)
2020-01-26 00:28:59 -03:00
Luna
8c3c5a3ac2
add invert cmd
2020-01-26 00:13:53 -03:00
Luna
299a39fc27
add gverb cmd
2020-01-26 00:03:15 -03:00
Luna
c73b7440a6
add foverdrive cmd
...
- lang: remove oldGetCommand
2020-01-25 23:52:22 -03:00
Luna
fa8740e0db
add thruzero command
2020-01-25 23:32:24 -03:00
Luna
519eb51206
remove heap allocation for RunBuffers
2020-01-25 22:46:00 -03:00
Luna
5a0e6934e7
add dyncomp cmd
2020-01-25 22:45:37 -03:00
Luna
7c4dead5cf
add many experimental plugins
2020-01-25 18:52:45 -03:00
Luna
9a6caa2453
add gate cmd
2020-01-25 17:47:20 -03:00
Luna
182d368363
fix for latest zig
2020-01-14 22:31:20 -03:00
Luna
a10416e56f
fixes for latest zig
2019-12-08 12:14:31 -03:00
Luna
09471e564a
allow args to be deinited on error, fix argAt
2019-12-02 20:13:19 -03:00
Luna
46d576fc13
image: remove expectEqual check (caused problems for rotate)
2019-11-10 13:46:48 -03:00
Luna
c57c40db61
use at-as builtin
2019-11-10 13:37:59 -03:00
Luna
fb0516a1db
allow ppm files as inputs
...
- only run bmp.magicValid when path ends in bmp
- remove uneeced header size constants
2019-11-01 21:43:45 -03:00
Luna
91de05d3b1
runner: fix for latest zig
2019-10-31 19:02:36 -03:00
Luna
430677fc07
enhance embed custom plugin
...
- seek to 0 on setup
- ignore and copy original bytes if we reached end of audio file
2019-10-22 19:16:09 -03:00
Luna
1c6ef1d4d5
Revert "use sf_open_fd"
...
This reverts commit 6e66850d90
.
2019-10-22 19:08:38 -03:00
Luna
6e66850d90
use sf_open_fd
2019-10-22 18:57:36 -03:00
Luna
612421f7b6
add embed code
2019-10-22 18:23:05 -03:00
Luna
2e27390058
add the rest for embed command
...
- allow any extra param as a generic to custom plugin init
2019-10-22 18:16:15 -03:00
Luna
87bab879ed
add embed cmd
2019-10-22 17:08:19 -03:00
Luna
bb501d9c1e
repl: add output when leaving from c-d
2019-10-20 13:13:32 -03:00
Luna
c75db19523
repl: ignore comments
...
closes #10
2019-10-20 13:12:49 -03:00
Luna
cdca993048
remove 'use-after-free'
2019-10-20 11:59:15 -03:00
Luna
a18809eb5b
repl: handle when original file doesn't exist
2019-10-20 11:37:11 -03:00
Luna
c05be26dbd
runner: ignore one arg when its in repl
...
closes #8
2019-10-06 15:16:41 -03:00
Luna
7cf16f9ffa
deinit existing_cmds (not long lived)
2019-10-06 15:12:19 -03:00
Luna
80036c4c0d
fix other things related to reading scri file on repl
2019-10-06 15:07:30 -03:00
Luna
66b262beb2
repl: open file as read and append to cmds before open as write
...
closes #7
2019-10-06 14:39:15 -03:00
Luna
cb689c3ade
repl: use readline
2019-10-06 10:53:09 -03:00
Luna
8c5f42b3db
add quit/q commands to repl
2019-10-05 21:44:44 -03:00
Luna
f8814ca94d
add assertions about seek state and seek position
2019-10-05 21:42:16 -03:00
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