<< >>
justin = { main feed , music , code , askjf , pubkey };recent comments
[ present ... 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 ... past ]
June 10, 2005
NINJAM is born (or almost born)

NINJAM web site is up. We'll be releasing alpha versions for Windows and 
OS X next week, it looks like. Woot.


June 6, 2005

Yay for Apple and the x86 announcement.

So I think it's about time to share info about the new project (for a while
I was unsure if it was going to even be useful, but after this afternoon's 
playing with it, I'm completely hooked). It's sort of half multiplayer game, 
half music production tool:

Brennan and I are working on software called Ninjam*, which allows a small
group of geographically challenged people to play music together. Because
latency is so important in playing music, existing voice conferencing 
over IP really wouldn't work. So instead, we decided to just make latency
bigger, not smaller. Latency in Ninjam is measured in measures, and that's
what makes it interesting. When you play, you're playing along with the
previous intervals of everybody else, and they're playing along with your
previous intervals. If this sounds pretty bizarre, it sort of is, until you
get used to it, then it becomes pretty natural.

We'll go into the architecture of Ninjam soon, and describe some of the 
more advanced upcoming features as they get implemented. I suppose this should
actually go on the Ninjam web site, but I'm too lazy as of yet.

Here is a little jam we had today with people from IRC (it comes together 
towards the end).

* Perhaps it should be NINJAM: 
     Novel Interval-based Network Jamming Architecture for Musicians


June 5, 2005
more on codecs, and maybe some mention of cats

So after spending quite a lot of time getting LAME/mpglib tuned for my
app, it turns out mpglib doesnt handle having multiple decodes going
at once (despite having a context pointer etc). LAME. REALLY. So after
looking around for any good solid (<=LGPL) mp3 decoders, and not finding
any, I started trying to use Vorbis again. My main problem was with creating
a Vorbis encoder taking too long. Well, when I went to get a burrito tonight,
I realized that I shouldn't be encoding samples as they come in, but rather
just when I get a chance. So with a mild architectural change (that took about
30 minutes), I got it all working nicely. Vorbis is really ideally suited for
this app (which you will be seeing shortly), on many levels, and above all
the fact that it's free goes a long long way.

