El nuevo screenshotto (I know, I know, bad):
Won't be long now. The general todo list is still quite large, but the number of items that need to be
done before releasing is quite small (really just a few).
It's so satisfying working in an environment where doing new things is easier than I expect; it
makes me happy to get things done quickly, and happier that I created the workable environment
to begin with.
I'm hoping I can keep REAPER feeling as sparse as I feel it is now. I might be biased, but it
feels less cluttered than a lot of other audio software, and I think that's a really good thing.
Steve kept comparing shit to garageband and telling me how I could probably take ideas from it.
I'd used it some before, but today I fired it up (well, spun it up is more like it, since I have
an ancient 667mhz mac), and was thoroughly disgusted. I honestly don't know where to begin.
Basically, everything UI about it sucks. The audio end of it seems decent, though it's
painfully slow on my G4. Anyway. Back to bitching about the UI-- It has a ton of buttons that
have tiny little icons that it isn't really obvious what they do, and there are no tooltips or
anything to help you learn, you really have to click, figure out what happens, etc. So lame.
And when I drag a nice loop into the project, I can't just resize it larger and have it loop,
it makes me go drag a second copy of it. lame x10. anyway.
Recordings:
satanslovesong
6 Comments
We migrated this server to a new box running a newer-than-4-year-old version
of FreeBSD, so if shit's broken let me know. I might have missed some email
as a result, too.
Did 80% of envelopes for REAPER last night. Just gotta finish off some UI
elements for it, and add non-linear curve support (though most of the legwork
is done). I think I know how busses will be done, too.
Finally, here's a pretty interesting mp3 someone made, apparently using samples
from NINJAM sessions.
Recordings:
noisynastyreaperfunthatfallsapart-vocals
noisynastyreaperfunthatfallsapart
5 Comments
Here's a new screenshot:
Here is an mp3 I made today while testing it (the project in the picture is the project).
The v0.5 preview release should be ready within 2 weeks. The main big features
that are not done yet are envelopes and busses, and there a lot of small
features planned that are not in yet, but having said that, it's coming along
very nicely and there's already a lot of great features and customizability.
Some features added since the first update on this that are especially nice:
+ DirectX plug-in support
+ peak building on the fly when recording (no more waiting after long recordings to build peaks)
+ media item segment looping (so you don't have to actually create a new file to make a loop of a part of another file)
+ you can arm/dearm recording for channels during playback (soon you will be able to while recording)
+ you can change channel recording sources while recording
+ plug-in architecture
+ dynamic audio generation capabilities, i.e. "click track" item.
+ you can use mp3 (VBR even) and OGG (multi-stream even) files directly in your projects
+ I updated NINJAM's cliplogcvt so that it can output to the REAPER project file format directly, making it very easy to use REAPER to edit/remix NINJAM sessions.
And of course, the most of the more standard features one would expect are done, such as:
+ High quality 64bps processing (though higher quality resampling modes still need to be finished)
+ Unlimited undo/redo support
+ Item fades
+ Snapping
+ Automatic crossfades
+ Selection loop support
Stay tuned. If you do some creative URL modifying, you can get a tasty treat.
Recordings:
somenewtest-reaper
10 Comments
The new project (REAPER) is coming along nicely, getting very useful. Hopefully something fairly
complete will be ready before Christmas, that's my goal at least. Christmas presents for all.
It seems the fall is a productive time for me, often. Though I think I need to take a few days
off of it, having spent about 2 weeks of solid work, well, has taken its toll.
Flew a new collective pitch R/C heli for the first time today, woot. It's really amazing how
the technology has come along since I was a teenager. Also, Brennan got me RealFlight G3 for an
early christmas present, and it's pretty awesome (aside from the complaints I do have, it's
a tremendous amount of fun).
Brennan and Biderman and I had a nice jam today. It's so much fun, especially when we are
able to pay attention to what everybody else is doing and adapt and coordinate stuff. Coffee
seems to help a ton, too. In general, finding myself more able to play lots of different
things is very satisfying and fun..
Recordings:
freeform jam with brenbiderman
9 Comments
OK so I've been spending the last 9 days or so writing a new program, called REAPER (which
stands for something along the lines of Rapid Environment for Audio Prototyping -- but I just like to think "don't fear it" or "reap your harvests" or whatnot).
Now I know, there are many products that fall into this category, ranging from crappy open source
to not so crappy open source (requiring linux) to crappy closed source to super insanely expensive
hardware-dongled closed source. So why am I writing yet another editor? Because I'm making
something that fits the category of being exactly what I want to use. It's mostly like Vegas (without the video capability), but
with features that I always wish Vegas had.
I will be posting some alpha builds soon, but in general I haven't decided on how to release it.
I'm really tempted to do some nag-free shareware again. At the very least it will have very
sensible public plug-in APIs that make it easy to extend, and maybe it'll go open source too, I
don't know. We'll see. For now, here's an image:

