6e66850d90
use sf_open_fd
2019-10-22 18:57:36 -03:00
612421f7b6
add embed code
2019-10-22 18:23:05 -03:00
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
87bab879ed
add embed cmd
2019-10-22 17:08:19 -03:00
bb501d9c1e
repl: add output when leaving from c-d
2019-10-20 13:13:32 -03:00
c75db19523
repl: ignore comments
...
closes #10
2019-10-20 13:12:49 -03:00
cdca993048
remove 'use-after-free'
2019-10-20 11:59:15 -03:00
a18809eb5b
repl: handle when original file doesn't exist
2019-10-20 11:37:11 -03:00
c05be26dbd
runner: ignore one arg when its in repl
...
closes #8
2019-10-06 15:16:41 -03:00
7cf16f9ffa
deinit existing_cmds (not long lived)
2019-10-06 15:12:19 -03:00
80036c4c0d
fix other things related to reading scri file on repl
2019-10-06 15:07:30 -03:00
66b262beb2
repl: open file as read and append to cmds before open as write
...
closes #7
2019-10-06 14:39:15 -03:00
cb689c3ade
repl: use readline
2019-10-06 10:53:09 -03:00
8c5f42b3db
add quit/q commands to repl
2019-10-05 21:44:44 -03:00
f8814ca94d
add assertions about seek state and seek position
2019-10-05 21:42:16 -03:00
0e323f6631
repl tweaks
2019-09-29 23:57:24 -03:00
66a7356502
runner: add newline to runqs message
2019-09-10 22:08:35 -03:00
49cc7221b0
fix some clones, finish list of commands for printer
2019-09-10 22:00:07 -03:00
84d582cfd1
image: open curpath instead of path when cloning
2019-09-10 21:35:22 -03:00
67c42e39d4
add cloning of Runner and Image + basic Runner REPL logic
2019-09-10 21:31:23 -03:00
88a73e64d8
better repl logic
2019-09-10 15:44:10 -03:00
058bf8deb9
add push and list commands
2019-09-10 14:51:41 -03:00
c90590e3b5
add Lang.reset, open scri_file and write current commands to it
2019-09-10 12:12:10 -03:00
8b67ccc1bf
add printing of commands to any stream
2019-09-10 11:45:04 -03:00
736277db04
add parsing of given repl line
2019-09-08 23:28:09 -03:00
34d3b12c56
add basic main loop
2019-09-08 17:27:59 -03:00
fc8dcf4583
add doRepl func
2019-09-08 17:06:19 -03:00
7e8023a383
add validation of bmp magic bytes
2019-09-08 11:55:17 -03:00
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
fecd3b2e69
lang: fix RevDelay's arg count
2019-08-27 14:17:15 -03:00
cfec45eb6c
make internal ports a slice of Port structs
2019-08-14 22:35:22 -03:00
1d86abff5b
main: use direct allocator
2019-08-14 16:11:09 -03:00
a33db9f060
custom: add Write.deinit and fix WildNoise.deinit
2019-08-14 09:13:06 -03:00
e142285a32
use Plugin.deinit()
2019-08-14 09:10:54 -03:00
f8d8ed067d
add deinit() calls to custom plugins
2019-08-14 09:10:09 -03:00
0ad1c88274
free some things in runner
2019-08-13 10:33:08 -03:00
b66070c4e4
lang: use std.mem.startsWith
2019-08-13 10:19:39 -03:00
b0ddb35ae9
fix mbeq arg validation
2019-08-12 13:07:06 -03:00
af34f71c8f
move lv2 core constants to comptime
2019-08-10 14:36:51 -03:00
0cab58429c
fix std.AutoHashMap usage
2019-08-09 18:40:11 -03:00
c0269ead20
image: bump BufferSize
2019-08-09 14:03:32 -03:00
99382d0a66
add better freeing procedures w/ errdefer
2019-08-09 13:55:40 -03:00
4aa9e9d7b9
runner: bump ident of load path msg
2019-08-09 11:29:10 -03:00
6fd4cd0ecd
add better error messages for no cmd and unknown cmd
2019-08-09 11:28:40 -03:00
a0bf1e2723
lang: do as many semantic errors as possible before ParseFail
2019-08-08 20:30:24 -03:00
90bc830a9a
lang: show line where error happened
2019-08-08 20:27:24 -03:00
ab2e8884b8
lang: add arg checks for the other commands
2019-08-08 20:24:25 -03:00
422cd2502c
lang: add basic argument validation
2019-08-08 20:13:49 -03:00
9fd41a61bf
add runner test + 'zig build test' subcommand
2019-08-08 16:48:31 -03:00
704eaac081
lang: defer deinit() on tests
2019-08-07 21:09:04 -03:00
7e6b85ef48
lang: add tests
...
- lang: add deinit()
2019-08-07 21:04:51 -03:00
b8dcb84294
image: fix typo
2019-08-06 23:35:02 -03:00
981b52c05b
lang: add hack while AutoHashMap is broken
...
- image: add timer for runPlugin
2019-08-06 23:34:11 -03:00
fc3972d65c
remove unecessary allocation in RunContext
2019-08-06 19:25:47 -03:00
75eeea14f3
add check for n_audio_out>2
2019-08-06 19:25:31 -03:00
8172066851
add write cmd
...
- make custom plugins return ?Plugin instead of !Plugin
2019-07-29 11:51:40 -03:00
ff78044587
magick: reopen the image post MagickWriteImage
2019-07-23 18:30:16 -03:00
c0b70a81b1
magick: reopen the file instead of just setting curpath
2019-07-22 22:48:37 -03:00
f9aa226d9e
add proper arguments to rotate cmd
2019-07-22 22:22:01 -03:00
4a49b39159
make magickSave edit Image.curpath
2019-07-22 22:15:06 -03:00
6775773674
move to graphicsmagick
2019-07-22 21:50:11 -03:00
8784f3baf9
decouple magick init/save into helper functions
2019-07-22 20:37:57 -03:00
73794e1867
add magickwand load/unload
2019-07-22 20:32:50 -03:00
b056a0edb3
add imagemagick linking
2019-07-22 19:28:55 -03:00
67c9f425bb
add rotate cmd to lang
2019-07-22 17:04:43 -03:00
2151afb115
add roomWidth arg to reverb, update reverb docs
2019-07-15 14:21:08 -03:00
87556c5b7e
simplify copyBytes excess calc and do sseek()
2019-07-15 11:26:41 -03:00
c5a2e317c4
remove error part of sseek()
2019-07-15 10:58:45 -03:00
d12268f028
ensure sf_seek is called on the out file in copyBytes
2019-07-15 10:53:23 -03:00
8c2bbee372
make copyBytes allocate its own buffer
2019-07-14 19:01:50 -03:00
b59f937d00
decomission getEndPos() in favor of SF_INFO.frames
2019-07-14 18:54:48 -03:00
a71ff830ac
add wildnoise cmd
2019-07-13 19:55:57 -03:00
f85ff2037d
finish custom plugins impl, finish noise cmd
...
- add ParamMap
2019-07-13 18:17:44 -03:00
3edca782ac
add basic rng init on RandomNoise plugin
2019-07-13 17:49:09 -03:00
16116371f5
split in_buf/out_buf into RunBuffers struct
...
- add basics of RandomNoise custom plugin
2019-07-13 17:42:46 -03:00
aedf47dbe1
add revdelay cmd
2019-07-13 17:20:14 -03:00
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
8d3cd47665
add vinyl cmd
2019-07-13 16:46:26 -03:00
f07c989407
allow for stereo input (unused, though)
2019-07-13 16:40:08 -03:00
387984bff1
call sf_seek before main plugin loop
2019-07-11 10:57:39 -03:00
107a00593a
do larger copies for safety reasons
2019-07-11 10:51:00 -03:00
b9160adad2
add delay cmd
2019-07-11 10:20:09 -03:00
79dc56daae
fix color mayhem caused by Image.copyBytes()
2019-07-11 09:10:21 -03:00
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
2d9fe80395
add runqs command
2019-07-10 21:43:23 -03:00
3a8f84a3b2
add implicit arg index for Command helper funcs
2019-07-10 20:46:22 -03:00
c743681515
add highpass cmd
...
- remove bypass arg from reverb cmd
2019-07-10 20:41:17 -03:00
159048550d
add reverb command
2019-07-10 20:19:40 -03:00
ab9eaa1400
add pitchscaler cmd
2019-07-10 17:31:18 -03:00
f9898b2f11
refactor command functions
2019-07-10 17:15:57 -03:00
5fb0f9c066
add chorus command
2019-07-10 16:59:15 -03:00
317916a1e0
add mbeq command
2019-07-10 16:43:30 -03:00
6bc54f8e46
add phaser cmd
2019-07-10 16:24:43 -03:00
9a5d4f14e5
add eq command
2019-07-10 16:06:44 -03:00
c534721e88
use a hashmap for CommandType conversion
2019-07-10 14:44:22 -03:00
8b189914f7
add rflanger command, update readme
2019-07-10 13:24:03 -03:00
2b2eb51dff
clean up some debug prints
...
- free file and command memory on exit
2019-07-10 12:13:44 -03:00
16a082ce0a
remove oldMain, add LICENSE
2019-07-10 12:10:09 -03:00
0e0b9add13
update todo
2019-07-10 12:00:43 -03:00
17ca737291
fix multiple plugin runs over same file
...
- add deinit() functions to help
2019-07-10 11:47:35 -03:00
8677e977ee
add file "saving" to quicksave cmd
2019-07-09 23:04:05 -03:00
9e43367111
add main plugin run loop
2019-07-09 18:34:05 -03:00
32699a55a5
add basic plugin position code
2019-07-09 16:52:46 -03:00
25bef23933
add basic lilv instantiation support
2019-07-09 15:15:02 -03:00
fc69a3f62f
add temporary file name generator
2019-07-09 14:29:54 -03:00
05fe41d8b4
add setting of parameters to the ports
...
- fix ampCmd's param pass
2019-07-09 13:55:52 -03:00
bbf34f1133
add port setup code
2019-07-09 13:21:07 -03:00
8e453298bc
add basic machinery around plugin
2019-07-09 00:04:01 -03:00
eea39cdd24
add comments
2019-07-08 22:41:38 -03:00
176bbd446a
add draft impl for ampCmd
2019-07-08 22:40:52 -03:00
276100c556
add implementation for quicksave command
2019-07-08 15:40:31 -03:00
1b8784dc8f
add Image struct wrapper around libsndfile, finish loadCmd
2019-07-08 14:43:58 -03:00
e2f9566529
add basic resolution of arguments
2019-07-08 13:55:54 -03:00
87459939cf
add debug flag to runCommands
2019-07-08 13:13:03 -03:00
41a8b18d66
add basic runner
2019-07-08 12:38:16 -03:00
ac4624ae58
add better errors
2019-07-08 00:23:12 -03:00
be280d44f3
basic parser
2019-07-08 00:09:34 -03:00
4bbe980014
add basic lang parse code
2019-07-07 23:03:55 -03:00
fdbed55b80
fix output ports not using out_buf
2019-07-07 16:05:10 -03:00
f222c5e34f
fix ports, fix c-str for params
2019-07-07 15:54:38 -03:00
bd00f61977
add helpers for c string construction
2019-07-07 15:04:25 -03:00
846faafc92
make lv2core namespaces use std.cstr.addNullByte
2019-07-07 14:39:51 -03:00
f7a16447f4
fix cimport not doing deref
2019-07-07 14:26:49 -03:00
58aea2755e
lv2apply port to zig, episode 1
2019-07-07 02:26:05 -03:00
24e4f01a3e
initial commit for zig project
2019-07-05 16:59:45 -03:00