code logs -> 2008 -> Thu, 31 Jan 2008< code.20080130.log - code.20080201.log >
--- Log opened Thu Jan 31 00:00:20 2008
00:10 Xiphias [~Ameroth@81.141.243.ns-22317] has joined #code
00:40 Finerty [~vorn@Admin.Nightstar.Net] has quit [Ping Timeout]
00:40 Vornotron [~vorn@Admin.Nightstar.Net] has joined #code
00:41 Vornotron is now known as Finerty
01:04 Xiphias [~Ameroth@81.141.243.ns-22317] has quit [Quit: I was never gone]
01:11 Finerty is now known as Vornicus
01:24 Derakon[AFK] is now known as Derakon
01:41
<@Derakon>
So...does anyone know where I can find out how to make MIDI driver software?
01:42
<@McMartin>
Is your goal to produce a MIDI sequence or to be a synth?
01:42
<@Derakon>
Produce a MIDI sequence.
01:42
<@Derakon>
GarageBand can be my synth.
01:43
<@McMartin>
Those are essentially slightly modified IFF files. I think I have a Python library lying around that did it.
01:43
<@Derakon>
Ideally, I want to be able to fire up GarageBand and have it recognize my PS2 controller as a valid input.
01:43
<@McMartin>
From when TF and I ripped the Raptor soundtrack.
01:44
<@McMartin>
That's "being a synth", and for that you'll need the protocol.
01:44
<@McMartin>
Google it; it's well documented, just in obscure places.
01:44
<@Derakon>
I thought the synth was the bit that translated MIDI inputs into sound.
01:44
<@McMartin>
MIDI sequences are a series of events in a file that say "at this time to this thing"
01:45
<@McMartin>
Well, if I want to make my synthesizer talk to a MIDI program, I take it and plug it into the computer.
01:45
<@McMartin>
You want to swap the synthesizer out for a PS2
01:45
<@Derakon>
A PS2 controller, hooked in via USB.
01:45
<@McMartin>
Yes.
01:45
<@McMartin>
As opposed to a synthesizer, hooked in via USB.
01:45
<@Derakon>
Just wanted to be clear that the actual console isn't involved here. :)
01:46
<@McMartin>
That probably involves tricking Garage Band.
01:46
<@McMartin>
Read joystick information, generate a new stream of data that corresponds to the MIDI events.
01:46
<@McMartin>
That's different from a MIDI Sequence File, AIUI.
01:46
<@Derakon>
I have a keyboard that I can plug in via USB which GarageBand will recognize.
01:46
<@McMartin>
Yes.
01:46
<@McMartin>
But that's because Windows is identifying it as a MIDI input device.
01:47
<@Derakon>
I figured I'd use SDL as a translation layer between the USB input and GB.
01:47
<@McMartin>
Windows will identify your Dual Shock as a joystick.
01:47
<@Derakon>
(This has the advantage of letting me play with visualizers)
01:47
<@McMartin>
This will only work if GB can talk to things that Windows does not tell it are MIDI Keyboards.
01:47
<@Derakon>
Also, Macintosh. ¬.¬
01:47
<@McMartin>
That the OS in general does not tell it are MIDI Keyboards.
01:47
<@Derakon>
Right.
01:48
<@McMartin>
That said you can probably hack /dev or OS X's equivalent to remap /dev/js0 to /dev/midi0in or what have you.
01:48
<@Derakon>
The inferior alternative is to generate a MIDI file and then load it into GB...that's inferior because then I have to do my own sound output, and it'll not sound as good as GB can do.
01:48
<@McMartin>
Or redirect /dev/midi0in to a pipe that your app controls.
01:49
<@Derakon>
So, to recap: I want to write synth software that will listen to my joystick inputs and write them to <some magical location> such that GB will think that they are a MIDI input.
01:49
<@Derakon>
Write them as a MIDI file/event stream.
01:50
<@McMartin>
Yes. AIUI those are two different formats.
01:50
<@McMartin>
There are about six python libraries out there for handling the file side.
01:51
<@McMartin>
That said I'm skeptical of your design, since it makes the Theremin look like a precision instrument.
01:51
<@Derakon>
Hrm. Or, I could buy this: http://www.steim.org/steim/junxion_v3.html
01:52
<@McMartin>
Wiimote support!
01:52
<@Derakon>
I suspect that one of the more useful features will be autotoning.
01:52
<@Derakon>
Which takes some of the guesswork out of hitting notes.
01:52
<@McMartin>
Well
01:52
<@McMartin>
MIDI is a digital interface.
01:52
<@McMartin>
It's not kidding.
01:52
<@McMartin>
You specify notes on the 12-tone scale.
01:52
<@McMartin>
Pitch slide is essentially a note bend and there's a *sharp* limit on how far you can do it programatically.
01:53
<@Derakon>
You obviously have more experience with MIDI practicalities than I do.
01:53
<@McMartin>
It's really designed to be a piano simulator, with a few extra shinies tacked on.
01:53
<@Derakon>
My design wasn't geared towards MIDI per se; that just happens to be the most convenient way to get sound out.
01:54
<@McMartin>
Basically there's a wheel with endpoints for "warp pitch by this much", and then note-on and note-off events.
01:54
<@Derakon>
Hrm. EUR75 for Junxion.
01:55 * McMartin would start by finding a MIDI event dumper -- which GB should just do on its own -- and looking at some files to see if it's the sort of thing you want to design to.
01:55
<@Derakon>
More realistically, I'd start by studying MIDI so I have some clue how it works.
01:56
<@McMartin>
Reading an event dump will tell you 90% of what you need to know.
01:56
<@McMartin>
The rest is just encoding.
01:56
<@Derakon>
That's assuming that I go the route of writing a file and then importing it into GB.
01:56
<@Derakon>
Or, wait, no...bah.
01:57
<@McMartin>
The fact that there are two possible encodings does not mean that the rest is not encoding~
01:59 * Derakon plugs in his USB keyboard. "I don't see anything in /dev that looks plausible."
02:00
<@McMartin>
It may just be "Generic USB Thing #42" or whatnot.
02:00
<@McMartin>
My MIDI->USB converter looks like it has a microprocessor in it.
02:01
<@Derakon>
The only things that are updated recently in /dev are null, random, ttyp5, and ptyp5.
02:04
<@McMartin>
I don't suppose there are any free sequencing programs for OS X~
02:05
<@Derakon>
Possibly, but I'm not immediately aware of any.
02:05 ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Operation timed out]
02:05
<@Derakon>
GarageBand should have come with your OS, though. It's part of iLife.
02:05
<@McMartin>
Hm. I'll poke at it.
02:05
<@McMartin>
... in six hours.
02:05
<@Derakon>
Heh.
02:06
<@Derakon>
ISTR its interface for manually inserting notes not being remotely clueful. There's some keyboard shortcut that you have to divine to insert notes.
02:15
< Vornicus>
I didn't have any trouble with it.
02:16
<@Derakon>
I'm just saying it was short on documentation.
02:28
< Vornicus>
mm.
02:31 * Vornicus finds hmself fiddling with ball physics.
02:32
<+Attilla>
Oh is that what they call it these days?
02:32 * Attilla ponders why Anno and Vorn specifically do not have voices. They are the voiceless.
02:33 mode/#code [+oo UndeadAnno Vornicus] by Vornicus
02:39 * Vornicus has figured out the basic forces on ball physics, but still has some parts to poke at: multiple contact points, brief interactions, bounce, and imparting spin...
03:19 mode/#code [+oooo Attilla C_tiger EvilDarkLord Pi] by Vornicus
03:22
<@McMartin>
Man, I hate xfig.
03:22
<@McMartin>
But everything else is so much worse. ;_;
03:22
<@Vornicus>
xfig?
03:23
<@McMartin>
A program for drawing figures, written to target the X windowing system.
03:23
<@Vornicus>
Figures like people, or figures like "see figure 3"
03:23
<@McMartin>
The latter
03:24
<@McMartin>
Since in order to be usable, it needs to be able to produce .eps and .pdf exports, and it needs to carry sensible graphical bounds information.
03:24
<@McMartin>
OO.o, noticably, makes every image take up the entire page, even if it's three boxes and five words of text.
03:25
<@McMartin>
PowerPoint is inconsistent about embedding fonts, which makes its products largely unsuitable for publication.
03:25
<@McMartin>
Adobe Distiller, which can fix these problems, costs enormous sums.
03:25
<@Derakon>
Isn't there some way to make slideshows in LaTeX?
03:26
<@McMartin>
I don't want to make slideshows.
03:26
<@McMartin>
I want to make figures, and embed them in a document.
03:26
<@Derakon>
Ah.
03:26
<@Derakon>
You could make that document be *tex. ¬.¬
03:26
<@McMartin>
(And yes, but if you want graphics, you need to embed them as .eps)
03:26
<@McMartin>
It is.
03:26
<@Derakon>
Hrm.
03:26
<@McMartin>
And xfig is the only fucking program that plays nice with it.
03:26
<@Derakon>
Ahhhh.
03:26
<@Derakon>
As opposed to something marginally sane.
03:27
<@McMartin>
Right, because it turns out that the marginally sane ones are insane in ways that aren't visible to the user but are very visible to publishers (replacing all your text with rectangles, for instance).
03:27
<@Derakon>
Hrm. ImageMagick can convert to .eps.
03:28
<@McMartin>
Also, *TeX itself is insane, in that either all your figures must be PDF or none of them may be.
03:28
<@McMartin>
And which one is allowed at any given time depends on quirks of your LaTeX install.
03:28
<@Derakon>
My old chainmaille instruction book, written in LaTeX, used PNG images with no apparent problems.
03:29
<@McMartin>
I don't need images.
03:29
<@McMartin>
I need rectangles and text.
03:29
<@Derakon>
And they need to be vectorized, not rasters?
03:29
<@McMartin>
Yes, since it will be scaled differently in the draft vs. the camera-ready.
03:30
<@McMartin>
As it happens, I have what I need.
03:30
<@Derakon>
You could make lo-res and high-res versions.
03:30
<@McMartin>
But it was obnoxious, and so I complain.
03:30
<@McMartin>
Or I could use xfig.
03:30
<@Derakon>
Heh.
03:30
<@McMartin>
Which I've already done.
03:30
<@Derakon>
Well, then, carry on!
03:30
<@McMartin>
And which works on PDF-configured and non-PDF-configured LaTeX installs, because my advisor seems to keep switching between such machines.
03:30
<@McMartin>
And which embeds its fonts, which the publishers require, etc. etc.
03:31
<@Derakon>
I advise creating the entire document in Postscript, rasterizing it, and embedding it into a PDF via LaTeX.
03:32
<@McMartin>
That would in fact get it rejected immediately without consideration.
03:32 * Derakon snerks.
03:32
<@McMartin>
(And for some reason they have stopped accepting ordinary PostScript submissions in recent years.)
03:32
<@Derakon>
Too old-school, I'm guessing.
03:33
<@McMartin>
The PDFs are required to run in Acroread 5.
03:33
<@McMartin>
They're up to what, 9 now?
03:33
<@Derakon>
I didn't say they were consistent!
03:34
<@McMartin>
And .ps was fine in 2002. It's not like there was OS support for it then either.
03:34
<@Derakon>
Most likely, someone said ".ps? Why do we still support that? Nobody uses it, right?" and chucked it with as many words.
03:49 * Vornicus <3 PostScript
04:05
<@McMartin>
They're unusually consistent given that there are least three different bodies involved here.
04:10 * Vornicus does battle with various things.
04:11 * McMartin crafts a JavaScript payload calculated slay any living being.
05:05 MyNetCatVerbs [~richard@Nightstar-16091.cable.ubr06.hawk.blueyonder.co.uk] has joined #code
05:05
< MyNetCatVerbs>
Oooh, fun. Adding features is not only a suicidally bad idea, but also addictive.
05:05
<@Derakon>
Heh.
05:06
< MyNetCatVerbs>
If I keep this up long enough, eventually I might inflict sufficient stupidity on the world to accidentally write an IRC client.
05:06 Reiver [~reaverta@118.90.71.ns-12006] has quit [Ping Timeout]
05:06
< MyNetCatVerbs>
Though it must be said, this is orders of magnitude more convenient than manually checking once every 30 seconds for ping messages. :)
05:07
< MyNetCatVerbs>
Hmmm, doesn't seem to flush the logging handle very often. Soon rectified...
05:07 DiceBot [~Reiver@Nightstar-22102.xdsl.xnet.co.nz] has quit [Ping Timeout]
05:07
<@Derakon>
You've gone and killed Reiver and our dicebot, you fiend!
05:08
< MyNetCatVerbs>
Yeah, typing raw 1459 with only your fists tends to scare people away.
05:08 MyNetCatVerbs [~richard@Nightstar-16091.cable.ubr06.hawk.blueyonder.co.uk] has quit [Quit: Be riiiiiight back.]
05:09 MyNetCatVerbs [~richard@Nightstar-16091.cable.ubr06.hawk.blueyonder.co.uk] has joined #code
05:09
< MyNetCatVerbs>
Ah, now that's something of an improvement.
05:10
< MyNetCatVerbs>
Line buffering FTW. ^_^
05:12 Reiver [~reaverta@118.90.27.ns-12875] has joined #Code
05:12 mode/#code [+o Reiver] by ChanServ
05:14 DiceBot [~Reiver@Nightstar-23418.xdsl.xnet.co.nz] has joined #Code
05:14 mode/#code [+v DiceBot] by ChanServ
06:37 Derakon is now known as Derakon[AFK]
07:49 Vornicus is now known as Vornicus-Latens
08:50 You're now known as TheWatcher
10:54 gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has joined #Code
10:54 mode/#code [+o gnolam] by ChanServ
12:45 Attilla [~The.Attil@194.72.70.ns-11849] has quit [Quit: <Insert Humorous and/or serious exit message here>]
13:09 Attilla [~The.Attil@194.72.70.ns-11849] has joined #code
14:27 ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code
14:27 mode/#code [+o ToxicFrog] by ChanServ
14:42 MyNetCatVerbs [~richard@Nightstar-16091.cable.ubr06.hawk.blueyonder.co.uk] has quit [Ping Timeout]
17:10 You're now known as TheWatcher[afk]
17:13 Vornicus-Latens is now known as Vornicus
17:14 Vornicus is now known as NSGuest-4787
17:14 NSGuest-4787 is now known as Vornicus
17:33 Vornicus [~vorn@ServicesOp.Nightstar.Net] has quit [Ping Timeout]
17:37 Vornicus [~vorn@Admin.Nightstar.Net] has joined #code
17:38 mode/#code [+o Vornicus] by ChanServ
18:24 Doctor_Nick [~nick@128.186.122.ns-1880] has joined #code
18:33 You're now known as TheWatcher
19:58 Doctor_Nick [~nick@128.186.122.ns-1880] has quit [Ping Timeout]
20:00 Doctor_Nick [~nick@Nightstar-4956.cs.fsu.edu] has joined #code
21:14 Xiphias [~Ameroth@Nightstar-13027.wlms-broadband.com] has joined #code
21:30 Xiphias [~Ameroth@Nightstar-13027.wlms-broadband.com] has quit [Quit: I was never gone]
22:01 UndeadAnno [AnnoDomini@83.21.84.ns-3801] has quit [Ping Timeout]
22:01 UndeadAnno [AnnoDomini@83.21.38.ns-3545] has joined #Code
22:07 gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has quit [Quit: Z?]
22:17 Doctor_Nick [~nick@Nightstar-4956.cs.fsu.edu] has quit [Quit: Konversation terminated!]
22:44
< UndeadAnno>
I wonder... what's considered a 'fast computer' nowadays?
22:44 * UndeadAnno downloaded a tuning utility for Firefox and can't really tell which option he should pick.
22:46
<@EvilDarkLord>
What kind of computer do you have?
22:47
< UndeadAnno>
AMD Sempron 2800+ (WinXP claims 1.99 GHz), 1.5 GB of RAM, Riva TNT 32 graphics card.
22:51
<@EvilDarkLord>
Sounds somewhat like my laptop. Probably not the fastest category.
22:54
< UndeadAnno>
Well, found the definitions in the program, it apparently qualifies for fast.
22:54
< UndeadAnno>
It did speed up the browser a bit, but not very much.
22:55
< UndeadAnno>
How is it that Opera can handle multitudes of open picture windows without any apparent slowdown and Firefox cannot?
22:56
<@ToxicFrog>
Because Opera is a good browser, and Firefox is not.
22:57
<@McMartin>
Objection
22:57
<@McMartin>
Well
22:57
<@McMartin>
Unless "standards-conformant" is not part of "good"
22:58
< UndeadAnno>
ToxicFrog: I was rather desiring a useful answer, not an unbacked personal opinion.
22:59
<@McMartin>
UndeadAnno: "Because Firefox is written largely in Javascript."
22:59
<@ToxicFrog>
UndeadAnno: well, I'm sorry, but I don't have access to the Opera source code to give you a detailed explanation of why opera is faster, more stable, and uses less memory than Firefox.
22:59
<@ToxicFrog>
And I don't care enough to disassemble it.
23:00
<@ToxicFrog>
McMartin: as far as standards compliance goes, I have yet to find a site that works in one but not the other.
23:00
< UndeadAnno>
See, McM managed a useful answer without going into the level of detail you said you'd need. :/
23:00
<@McMartin>
"Because full CSS/DOM compliance isn't on its spec sheet and it's written entirely in a compiled language."
23:01
<@McMartin>
TF: Our web security researchers go into fits dealing with it.
23:01
<@McMartin>
Opera sells this as a feature, of course, but its idea of DOM is apparently different.
23:01
<@ToxicFrog>
Why do your WSRs go into fits?
23:02
<@McMartin>
Because their test cases that agree across WebKit, FF, and IE behave nearly-randomly on Opera.
23:03
<@ToxicFrog>
Aah.
23:04
<@ToxicFrog>
Well. From the perspective of someone who's just an end user, it's compliance is functionally indistinguishable from FF's.
23:05 * McMartin guesses that it's going to be various kinds of AJAX that break.
23:21 C_tiger [~c_wyz@96.232.26.ns-4600] has quit [Connection reset by peer]
23:24 You're now known as TheWatcher[T-2]
23:29 You're now known as TheWatcher[zZzZ]
23:52 Serah [~Z@87.72.35.ns-26506] has joined #Code
23:55 C_tiger [~c_wyz@96.232.26.ns-4600] has joined #code
--- Log closed Fri Feb 01 00:00:27 2008
code logs -> 2008 -> Thu, 31 Jan 2008< code.20080130.log - code.20080201.log >