There's a lot to do, which I'm excited about, but it's already quite usable, and already
does things well that other software I've used does poorly. But now, I need to go do
everything else. Fun fun fun. Stay tuned, I'll be posting the alphas in here, and hopefully
a v0.9 beta type release by Christmas. The biggest obstacle I face is DirectX and VST plug-in
support, since the APIs for hosting them seem to be a pain (well, DirectX, anyway, I haven't
looked at the VST hosting API yet) . At the
moment I just have Jesusonic integrated, which is super easy (since it has a reasonable
API that doesn't require the disgusting monster that is DirectShow). Keep an eye on the comments of this article if you are interested, I'll likely just post links in there...
Finally, NINJAM users, expect a new release of the Windows client in the not too distant future,
with some of the improvements to the audio system I've been making for this. Specifically,
increasing the accuracy of the timing of the recorded loops (currently it's not too far off but
it could be a lot better).
9 Comments
Here it is. We had a fun afternoon making it, too. It's very weird, be warned.
8 Comments
I spent some time improving and cleaning up the script that powers this portion
of my site, which was originally Brennan's
hlscript, and am now releasing it as
"hl--". I'm intending to backport much of the new functionality to hlscript, since hl-- lacks many of the features that hlscript has.
Also, I updated PathSync a few days ago, with an option to help deal with daylight savings time anomalies.
Comment...
...but had some fun when I got a small cheapo R/C helicopter, and made this
little
video. Now if I can just learn to try not to impress the camera...
1 Comment
Had some weird terrible nastiness that I don't what it was. Some sort of flu or
food poisoning or some shit, bleh. There went the weekend. At least I had a wonderful wife(!!) to take care of me.
The video from the show is up, currently in three formats (CAUTION: if you lack a sense of humor your probably don't want to watch these): high quality xvid/mp3 AVI, low quality xvid/mp3 AVI, and as a flash video on youtube. Thanks to Newton and Penny for videotaping it.
Overall it went pretty decently, we all fucked up a fair amount, but nothing too catastrophic. Forgot to play a Led Zeppelin cover, though.
10 Comments
Apparently in the top 10 things done wrong by web logs (which I will link
to
here to be mean), I score a 8/10 (meaning I make 8 of the 10 "mistakes" listed in the article). The only ones I miss are 9 ("Forgetting That You Write for Your Future Boss" -- rather, by posting what I post, I ensure that the only people who would hire me are the people who I'd want to work for), and 10, because I have my own domain. hot damn.
Anyway, here's a new topic. Friday night we're playing at the Cherry Bar on Folsom in SF, going on around 10:30 or so I think, in case anybody wants to come by. I don't know why I'd mention it here, since the three people who read this are most likely geographically and/or spatially challenged.
10 Comments
So I'm sitting in the dining room of a friend's house, on my laptop, listening to
random music-like things. I think soon I'm going to make something like
Debris for
audio, specifically for NINJAM recordings, since they are in nice little chunks with some
somewhat relevant metadata. Could be interesting, depending on how much intelligence I can
build into it.
A little burnt out on the portable console hacking-- primarily because of things that are really
hard to debug (for one, it seems that if I do an uncached write (the second to top bit of the address set) to memory, then soon after do an uncached read, it doesn't get the updated value. Which
complicates things... The whole process of building, copying, running, repeat is a pain too. Anyway.
Get to move my work space soon, going to get a bunch of bandwidth at the new location, too. Yum.
And after this weekend, we'll have to get practicing for our show.
Speaking of music, got a fretless mexican fender jazz bass. So tasty. It has lines on it,
thankfully, so it's not too hard to play, just gotta pay more attention. Here's a little mp3 of me testing it out on NINJAM.
3 Comments
Thanks to a lovely birthday present (thanks rOn!), I've started playing around with writing
stuff for a certain portable console, we'll just call the XYX. I'm pretty impressed with the XYX
thus far, and look forward to learning more about it, woot. Time to learn MIPS assembly and
retarget Jesusonic for it--oh wait, this thing lacks audio input, sad.
Recordings:freeform jam with brenchr
7 Comments
I spent the evening last night and part of today doing something that ended
up being very easy, but produced crazy tasty results -- I made Jesusonic
support multiple sub-channels, where each one runs concurrently, and their
outputs are mixed, and the currently selected channel gets the input from
triggers/knobs/audio. This lets me have banks that can be drum machine,
bass loop, guitar loop, etc. and switch between them using the footboard,
and control each one, and so on. I also made a loopsampler-granul that lets
you program the loop granularity, so you can make your loops perfectly timed
to synchronize. It's so awesome, for me at least. Tempted to start making
songs live with it.
Here's a good one of me screwing around (though without
the setup, but I'm sure I could get the setup process recorded to sound
decent). Anyway, gonna go try it on the actual hardware, which shall I mention,
I just added a
backlit keyboard too (though I haven't finalized the mounting of yet). Getting my patches worked out for the show on Oct 28th, but tempted to make some for jamming alone, just to mess around at some point.. heh. anyway, fun fun. I'll post Jesusonic 0.992 up with this functionality once I test it some more, so maybe a few days...
2 Comments
After reading this comment (from
this page):
"Dungen were great 60's fun when playing their "proper" songs, but again jumped into too many instrumental jams with flute solos and the like. They need another album of actual tunes to round out their set, IMO."
Funny how different tastes can be.. When I've seen Dungen live, I liked the album songs fine, but the instrumental freakout jams with flutes and everything were JUST INSANELY GOOD. They would stop playing at the end, and I'd want more. MORE!
In other news, I did some more flights of my R/C plane, and recorded this video.
I can feel the novelty wearing off (of the video aspect), I wonder how long
until I am flying and not videotaping it... Oh yeah, here's my self portrait...
Let's see, what else? I fixed the sustain pedal on the Rhodes I got, seems one of the pins holding the
long thing that pushes the dampers down was missing, so I just cut a bolt to fit
and reinstalled, and it works like a charm. Woot. Tsk tsk Darren or whatever
your name was for selling me this without the sustain rod, so I wouldn't know
(just kidding I'm sure he didnt know anyway).
OK so here's something that might actually be interesting to people who read this: I'm planning on GPLing Jesusonic. It's about that time (if anybody has any question as to why I would choose the GPL instead of a BSD license, see my previous article).
Finally, here's a little (extremely rough) take of a song that Dave Wiener and I
made back in August, using a poorly maintained (but still lovely) grand piano.
3 Comments
Part II - Making Open Source Work
From my experiences, there really seems to be a right way and a wrong way to
begin an open source project.
The Right Way
+ If you haven't already, write a usable working proof of concept of your software.
+ Do NOT create a sourceforge.net project for your software (see below).
+ Make a simple web page for your software. Provide downloads for the source and (if it runs on Windows or Mac) binaries. Perhaps even bundle the source with binaries, if it's not too big.
+ Put an email address on the web page with a link that says "send updates/patches/requests/etc to ". It often is also useful to put a list of things that you are intending to add, i.e. a "todo" list.
+ Continue to update and USE your software.
The big push here is that a sourceforge.net project should only be created
for a project once it has enough people working on it to warrant it (i.e. more than a few).
From my experiences it is much easier for developers to get involved with a
project if they can download a source tarball or ZIP file, make their changes,
and send them back to the project owner, who can then merge changes appropriately. While the project owner should definitely be using some sort of version
control, setting up a CVS server for other contributors isn't really that
important, at least until other people start doing a very big percentage
of the work, and having it as the recommended mechanism for access
initially is a really bad idea, because the barrier of entry is higher.
The other things I suggest are:
+ If you use other SDKs/libraries, include a text file with the names,
versions, and (preferably) download links for those SDKs/libraries.
+ Try to use only the most common libraries, to make it as easy as
possible for other people to run and build your code.
The ideal scenario is, you create the initial version of software and thus
begins the cycle:
+ Someone finds out about your software
+ That person wants a particular feature or functionality, so they add it
+ They send you a patch, you merge it into the main release
+ Repeat.
That's really all there is to it. Later on, if you have many people actively
working on your project, you might want to consider public CVS etc, but even
that isn't really that helpful, as you'll only want people whose code you trust
to have commit access.. anyway, hope this helps people! I know it might obvious, but hey, that's why I named this post what I did.
1 Comment