<< >>
justin = { main feed , music , code , askjf , pubkey };recent comments
[ present ... 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 ... past ]
April 12, 2006

April 5, 2006
freeform jam with robnewton

April 2, 2006
kevinbrennan - 1 -- [29:59]
kevinbrennan - 2 -- [53:47]

March 25, 2006
so ronery

...while the MSO (think LSB/MSB) is out of town. As it has been at least a couple of weeks since an update I suppose I shall give updates.

Umm, lots of work on reaper done, lots more to do. Added pitch shifting/timestretch, using SoundTouch, which makes it very nearly done, on a purely feature-based scale, the main other thing needed being MIDI editing.

I went to LA to meet with one of REAPER's biggest evangelists, where it was used in a relatively well known studio:

(to make music which, while I didn't like, I am secretly hoping for huge commercial success, to give REAPER that extra bit of legitimacy. note: the laptop was just being used as a remote display to a beefy dual opteron on the floor. the reason it is there is that while the speakers in the room were great, the studios, for whatever reasons, like having the computers in places you can't hear the speakers. duh.)

When I added SMP support to REAPER I discovered the the Waves plug-ins (at least version 5) have real issue with running separate instances on multiple processors simultaneously. All of the other plug-ins I've tried work great, but when running with Waves on an SMP system, if two instances end up processing at the same time, BOOM, it crashes. I even narrowed it down to what the code looked like (it was a function that seemed to just convert double to float), and sent them an email asking to see if they had any ideas or if they would fix. That was 10 days ago or so, and they haven't responded. I ended up just detecting "Waves" and doing a critical section around that, as a hack. LAME.

Which brings me to my next bitchpoint. People expect support for software they pay for, yet software people pay thousands of dollars for, they get crappy ass support. WTF?

Spent some time debugging problems relating to some systems (some versions of MSVCRT?) enabling floating point exceptions that are supposed to be off by default. So now I turn a lot of them on when debugging, and off on release builds. Ugh.

Have a request in to Mackie to get the real MCU documentation so I can add full support for it, waiting (though it hasnt been THAT long).

Have a request in to Propellerheads for the Rewire SDK. Been a week or two, still waiting.

anyway, now to go see why SoundTouch has to require MSVCP60.dll, assuming it is STL or something. (update: yep, updated in .931, bla bla bla)


March 25, 2006
brenbidernewtonmayor - 1 -- [11:55]
brenbidernewtonmayor - 2 -- [113:38]
brenbidernewtonmayor - 3 -- [72:21]

March 21, 2006
freeform jam with brenchr

March 16, 2006
brenchr - 1 -- [6:48]
brenchr - 2 -- [38:21]

March 15, 2006

March 11, 2006
freeform jam with bidercraig

March 8, 2006

So I managed to hack SMP support into reaper today. Turns out the initial getting-of-it-working was easier than I once feared, since I had a nice track buffering system already built for the send system. Now the tedious part, making everything work as expected, I just know there are going to be tons of very small things off that will make everybody very unhappy at some point or another. I could go off on a rant on how you give people millions of bits, and if only one bit is wrong...

I've been busy as of late, moving my office/workshop to a new place here in SF, but as it settles down I think I'll be getting back into the groove more (though in all honesty I do seem to end up programming way more than is probably good for me).

At this point I'm still excited about reaper, though I am also getting a touch burnt out. We're coming up on 4 months of work! Let's see, aside from fixing tons of crap, the real things left for 1.0 are midi editing and event pitch/stretch. mmmm. How long will it take? Another 3 months? MIDI editing is a problem I've only gotten far enough in thinking about to fear it, since a good MIDI editor is going to be a very extensive bit of design...

Before I go, here's an mp3 that I just rendered, that was me piling on as many effects as possible, to test how great SMP is. What was particularly enjoyable is that I went to render it to disk (which is still single-threaded), and it went at 0.7x realtime. Yay, this makes me REALLY love my Athlon64x2.


March 8, 2006
freeform jam with brenchr

March 2, 2006
freeform jam with brenchr

February 28, 2006
moving mike

I don't know what I did to deserve it, but somehow I ended up having an awesome group of friends. Thanks guys for everything. And by everything, I mean the handjobs.


February 25, 2006
freeform jam with bangshmang

February 23, 2006
freeform jam with brenchr

February 20, 2006
it was still fucked

as a followup to my last post, the asynchronous file reading code was working in such a way that it worked, but ended up reading each block approximately 1.5x. Hugely wasteful. Spent all day figuring out why, and it was sooo worth it. yay. That made v0.77, now for a bunch of little tweaks for tomorrows 0.78. I hope my users are patient, but I know having constant updates helps keep people happy. at least the people who like that. I guess some people want to just have one version that works and never have to upgrade. But hell, this is v0.77, I guess that comes later...


