Musix

Being a guitarist, back when I was running Windows, I would use audio apps like Cakewalk Pro Audio and Acid to noodle around and do recordings here and there. Now that my desktop machine is running Linux, I don’t really have the option of doing that anymore. My software is really old now anyway and it would be expensive to upgrade it.

The other day I noticed that Freebirth was installed on my Ubuntu machine so I played around with it for a bit. Kind of fun but seemed really basic.

I just happened upon Musix which is a Linux distro that has been customized for musicians and comes with a bunch of free audio apps. Naturally, this piqued my interest so I’m currently downloading the .iso for the Live CD (from a torrent) as we speak…

More later when the download is done and I get a chance to burn a CD and play with it a bit…

LMMS: Linux MultiMedia Studio

From http://lmms.sourceforge.net/:

LMMS aims to be a free alternative to popular (but commercial and closed- source) programs like FruityLoops, Cubase and Logic giving you the ability of producing music with your computer by creating cool loops, synthesizing and mixing sounds, arranging samples, having more fun with your MIDI-keyboard and much more…

LMMS combines the features of a tracker-/sequencer-program (pattern-/channel-/ sample-/song-/effect-management) and those of powerful synthesizers and samplers in a modern, user-friendly and easy to use graphical user-interface.

Any musicians out there give this a try?

YME Jabber Control

I’ve made my Jabber Control plugin for the Yahoo! Music Engine available for download.

This plugin allows the Yahoo! Music Engine to connect via Jabber (XMPP) protocol and listen for remote control events.

Screenshots

YMEJabberPlugin screenshot  

What is it?

This Yahoo! Music Engine DLL plugin installs a new item in the service drawer called
“Jabber Control”.

This plugin allows the Yahoo! Music Engine to connect via Jabber (XMPP) protocol and listen for remote control events.

Jabber is an open-source instant messaging standard that uses a streamed XML protocol (over TCP) for communications. While Jabber was originally conceived for instant messaging, it is not uncommon to use the communication protocol for other purposes, such as receiving news headlines and simple system administration. The benefit of using Jabber is that it enables communication between arbitrary points on the Internet, even in situations where one or both servers are behind a firewall which blocks incoming traffic. Jabber can do this because clients make outbound connections to an intermediate server, which serves as an intermediary for the two clients – thus neither client needs to accept a connection.

I chose Jabber for this project, because I wanted to be able to control the Yahoo! Music Engine from a device which does not live on the user’s home network. My main goal was to be able to use my Treo 650 as a remote control for the Music Engine. The Treo has wireless internet capabilities but does not live on my home network – therefore, it needs to connect to my home network from the outside, traversing my firewall. I didn’t want to open ports on my firewall for this and I didn’t want to require users of my plugin to have to mess with their firewall configuration either.

Requirements

  • .NET 2.0 Runtime

Download

Clients

You may control the YME from any Jabber-enabled client, such as:

  • Jabber desktop software, such as Exodus or Gush
  • Jabber wireless web-enabled chat software, such as Chatopus for the Treo 650, imov for PocketPC, IM+ for Blackberry, etc.
  • Future custom-developed applications for one or more wireless devices. These applications would be designed to function primarily as Music Engine remote controllers instead of chat programs. Thus, they would offer a more convenient user interface that takes advantage of all the features of the device. I would suggest writing such an app as a J2ME (Java) MIDlet – this would allow the application to run on a number of devices.

Command list

<< previous track
p previous track
>> next track
n next track
> play/pause
V volume up
v volume down
? help
h help

Development notes

This plugin was created with Microsoft Visual C# 2005 Express Edition Beta and the Nullsoft Scriptable Install System (NSIS).

Jabber functionality is provided by Jabber-Net, which is a nice Jabber library for .NET.

Tech talk

Did a tech talk today to show off a few Yahoo! Music Engine plugins and then show folks a bit about how to create their own. I wasn’t expecting to be well enough to get up there and talk, but I’m feeling decent today so I did it and I don’t think I coughed too many times (by the way, the doctor called with my test results today and said that my chest x-ray indicated that I have a “walking pneumona” in addition to my bronchitis). I also don’t work on the Yahoo! Music Engine, but that didn’t stop me from talking about it either. I wrote a few plugins in my spare time so it’s not completely silly:

Yahoo Music Engine plugin: Mouse Remote

Screenshots

YMEMouseRemote screenshot

What does it do?

This Yahoo! Music Engine DLL plugin installs a new item in the service drawer called
“Mouse Remote”. This page allows you to control the YME with very simple
mouse actions that don’t require looking at the screen:

  • Left mouse button: Go to previous track
  • Right mouse button: Go to next track
  • Middle mouse button: Play/pause toggle
  • Mouse wheel: Controls volume

These settings are actually customizable on the Mouse Remote page in case you don’t like the default mappings.

Note that these mouse mappings are only in effect when you have Mouse Remote selected in the service drawer and you’ve clicked the “Enable” button on the Mouse Remote page – this is necessary because otherwise
you wouldn’t be able to use your mouse for other things!

The ideal use case for this plugin is when you’re using YME to play music at a party and you don’t want to have a monitor in the living room just so that you can pause the music or skip a song. Ideally, you’d be
using a wireless mouse (e.g: Logitech MX-1000, etc.) so that you can just grab the mouse off the coffee table and issue commands.

Requirements

Download

Development notes

This plugin was created with Microsoft Visual C# 2005 Express Edition Beta and the Nullsoft Scriptable Install System (NSIS).

Yahoo Music Engine plugin: Export2Excel

Screenshots

YMEExcelPlugin screenshot  

YMEExcelPlugin screenshot

What is it?

This Yahoo! Music Engine DLL plugin installs a new item in the service drawer called
“Export to Excel”. This new page has a button, which if clicked will
dump the contents of your media database to an Excel worksheet and then
autoformat it.

It may take a couple of minutes for Excel to import all of the data,
depending on how many items you have in your media database. During the
import, the A2 cell will display a “please wait…” message and when the
import is done, the message will change to say “DONE”.

Use cases

The main use for this is so that you can print out your list of songs
and share it with friends to see what you have in common. Folks who are
comfortable with VBScript could also use that to perform tasks on their
data (e.g.: do stats, graphing, etc.), which may be a win for people who
are skilled with VBScript and don’t want to learn to program the YME API.

Requirements

Download

Development notes

This plugin was created with Microsoft Visual C# 2005 Express Edition Beta and the Nullsoft Scriptable Install System (NSIS).