Home
“Nightwatch” [entries|archive|friends|userinfo]
"Praxeology rests on the fundamental axiom that human beings engage in conscious actions toward chosen blah blah blah blah blah teh market!"

[ website | Pictures and Stuff ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

Audio APIs for Linux [Dec. 5th, 2007|11:20 pm]
[Tags|]
[Current Mood | hungry]

Some observations on Linux desktop audio APIs.


  • ALSA is a nice driver framework. ALSA sucks as a high-level audio API. Stop coding your general desktop use app in it. It is hard to configure and finicky, and most apps that claim to support it (e.g. ZSNES) don't actually support it very well.

  • OSS is great if you are living in the days when a Sound Blaster 16 was a high-level audio card. Unfortunately, these days we need more than one program to be able to play sound at one time. More often than not, ESounD or aRts will be hogging /dev/dsp, resulting in incredibly confusing error messages to the end user. If your app (I'm looking at you, Praat and VMware) still uses OSS, please do us all a favor and upgrade.

  • ESounD is GNOME only and basically works, but for real time apps it is slooooooow.

  • aRts is KDE only, and since Ubuntu is the way things are increasingly going, it's more likely than not not installed on your users' machines.



What does that leave? It's an option that is all too often forgotten:

  • SDL. SDL is simple and it has a remarkable tendency to just work. There are bindings to every language in existence, it's a mature codebase, and it embodies the Unix design philosophy well. Plus, if you write in SDL, you're portable to Windows and Mac OS X too!


I write this after fiddling with audio setting after audio setting in various programs, trying to get them to all work properly together, but to no avail. Then I set all the programs' audio output to SDL, and every single program worked.

If you're writing a Linux audio program, do your users a favor and use SDL by default.
Link4 comments|Leave a comment

Hey everyone [Jan. 2nd, 2007|10:02 pm]
[Tags|]
[Current Mood | nerdy]

Someone buy A Retargetable C Compiler for me so I can port the compiler to the 5A22 tia
Link1 comment|Leave a comment

(no subject) [Jul. 19th, 2006|06:25 am]
[Tags|]
[Current Mood | tired]

psyducks

I hacked together a Core Image Unit (a Mac snob way to say "OpenGL shader") for the Super2xSaI image scaly thingy you see in emulators, because I always thought it was silly to do this stuff on the CPU when everyone has these big expensive video cards that emulators don't exactly use much of.

And now I need to get back to working on Real Stuff.
LinkLeave a comment

Heads up to Windows users [Dec. 28th, 2005|09:20 pm]
[Tags|]
[Current Mood | energetic]

There's a buffer overrun out there in WMF (a crappy ancient vector graphics format that Windows knows how to display). You can get infected though IE automatically, through Firefox if you choose to open the WMF, and (worst of all) automatically if the file is sitting on your hard drive and you're running Google Desktop.

Oh, and it can go through any image file type on Windows if you run it in IE or Windows Image Viewer, so basically be really careful for now.
Link1 comment|Leave a comment

Summer of Code finished! [Sep. 1st, 2005|04:59 pm]
[Tags|, , ]
[Current Mood | accomplished]

Hello LJ friends,

If you have a paid account, go to the ADVANCED CUSTOMIZATION SECTION and edit your layer. That's the pretty page I just finished.

If this is :psyduck: to you, don't worry about it.

Edit: Wow, I'm frontpaged. If you have any bug reports, please leave them here.
Link14 comments|Leave a comment

Excerpt from documentation I'm using [Jul. 24th, 2005|11:24 pm]
[Tags|, ]
[Current Mood | awed by the Range object]

"By this time I am hopeful that I have convinced you of the power of the Range object. With the power of this object in the hands of web designers the web will be opened up to an age of dynamic web pages where the page viewer has the ability to change the content as needed. I see a future for web pages to be given the power of true applications with full user editing capabilities. I see a lifting of the chains of static content controlled only by the author of the page. Eventually the end user will be given control."
LinkLeave a comment

Word game [Jul. 8th, 2005|11:23 pm]
[Tags|]

http://www.mogos.net/dj - go play.

Also, this journal has a new style with tags running down the side. I'll probably post the recursive radix sort algorithm I use for sorting them somewhere.
LinkLeave a comment

navigation
[ viewing | most recent entries ]