February 19, 2006
freeform jam with newtbid

February 18, 2006
no time to update

must code.

just kidding, it's been long enough. REAPER's been envolving so steadily it amazes me. Gradually mistakes (well, decisions, not really mistakes) I made get massaged out, and replaced by new code that seems to work better. A nice class I wrote that I should have a long time ago is a generic file reader class, that can use win32 overlapped I/O if supported (which seems to be necessary when moving a lot of data from lots of files on disk).. Having that will be useful in the future. But another good time was realizing a good way of doing something like the track reordering, and getting to throw out (comfortably, thank you version control) a bunch of code that was a pain, and replace it with a nice simple bit of code that works much better. anyway.

At my release rate (a version a day or so, I will run out of 0.xx version numbers before 1.0 is really ready. So maybe when I get to 0.9 I will do 0.9.0 and so on. My list of things to do is quite large, but then again I need to realize that 1.0 is just 1.0, and there will always be more to do. But I'm not in a terrible rush, anyway.

...now I'm tempted to write a shoutcast output plug-in for reaper, mmm....


February 15, 2006
freeform jam with newtbider

February 8, 2006
server moved

...so there was some down time, mail lost, all that. but it's on a connection an order of magnitude faster, yay.

so tired I am. too much running around with my head cut off.


February 4, 2006
suppose it's time for an update

I woke up early this morning, after Allison left with her stack of cake, due to the PG&E guy reading the meter. Couldn't fall back asleep, but I didn't try too much. So today will be a long day, of which I suppose I don't have enough.

I did some arrangment/editing of this song last night with REAPER (Dave Wiener sent me those amazing vocals to work with). It really worked well. It's exceeding my expectations as far as what it can do. There's still so much to do, though. So so much. I'd say 1.0 in june would be plenty of time, though. if I don't get too tired.


February 1, 2006
freeform jam with brenchr

January 25, 2006
time to bowl, and other things

I've been programming too much, neglecting other things (and a particular person and cat as well), so now that REAPER v0.52 seems stable enough, I'm going to take a few days off to take care of those things as well as think about the best way to do things that need to be done with REAPER. Phew, that was a long sentence. So it's not really taking days off, anyway, it's really just "not programming" for a few. we'll see how long that lasts.


January 24, 2006
me brain is so fride

... but I posted REAPER 0.50, which has some pretty awesome auxiliary send functionality, as well as hardware output support, that I dig. and there's still so much to do! sigh. the todo list grows faster than I can keep up.

It will be interesting to see Acid 6.0. Before I started writing REAPER I wished Acid did multitrack recording well. But now it's too late, I'm committed to this. It's been 9 weeks. I'm so tired. But happy.

I ordered a real Mackie Control Universal, so I can support it. REAPER works great on my BFC2k in MCU mode, but apparently a real MCU doesn't like it. lame.

Everybody who has been sending in suggestions has been so helpful. It's really a lot like the old Winamp days, except people are REALLY passionate about what they want, which is even better. I just have to sort through it and find the best ways of pleasing myself (that sounds naughty) and others equally.

At any rate, REAPER v1.0 seems so far away now, but the prospect of making literally HUNDREDS of dollars, ~$20 at a time, seems so exciting. That's a lot of burritos. Why did I say I'd go to 1.0 before going shareware?


January 22, 2006
freeform jam with brenbidercolekevincraigmikecurtis

January 12, 2006
control surfaces and REAPER

So the control surface support for the Behringer BCF2000 was easy to do, now I'm doing modes for HUI and Mackie Control (using the BCF2k in emulation modes for it for testing).. if anybody has any documentation for HUI/Mackie MIDI protocols it would be helpful, for now I get to do lots of sniffing of the protocols and whatnot, which is less than ideal...

In general it works really well, and I'm very impressed with the quality of the $200 BCF. If any other manufacturers want to send me units, it would help too, haha.

I'll probably post 0.45 by monday or so which will have support for surfaces.. and maybe a few other things (depending on how much time I make to do them).. ogg (and maybe lame) encoding is a big one I'm planning on doing soon. Does lame_enc.dll support multiple simultaneous encodes yet? last I checked it did internally, though the bladeenc api didn't support it...

The biggest thing I'm planning now, though, and almost have figured out, is the automation recording, so you can use sliders and/or control surfaces to record envelopes. The code for this will be relatively straightforward, the UI for how to present it in a sensible way is the most difficult, I think. That and I gotta do DX/VST/JS parameter envelopes, too.

Anyway. Brennan and I saw that crazy (in an amazingly good way) 11 string bass guy at Guitar Center last night. I am still totally in awe.


January 10, 2006
and 0.44

(of REAPER)... is up.

The biggest single thing in it is that I made a nice system that buffers all source material in another thread, so the audio thread doesnt have to wait around for a slow network device or disk, etc (well, it still might have to, but it's a lot less likely). All of the effects and mixing of tracks still run in the audio thread, though that may change eventually, but for now it makes sense (since you may be monitoring an input on those channels, and would want to have the effects applied on there with as little latency as possible). At any rate, playback is now a LOT more reliable, with less little dropouts. It took me a few days of thinking to come up with this compromise, and a few hours to code it, but I'm pretty happy about it, thus far.

The other thing of interest is I made a separate position and playback cursor, so you can see where actions such as splitting will take place (or where you will start playback if you hit play and you were stopped). Makes a lot more sense now.

And there's a bunch of other small things (MIDI peaks now show the approximate notes/durations/etc), VST latency compensation, bla bla bla.

I picked up a $200 Behringer midi/usb control surface, going to add support for it tonight I think. Initially the faders will just map to volume sliders (and be controlled by them), but eventually there will be automation modes, I'm planning (automation will be supported with or without a real surface, that is, mmmm).

So much to do + no deadline = happy justin.


January 8, 2006
freeform jam with bidercoleianmore

January 7, 2006
too much data (and cpu)

Got a bit frustrated this evening with the amount of data that I've made myself deal with. There's just so much of it. The mp3 collection and photos are so small and manageable, and the full recordings of all of our jams and rehearsals are somewhat tolerable, but in keeping all of the NINJAM recordings that we host, too much data gets created. And for some extremely stupid reason, I insist on trying to keep it all. And what's the point of keeping it unless you do it redundantly. and I don't just mean on RAID. I mean on RAID, and on another drive, preferably one that doesnt spend all of its time over 100F, etc. So much data, bleh. Nevermind the data that is less big, but scattered around (backing up web servers like this one, cvs databases, etc). There's a lot of irreplaceable bits out there.

Oh yeah my other complaint was that in processing the NINJAM autosongs it ends up using alittle of CPU on my main workstation (which has plenty of CPU to spare), but uses way too much disk bandwidth. So I'm setting up a box just for that processing.

Back to my first paragraph, perhaps it just makes sense to say fuck it. You can't keep information forever. Or if you can, it's not worth bothering. If only we had our 100gb blu-ray recordable discs. if only I can hang on til then, I'll be able to put everything I will have by then on 20 of them or so. times two. plus the online (RAID) version. sigh.

I guess it's not really that much data.. I mean, everything fits within my 1.2tb array. so maybe I should just get another, and keep them synchronized. and set up rsyncs to backup other stuff to them. or just keep getting more firewire drives for the seocnd copies. rOn got one of those usb->IDE cables, that might be a good way to go, and just buy a few 400gb IDE drives..


January 6, 2006
REAPER 0.43 is up

...posted it late last night, let me know if you have any problems.


January 6, 2006
freeform jam with kevinnewtonfritz

January 4, 2006
so much stuff

I have the nastiest cough I've had in a long time, bleh.

So I've added basic VST support to REAPER, and in doing that I also added VSTi support, which then required me to add MIDI input support, which is pretty much done (there are some sync issues). So now I'm going to add MIDI file reading/writing, and I suppose MIDI output as well, and that will be hot. I can't wait to merge a lot of this into NINJAM, too, so we can use softsynths (as well as DX plugins and VSTs) directly. I'll do that someday soon.

Other stuff that will be in the next version of REAPER (in the next week or so):

+ moved config files to application data instead of the program directory

+ effect bypass support

+ directx plug-ins use the current samplerate instead of 44khz

+ made it so you can arm/disarm tracks while recording

+ option to create new files when recording every X megabytes

+ a bunch of preferences updates

+ tons more


Now I'm going to go cut an EP from a relatively productive new years eve...


December 31, 2005
freeform jam with brenwienerkevin

December 27, 2005
REAPER 0.42 (my favorite version number yet) is out

OK so I spent a couple nights doing some big changes for REAPER, and now, we have 0.42, which has some pretty neat new features (dockable mixer window being the most obvious, and master playspeed envelopes being the coolest). Word.

Now I must try to fight off a cold or something.


[ present ... 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 ... past ]
search : rss : recent comments : Copyright © 2021 Justin Frankel