Category Archives: ccHost

ccMixter Going Viral

I noticed the other day that Trifonic had gone to using a cool viral embedding from MixMatch for their latest stems.

I thought I could do the low-rent version and 4 hours later I had it checked in to ccMixter. (For people in feed readers you may have to just, you know, come to the site).

Now the MixMatch version has some cool Flash(tm)y features that I didn’t even try to match, but still… there it is. I even documented the whole process of making this feature.

MixMatch, the site, is a fully monetized version of ccMixter. They hope to make money for all their remix artists and stem providers by charging everybody (including remixers) on a per download basis. Now, I’m radically simplifying their revenue model – it’s actually pretty complicated — but the fact is they charge money for sharing — including your own remix. Like I said, it’s really complicated – I just thought the viral “remix me” thingy was kind of cool and wanted to see if I could take our publicize feature and use it for this kind of thing.

All of a sudden: Attribution

Tracking an attribution tree, including across sites, has been something we’ve been playing around with for a few years now on ccMixter.

The biggest problem with attribution is that it takes work, even when you want to “do the right thing,” knowing what to say and where crosses a line that most people don’t want to: it involves thought.

Molly Kleinman is now becoming famous for spelling out in human terms what this means to bloggers and other content consumers. No doubt she is providing an invaluable service (seriously). Just this morning the PlayTheWeb group is hashing out the implications of nested attribution with Lucas chiming in explaining how the XSPF playlist format handles derivation.

Maybe because my background in software is in development tools and call me Abraham Maslow but this problems looks very much like a nail to me.

Attribution, on both ends, has to be brain dead simple. We’ve simplified it as much as we could at ccM (given my limited imagination for such things) with a search function during the content submission process. (In fact, the ‘Submit’ button is inactive until the artist posting the remix has attributed somebody ;))

We’ve been using a simple api called the Sample Pool to communicate with other sites (freesound, magnatune, etc.) so that when a remixer is using a sample from one of those sites they select that name from known Pools that are searchable instead of ccMixter. The search results are offered as checkboxes. Again, that’s as simple as I could think of. When I say the api is “simple” I mean we invented no markup. We have a URL calling convention and all return values are RSS 2 feeds.

In order to be a Sample Pool, you need the following:

1. an RSS feed with a *.license element per entry
2. a way to search the feeds

It turns out that WordPress can be tweaked to do (1) with a few lines of code and already does (2). Just this morning I’ve confirmed we’ve successfully managed to convert a WordPress music blog called Audio Cookbook into a Sample Pool with 3 lines of mod_rewrite. (I’ll be publishing exactly how we did it on the CC Wiki in the next few days.)

To be a Sample Pool “client” you need to be able:

1. Construct an url
2. Ping a website
3. Parse an RSS feed

There is an implementation buried in the ccHost code but I’ll be the first to admit, I’m probably the only (non-masochistic) human who could easily extract it. Now that the WP-Sample Pool bridge has been crossed outbound, I’m definitely inspired to do this and then wrap it as an WP plugin so that when you are doing a post of content, you can search for the content you derived from and the proper attribution will be automatically embedded into your post.

My overall walkaway point is that attribution, in the real world, won’t happen until it is at least this easy for content creators and consumers alike.

BTW, the api does not track attribution further than one generation. We handle this on ccMixter by having users follow links. I have found, after nearly four years at ccMixter that there are only two classes of people that care about attribution further than one generation: commercial entities looking to clear samples and geeks. The second category includes the people I work for and other curious types. The artists don’t care about the larger attribution tree and the amount of UI flooding a typical song page is already crowded enough, thank you very much.

The first class, people who make a living clearing samples or looking to distribute royalties should have an easy way to expand the attribution tree and that might be necessary on my next job, but for this one, a non-profit remix hosting site, it just wasn’t called for. To accomplish this I would claim that no more spec’ing need to be done, just use the Dublin Core “source” element and follow each of those down.

I’ll be pontificating more about remix attribution tracking across the WWW at CC Nordic and FCONS, both in Sweden in late October.

last.fm: The API

I’ve just been sitting here the last 3 days tightening up the ccHost Query API 2.0, getting it ready for wide public release. As of this writing about 85% of ccMixter is driven by the API and I figure if we’re going to integrate into social sites to spread the good word I need to make it “real” – that is, robust, by actually checking parameters and returning meaningful error messages and other boring and friendly geeky things.

What a coincidence, here comes the last.fm API.

There’s no point in comparing the two, the ccH QAPI is a really basic affair with simply a view on looking at the data. To be honest, it’s mainly about making my life easier by having a uniform programming model to add features into ccMixter.

The last.fm API is really about Big Game.

A quick jargon lesson: When a programmer writes the code that makes up a software application it is not done in a vacuum. They are instructing some piece(s) of hardware to act a certain way. The problem is, there are thousands of different pieces of hardware and their instruction sets are all randomly different. So along comes a guy or company or a group of gun-toting Libertarians open-source movement, somebody to relieve that pain who says “I’ll make it so you don’t have to worry about the hardware. I’ll do this by writing a piece of software that goes between your application and the hardware. You just (re)write your application to a new instruction set that I give you and I’ll take care of the rest.” So you forget about the hardware’s instruction set and invest time, energy and money in learning this other guy’s instructions that he calls an “operating system.” Things are going OK except that all your friends are driving faster cars and even faster women and seem flush with the green. You figure out they’re having the bling life because all their applications are on this whole other operating system. Now along comes another set of bozos that say “Forget about all those operating systems. We’ll make it so you don’t you don’t have to worry about that stuff. You just (re)write your application to a new instruction we give you and we’ll take make sure it runs on all those operating systems.” So now you embark on re-investing your time, energy and money in learning this whole other thing and now you’re good to go with what these guys call an “application stack” – yes, as in stack of trays like in a cafeteria. You only worry about your “food” (aka script) on the top tray and the forget about the rest of the trays.

