Audio Complexities

I have 2 computers that I like to use simultaneously. I have  sets of headphones. I used to solve this problem by giving each computer its own set of headphones. When I needed to listen to something, I’d put on the appropriate headphones and listen. This worked pretty well.

In an attempt to play music into voice chat, I decided I would use 2 computers, because keeping it all contained on one computer wasn’t working. So I used a male-male 1/8th inch audio jack to route the audio out from my laptop to the audio in on my desktop. Now I could play music, but when playing music I couldn’t talk at the same time. This would require a little more complex internal routing. When routing audio around on a Mac, I have found Soundflower by Cycling 74 and LineIn (download) by Rouge Amoeba invaluable. Soundflower provides a virtual audio input/output on the mac. Any sound sent to Soundflower will be sent out Soundflower’s output. LineIn allows you to route the output of one source to the input of another. You could, say, play the built in microphone of the computer through your headphones. LineIn can only do one route at a time, so I made several copies of the application so that I could set up several routings. You can now route your microphone and the laptop to Soundflower, route the laptop to your headphones, and have the voice chat take input from Soundflower. You can hear both computers, and the voice chat can hear your mic and the laptop.

Minecraft, Blender, and mcobj

If you want to make images of your Minecraft world like this, this, these, or these, you have come to the right place.

This tutorial is aimed at *nix  (linux, mac, etc.) systems workflows, mainly because those are the systems I have. I will include windows instructions, but they aren’t tested, or are tested less than the *nix instructions. Luckily, the differences shouldn’t be too great.

Continue reading

Bitcoin as a currency and benchmark

I recently discovered Bitcoin, and I’ve been running it on my laptop for some time, hoping to get luck. I haven’t, of course, and my wealth consists of 0.04 bitcoins. I got 0.05 from the Bitcoin Faucet, and lost 0.01 to transaction fees. I have, however, joined a mining pool called mining.bitcoin.cz. I’ve got it running on my server and my iMac, but my laptop has a bad overheating problem, and I fear that running the miner for too long would cause it to shutdown. I have successfully used cpuminer, but it was hell to compile on my mac. I had to steal a functional bitswap.h from OpenGL, and the bleeding edge wouldn’t compile due to, as far as I can tell, autoconfig issues. It compiled fine on my linux laptop and server, and I’ve got it running on my iMac and server. CPUMiner reports khash/sec regularly, so I can now say that my iMac is 4 times faster than my server, and my laptop is 5 times faster. Sadly, due to other, unsolved, compilation issues, I can’t take advantage of the GPU in my iMac, so I suspect that in raw power, my iMac actually wins the race, but I haven’t gotten a combination CPU/GPU miner running yet. I haven’t seen any payoff yet, so let’s hope I haven’t messed something up, and I am, in fact, contributing to the mining pool.

push_dir

Push_dir is a quick and dirty little ruby gem that simplifies working directory management, allowing you to write code looking like this:

include PushDir

push_dir '/' do
     # What you do here will be in '/'
end
# While what you do here will be where you were last.

You can see it here, or nab the gem with gem install push_dir

Clisp Snippets

I’ve been playing around with the Land of Lisp, which is an awesome book written for Common Lisp, Gnu Clisp to be specific. So, I like vim, and I like SnipMate, but SnipMate doesn’t ship with any lisp snippets, and I couldn’t find any on github, so I wrote my own, albeit incomplete, set. You can find it here, and it is designed to work with Pathogen.

Introducing Spyr

Spyr is a simple ruby agent framework, which you can see here.

Chronograph on Github

Yeah, Chronograph is now on Github here. I’ve refactored the classes into separate files and got it into a gem. We are now at version 0.0.1, so beta.

Follow

Get every new post delivered to your Inbox.