Now I've been talking shit about APIs some, lately, and I just want to 
state that while I don't think I'm an expert on making great APIs (god
knows Winamp's API is a handfull), I do know a good API when I see one. :)
I managed to do a good one for Jesusonic, that allows me to integrate 
Jesusonic processing with other apps extremely easily (including the new
app)-- in making the DirectX plug-in the only challenge was making the
DirectX plug-in. Not integrating Jesusonic into it.

I'm very tempted to go make a version of LAME that has a very clean and
sane encoding and decoding API, as well as tuning the mpglib that comes with
it to support multiple decodes, much better frame synchronization (Winamp's 
got as solid as it did from just a few good tweaks).. it's very tempting, 
cause I often find myself wanting to support these things. Then again, maybe
I should wait until the MP3 patents run out, since I live in the USA...

Yay for Vorbis...

The other thing to note, is that the feral cat who adopted us rocks. Last night
we were watching a movie, and we heard this noise. I went to look into her 
little doghouse, and it looked like she was shredding the crap out of her bed.
I was thinking  "wow she must be restless or something", and I went out to 
survey (and perhaps clean up) the damage (scaring the cat off in the process),
only to find that she was just pulling her shedded hair from the bed, cleaning
it. IT made us feel bad that we didn't clean it sooner, but all was well once
we cleaned the hair off, and ran it through the washer and dryer, to give the
kitty back her clean bed. It just really impressed me, that's all.

And one final thing, with all of the rumour going around about Apple possibly
announcing switching to Intel architecture chips tomorrow, I'd just like to
point out the following:

Whether or not it makes business sense for them to switch, the actual process
of switching won't be that bad. Porting applications from OSX/PPC to OSX/x86 
wouldn't be that big of a deal. Getting everybody to use the updated APIs, 
and gcc for compiling, was the huge step. Apple may even have planned it, for 
all we know. API changes are a much bigger headache than instruction set/
endian changes. At least from my experience in porting software. Then again, 
99.99% of the code I write is endian-nuetral on the first take, so maybe I'm
smoking crack (but I doubt it). I'd really like to hear that Apple announced 
that they were going to use Athlon64s. AMD has really blown me away. And I'm 
going to order my A64X2 4400+ soon (HELLO, BIOS UPGRADE).

1 Comment

June 4, 2005
Burgers, APIs, and processors

In reverse order. My 2.4ghz Athlon64 will encode 48khz stereo WAV to 192kbps
MP3 at about 15x realtime. My 2.8ghz P4 does it at 11.5x realtime (both using
LAME). Sweet. That's 130% the speed at 85% the clock rate. Or about 1.5x more
shit getting done per cycle. Yay, and dual core A64s come out in a week or two,
I can't wait.

I spent some time integrating OGG Vorbis support into this new app that 
Brennan and I are working on, and it is sorely lacking in one respect--
the API for using it. Complete pain in the ass. They need to have a simple
encode/decode API, much like LAME (though I have a beef with LAME's API, too,
see next paragraph). Instead you have to deal with the gory details of the 
OGG format (OK so you can use the VorbisFile API, but it has its own complexity
issues, especially if you are dealing with streamed content). 

So then I also did some stuff with LAME, and they need to (at least on the 
Win32 side) provide a nice clean API as well as the old BladeEnc compatible
one. And lame_enc.dll includes mp3 decoding support, yet they don't expose 
any of it. So instead I have to do a 10 line patch to lame_enc.dll and have 
a custom dll to get it to work! (I will be sending them the changes for 
hopeful inclusion shortly)...but once I do it's good times and works.

There's a place down the street from here that I go to from time to time for
drinks and burgers, and I used to think that their burgers were really good,
but now I'm realizing they are only good if you have exactly the right amount
of alcohol-- too little, and you realize how overdone they are, or too much
which leaves you like I feel now-- bloated, nauseous, and feeling like you 
want to die. With burps that remind you why. Ugh.

Finally, I'm happy to see AOL open source AVS/Milkdrop/NSV/Ultravox. Woot.

1 Comment

June 3, 2005
freeform jam with brenchr

May 30, 2005
freeform jam with brenchrnewtondrunk

May 26, 2005
AMD rules

So I got a Shuttle ST20G5 (I think) and a 90nm AMD Athlon64 3800+, and let me say this thing
rocks. It runs at the same clock speed as my old P4 2.4ghz, and is way way faster, and
insanely quieter/cooler (I can hardly hear it). And once the Athlon64X2s come out, I will be
able to upgrade to dual core easily. Hot (but not TOO hot).

It's been a while since I've seen an Intel CPU that has impressed me this much. 

Had some pain getting XP to install since I didn't have a floppy drive and my HD is SATA.
Got to learn how to add it to an XP CD, which was, err, fun. And had some annoying times 
getting my printer/fax/scanner to work (the drivers included with XP were hanging the system).
After a good 8 hours of fudging I got it all where it needed to be. Now to go grab a couple
USB-Serial converters for doing AVR development (since my old box had two serial ports, and
this one has none).

Bleh, my back hurts. WTF. More to this story later.


May 20, 2005
freeform jam with kevcraig

May 19, 2005
christophe, however, can sing

As evidenced here.

1 Comment

May 18, 2005
i'm stupid and (unrelated) can't sing

Here's a newer incarnation of the mp3 linked to below, with me singing on it.
I really need to get voice lessons or something. If only I could make the sound
I imagine in my head.

But what I really hate is people who say shit like "you shouldn't sing" when I
make crap like this. Because if you don't try, how can you ever expect to 
improve? Anybody who has ever gotten good at something that once they were not
should know that.

(it's not like I recorded that and was like "MAN I RULE I NEED TO GO ON 


ownershipsociety draft
ownershipsociety draft2


May 17, 2005
a remix

Just made this remix (licensed under a Creative Commons Attribution NonCommercial ShareAlike 
license). It's from this remix contest. I know they want us to use more of their samples, but 
I'm too lazy to go dig through them.. and I wanted to do another song in non-4/4 time.. it 
almost works, anyway. But fun no less. I dedicate this song to Steve. 

Anyway, not gonna bother entering it or anything, but not too awful for a quick 
bit of work, either. My attention span is too short, though. On one of our own
songs, maybe I can spend more time, maybe.

Update: OK those vocals were really not working for me, here's a mix without 
them and with some drums in the bridge.



1 Comment

May 14, 2005

May 11, 2005
alone with my cold

My lovely woman ran off for a fun long weekend on the east coast, so I'm alone,
with the cat, my cold, my new gold crown (pictures coming soon) and some tasty 
indian food. 

I just made this tribute to one of our band's songs. Kinda funny.

I really dig the Treo 650 I got. Might start playing around with developing 
stuff for it. Maybe. I have an itch that needs scratching, now if I could just
find something that won't take tooo long to get into.

Tomorrow we're going to start recording album versions of our songs, fun.

Also, been watching that classic 90s show, "Strange Luck." It's been so long,
that I get to watch each one as if I've never seen it before. If only I had
something better than a terrible VHS rip.. 




May 10, 2005
mobile update

Woot testing from the treo...


May 8, 2005
freeform jam with brencraigf

May 6, 2005

May 4, 2005
show videos

Our show last night went pretty well, we had a very good time. We were lucky
enough to have two friends (ok ok more than two) there to videotape, so we
edited together this little video.


May 2, 2005
freeform jam with brenchr

May 1, 2005
h2g2 and MORE!

Woot only 2 days til our band plays. Excitement in the air!

Saw The Hitchhikers Guide to the Galaxy movie today. Was pretty good.
I understand that some of the changes were necessary to make a good movie,
and that's fine, but I do have a few gripes over particular things. But in 
the end, I think it's a good movie for what it is, and definitely enjoyed it.


April 30, 2005
freeform jam with bidermanian

April 28, 2005
freeform jam with brenchr

April 27, 2005
freeform jam with brenchr

April 26, 2005
jesusonic update and another rehearsal

I posted a link on the Jesusonic Forum to the Jesusonic DirectX plug-in, woot.

Also, our show next tuesday is on, and we will be going on at about 8:00pm.
Here is a playlist of our last rehearsal (which is a mixed bag but 
entertaining no less).


freeform jam with brenchr

1 Comment

April 23, 2005
freeform jam with brenbidershawnstevesharon

April 20, 2005
new pathsync

There's a new version of Pathsync up.  Thanks Francis and Alan! This new one 
lets you do a lot of nice things, see the whatsnew on the page.


April 16, 2005

OK so I still need to build the footboard for the new Jesusonic (which I will
do this week), but I just upgraded the board in this one to a via C3 1.2ghz 
board. The CrusFX still has a 1.6ghz P-M board in it. The difference in power
(and price!) between the P-Ms and the C3 is huge. But The 1.2ghz C3 is finally
powerful enough where in normal (and even excessive experimentation) I'm not
finding it running out of power. Yes, if I try, I can get it to run out 
(whereas with the P-M that is difficult sometimes even). So I think the first
run of Jesusonics will probably be 1.2ghz C3 powered.

If anybody is interested in purchasing one of the first run of Jesusonic 
hardware, let me know. It will probably cost around $1k, and will likely be
hand made and of very limited production. I'd like to gauge interest before
building the initial run.

I've still been using the 1.6ghz P-M based CrusFX for our practices, it's 
really quite fantastic, we tried using a Line6 POD XT Live for half of one
of the practices and while it was good too, it was also lacking in certain 
features (which makes me feel like making the Jesusonic is somewhat justified,
if not completely useful).

We had a fantastic rehearsal today, too, the mp3 is up. I can't wait for the
show (but I'm glad we have a little more time to get things solidifed ;)


freeform jam with brenchr


[ present ... 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 ... past ]
search : rss : recent comments : Copyright © 2022 Justin Frankel