No matter whether the instruction set you use is meant to obscure hardware differences or operating differences or networking protocol differences the concept is called a “platform.”

Targeting a specific platform can be tricky because when you commit to one of these you become dependent on it until it is more cost efficient to rewrite the thing yet again. So at some point you are make the critical decision to pick which platform you are going to take to the dance. If enough application developers pick the same platform then the folks that provided that platform are the Big Winners.

The Web changed the game a bunch but there’ll always be a group of folks who want to be the Grand Gate Keepers and Key Masters. They stock their cubicles with developers who love to invent APIs and platforms because it’s just plain fun. When facebook invented their own platform and the site exploded because of all the cool platform widgets that developers wrote (typical facebook widget guy can pull down $2k per widget which is about a two day job) and birds were singing again. Except at Google which is so big they share mini-APIs out of strategic good will more than anything else. They don’t need to share their actual platform so much, just the applications.

I’ve forgotten where I’m going with this other than to say I hope it’s somebody else who goes and builds the last.fm/ccMixer widget and it isn’t left to me.

eMXR Interview

Niels (aka spinmeister) at eMXR is a real sweet guy who has turned out to be a great resource at ccMixter bringing hoards of great musicians to the site, doing great interviews with Trifonicand Calendar Girl and posting some superb mixes. Probably the most important thing he brings to the site is his inviting charm and grace. This is good for any community site, but especially ccM because for whatever else I do for the site, this is one area where I need others to pick up my slack.

This feature of his is in full view in a longish conversation we had in which we covered everything fourstones and ccMixter. I managed to keep it together and got ranty (moi??) only at the very end.

The full transcript is here:

eMXR: Fourstones of Magnatune and ccMixter fame gives rare interview

FS/VT Upgrade

So here we are, 2008 – almost halfway through lol.

Well, I’ve upgraded the look of the site (seems like an annual event), I’ve gone with a narrow light version – but I really don’t know how design stuff so it really is “throw stuff at the wall” until something sticks.

I’m sure a lot of old URLs are busted and may continue to be for a while while I get around to fixing things up. If you find something odd though, please don’t assume that I know about it and tell me about it.

For techies I’ve upgraded the whole site to the alpha of ccHost 5 and I’ll be posting the steps involved to the developers mailing list. Basically it tooks me three days with the vast majority of the time going to creating the css for the new skin (which I’ll probably be rolling into the ccHost release as well). I only had to one little set of hacks to the code itself to get the remix browser to fit into the narrow space and also remove needless filter fields (like, er, who the artist is).

Got Samples? Want to be Remixed?

For singer/songwriters who host their own music and read this site (I know that you know that I know who you are) think about this: over 80% of all a cappellas are remixed on ccMixter. That means your music will instantly go out to thousands of musicians and flung, through the miracle of the Internet to podcasters who regularly mine ccMixter. The only reason that number isn’t 100% is because we just haven’t gotten to all them yet. But we will.

Now, here’s a questionaire:

  1. Do you host a cappellas and samples good for remixing?
  2. Are they under CC license?
  3. Would you like to be remixed at ccMixter but don’t want to upload all your material there?
  4. Do you (or could you easily) emit a podcast/RSS feed?
  5. Do you have (or could you easily hook up) a search of your sample-able material to your feed?

If the last one trips you up don’t worry, I’ll be happy to help make that happen because
ccMixter is looking a few good beta testers of a new cross-domain service that we’re implementing and evangelizing called “Sample Pools.” If you impelement the brain dead simple API then remixers that use your vocals and samples will be linking back to your site with full attribution from ccMixter.

If you are interested please contact me and we’ll get you going.

I can’t promise everybody that applies will be accepted for this, we have to keep the site usable for the mainstream cases, but here are some test shots of what remixers and visitors will see if everything works out:

Help Beta Test ccHost

Ever wanted to host your own ccMixter?

The source code for ccMixer (project name ccHost) has been released under beta and we’re looking for testers so if you have a web server and you are now or plan to host:

  • a remix community
  • remix contests
  • media blog

or any combination, then come on down.

As of this writing there are about half a dozen test sites worldwide up and running on the beta and we’re always looking for more. (Pleeeeeeze.)

There are lots of new cool features in this version that are not on the ccMixter site yet, but the most important one is that uploads not limited to music files. You can safely upload video, flash and image files all with the same ‘I Sampled This’ tracking between uploads.

In addition the audio files are no longer limited to MP3, this version of code accepts just about every known beast including ogg, wmv, rm, etc.

The project is hosted at SourceForge and there’s a (very lame) Wiki page with all the links to bug reporting, mailing list (essential) and other stuff.

ccHost is part of the broader ccTools project.

Download ccHost here

CC Host and phpBB2

CC Host integrates with phpBB2 without any modifications to phpBB2.

If you want phpBB2 to pick up the current CC Host skin dynamically then you’ll need this phpBB2 skin (ZIP) to be your default skin. (There is example online of the two working together.).

To install:

  • put that zip into your phpBB2/templates directory
  • unzip (this should create a ‘cchost’ directory under ‘templates’)
  • Go to the phpBB2 Administration panel
  • Under ‘Styles Admin’ select ‘Add’, then click ‘ install’ next to ‘cchost’
  • Under ‘General Admin’ select ‘Configuation’
  • Select ‘cchost’ for the ‘Default Style’ and click ‘Submit’
  • Log out of phpBB2

That should do it.