Tuesday, March 13, 2007

Cakewalk Publisher

For those of you that don't know, Cakewalk has made a cool new internet-based tool called Cakewalk Publisher that allows you to create players to post on any HTML website (MySpace, PureVolume, eBay, Friendster, Windows Live Spaces, Blogs, etc).

Cakewalk Publisher will be included in the Project5 Version 2.5 update. Here is a little more information about the feature:

Create a customized, online, streaming music player with playlists that can then be uploaded from Project5 to band websites, MySpace, Blogs, and other Internet sites. Once you have finished a song in Project5, you can export it directly to Cakewalk Publisher.

Once you setup Cakewalk Publisher, you are then all set to start creating players that can be uploaded to almost any website. With Cakewalk Publisher, you can choose from a variety of options to customize the player including:

  • Creating playlists using multiple songs
  • Choosing the size of the Player (Album, Full, and Slim)
  • Choosing images and URLs for each song
  • Picking color schemes for the Player
  • Auto-play and repeating your playlists

You can create as many different players as you want. Once you are ready to upload it to your site, just click the “Publish” button. Cakewalk Publisher will then confirm that the upload was successful and display code, which you can then use to post on any website that supports HTML. That includes sites like MySpace, PureVolume, eBay, Friendster, Windows Live Spaces, Blogs,(TypaPad, WordPress, Blogger, etc) and more!

So to recap: Export Song>> Create Playlist>> Select Player>> Publish Player>> Promote Your Music

It really is that simple. And best of all, Cakewalk Publisher allows you to share your music with the world while still retaining ownership since you will be hosting the actually files on your site.

Thursday, February 08, 2007

NAMM trip

This is not so much a development blog as it is an update about NAMM. As many of you know, the Winter NAMM convention was held in Anaheim, CA (Jan 18-21). A few of us from the Project5 team went out there to help out with demos as well as meet with other third parties. While Cakewalk was heavily focused on SONAR related releases, we did put out a press release for Version 2.5 with the complete feature set (which was probably not news to most Project5 customers). But to others that had not heard about it, we got some very positive feedback.

The control surface support was an important thing and we met with a few companies including Frontier Design to discuss the implementation. They were excited and wanted to make sure they had a template for it before it was released. In addition we met with some of the best developer’s in the industry including Magnus from Sonic Charge. They make a cool piece of software called µTonic which you can check out at http://soniccharge.com/products. In addition, we met Christian from SampleRobot who is that maker of SampleRobot and WaveRobot. We talked about ways we could work together in the future. The technology is great and if you have Dimension, you should check it out at www.samplerobot.com as it can automatically create samples of real instruments that work in Dimension.

In addition to meeting other software developers, we also talked to a lot of content providers. One of our goals with this release is not only to improve the actually host, but to have more content available. We are talking more loop libraries, sample packs, instrument sounds, construction kits, presets and device chains. While we are not updating any of the instruments, new presets and patches are definitely in the works. We hope to offer everything from small, affordable construction kits to entire loop libraries. The content providers seem very eager to work with us and offer custom content for Project5 users which is good news.

Overall, NAMM was fun, and while it wasn’t a huge Project5 show, I am confident it will be a different story come next Winter NAMM. We met a few artists who are using Project5 for commercial projects and we hope to spotlight them in the coming months. You can expect more Project5 presence at future shows down the road.

Friday, February 02, 2007

Most requested features

Ok, so before we actually started work on Project5, we did a few surveys asking users what features they would like to see in Project5. I thought it might be good to share these with you just to know how we prioritized our tasks for Project5.

The top 5 were:

Input Quantize
Pre-post sends
Improved audio editing
Multiprocessor support

Looking at that list, we were able to tackle the first three and are in the process of putting finishing touches based on feedback from beta users.

Improved audio editing...we decided to address this by allowing the use of third party audio editors which certainly makes editing the audio easier.

Multiprocessor support...well we talked about that one, and we know people want it...but it wasn't possible to do it in this update. It will definitely come up in discussions for the next update.

We also added other stuff like ACT, which first appeared in SONAR 6, and other features we talked about internally. Internally, we also have a lot of good ideas for Project5 which we would like to rollout in the near future.

And in case you are wondering who we surveyed, we got the majority of responses from Project5 users as well as people who tried out the demo. There was certaintly a lot of good feedback from both groups, and you will some interesting changes to Project5 come April.

Wednesday, January 31, 2007

Project5 v2.5 Multiple I/O Support

Written by Mike Boncaldo, Cakewalk Engineer

One of the big new improvements in Project5 Version 2.5 is the ability to simultaneously use all Input and Output channels on an audio device. As you can imagine, going from supporting one Input and one Output to many of each involved changes on a fairly major scale, especially to the audio engine <==> driver interface.

Another challenging area was project persistence - what to do when loading and saving project files in a context where the numbers of available audio I/O channels can vary. Our testing in this area presented us with quite a few situations that we hadn't considered; we'll be relying on the group's testing to find many many more... :)

Following is a brief overview of what "Multiple I/O Support" really means in Project5.

P5 audio I/O is based on the concept of one "selected" or "active" audio device.-Choose which is the active device from "Options -- Audio"-P5 supports simultaneous access to all the Input and Output channels on the selected audio device-Channels are grouped by Project5 into stereo pairs, refered to as "hardware outputs"

-When creating a new project, Project5 creates as many Master buses as there are hardware outputs on the active device-Master buses can be sent to any (or no) hardware output, but only one Master can be routed to one output pair at any one time. That is, there is no mixer at the hardware output stage (unlike SONAR).-Saving a project will save all the master buses, including their settings, effect chains, and which output to route to-Loading a project restores the Masters and all settings, including Master to output routing.

-Audio Input sources can be selected on a track-by-track basis. When a track is created, the Input selection is initially set to None.-Input selection is done via a popup menu in the track inspector.-All audio inputs on the active device should be available for use, as well as having the traditional Project5 option of Left, Right, or Stereo on each.-Input sources are persisted in a manner similar to Outputs (see below): if opened on a system with differing audio hardware, it will assign available Inputs to tracks in order.

But what happens if the number of hardware outputs changes between Saving a project and Loading it? (For example, if you create a project on one system, and then open it on a different system that happens to have a different number of hardware outs.)

i) FEWER Hardware OutsWhen opened on system with fewer hardware outs than Master buses:-The available output pairs are enumerated, and Master buses will be routed to the hardware outputs in the project as far as possible.-The remaining Masters' output routing will be set to "None"

ii) MORE Hardware OutsWhen opened on system with more hardware outs than Master buses:-The master bus to output routing will be maintained. That is if a Master was routed to "Ouput 1" (the first output in the list) on the old system, it will be routed to the first output on the new system also.-New buses will be created, one per "extra" hardware out until each available hardware output has a Master to feed it.

iii) LEGACY PROJECTSWhen opening projects created by P5 v2.0.1 and previous:-All P5 project (.p5p) and template (.p5t) files prior to version 2.5 had one Master bus.-If the active device has one hardware output, the project will open exactly as it was, with the one Master routed to the one output-If the active device has more than one output, then it is handled by case (ii) above: The original Master will be routed to the first hardware out, and additional Master buses will be created and routed to each of the remaining hardware outs.

Monday, January 08, 2007

All I’m Asking For…

A lot of people had been asking for audio editing capabilities in Project5. With the addition of all the new multi i/o features, it seemed apparent that people would need some way to modify all the audio they’d be able to record. After all, nobody’s perfect. A whole new audio editor is quite an undertaking, so it seemed more efficient and flexible to allow users to use the audio editor of their choice (à la SONAR). This would also save time, as a lot of the basic code to this already exists, and more time saved equals more time to spend on other features. Wasn’t it Stravinsky who said “A good composer does not imitate, he steals”?

If only it were that easy

So steal I did. But SONAR allows a lot of different types of tools, and the internal structure is quite different so some things needed to change to work in Project5. One addition we’ve added to Project5 which fits the general paradigm is the ability to select two default editors. It’s probably not very likely someone has 5 audio editing programs installed and wants to be able to use all 5 on a frequent basis, so we permit users to select 2 default audio editors. You select the two default editors in a dialog box below. Both of these can be launched by clicking on a dropdown in the pattern editor view. But maybe two clicks is a lot of work, so the primary audio editor can be opened by clicking on a button in the same view. You can also see the button in the screen shot below:

I should note that I’m no artist and the above artwork for the button is temporary (in fact it doesn’t even match the other buttons right now).

Three’s company

So after getting all the guts hooked up, all I had left to do was to make sure it actually worked. There are a plethora of audio editors available, so I picked a few. We’ve tried it with Adobe Audition 2.0, Sound Forge, and WaveLab. It should work with others as well, these are just the ones I had available when working on the feature. So soon enough you’ll be able sit down with yourself, Project5, and the audio editor of your choice, and…well,…edit audio.


Thursday, December 28, 2006

Vista, standard users and you

That's right music lovers, Vista is just around the corner. While we're not expecting everyone to immediately take the plunge with Microsoft's new operating system when it is released January 30th, Project5 will be ready.

For those making the transition, if you've been happy running DAW/Synth workstation on Windows XP, a word you might hope to describe the transition may be "seamless." And while Vista has many visual enhancements that will be immediately obvious (particularly the "Aero" look, if you have graphics hardware to run it) the major change is in the safer user access model that Microsoft will now enforce... and this is something that will (hopefully) be invisible to most users.

"The Edge of No Control"

Most XP DAW users, and all XP Home users are running as administrators, which means that when they log in they have the highest level of control that Windows will afford to the person sitting at the keyboard. They can write into any folder, they can delete any folder that doesn't have open files, and they can change their settings at will. The problem of course is that any rogue software that can run with your level of access can do the same things. That's when total control becomes no control. Anyone will agree, life is too short to fighting virii and spyware on your computer.

"Please help us, Microsoft!"

The challenge for Microsoft in developing Vista was to live up to its goal of providing a seamless multiuser system. And what they needed to do to live up to that goal was to make sure standard user functions are done by standard users. Standard users (non-adminstrators) don't need to do things like reconfigure their system settings at any time when they are logged in, or install programs, or write files in protected areas like the Program Files folder or the Windows folder.

Well, in reality, us power users do need to do that sometimes, and you will still probably log in as an administrator to save yourself the trouble of logging in as someone else when you want to make a change. What Vista won't tell you (you stubborn power user,) is that you are not logging in an adminstrator, ever! By default all users are standard users. If you log in as an administrator and you want to make a change in a protected area of the file system, Vista will say "wait just a minute!" and prompt you to accept whatever potentially disasterous change you are trying to make. NOW when you click that OK button, you are asserting your right to make this change as the administrator.

"Was that a yawn?"

Hmm, it *is* getting late isn't it? As I wrote up top, all this shouldn't mean much to all of use who are currently running XP (hopefully with Project5!) We've always tried to make it easy to maintain the configuration of your Cakewalk DAW, which might mean you want to directly open a configuration file to make a change using notepad, or to just chuck the INI file and start again with default settings. Since we are trying to make it easy to find the configuration files, an obvious place to put it is in the same folder where Project5.exe lives... but this isn't going to fly in the new Vista user access model. Don't fret because we'll just put them in a user folder for easy access.

With this change we'll get what some Cakewalk customers have been asking for for a while... each user on a computer will have their own independently configurable options.

Tuesday, December 12, 2006

Project5 On The Surface

Bob Damiano, Director of Engineering / Borrowed Project5 Developer

One of the coolest features available in SONAR 6 is Active Controller Technology (ACT). For the uninitiated, ACT is a technology that lets your MIDI Controller/ Surface follow your context as you navigate around the application. Click a synth, you've got a synth controller. Click a Reverb, you've got 'verb knobs. Click on the track strips and switch back to old-school Control Surface parameters.

Well since I was one of the main people responsible for ACT in SONAR 6, the Project5 folks asked me if it would be possible to add ACT to this new release. "Sure!" I said without really thinking. After all, I really missed working on P5. Even though I have been away from P5 for several development cycles, I was actually the first person to work on the original Project5 version 1.0.

At first the P5 Product Management team didn't realize this but ACT is really a thin layer built on top of SONAR's Control Surface Framework. Yes - the same framework that gives you Mackie[tm] and Tranzport[tm] control, is the basis for ACT. So the good news for Project5 folks is "you can't get one without the other". To add ACT to Project5 really means adding full Control Surface Support!

The Leg Bone's Connected to the...

So just what would be involved in moving all this Control Surface code over to P5? After all, Surfaces were never intended to be used outside of the SONAR family of products. In fact, any adventurous folks who would download our Surface SDK at http://www.cakewalk.com/devxchange/ControlSurfaces.asp, would notice that all of the interface and parameter names have the word "SONAR" in them. The original creators of this framework really thought of it as a SONAR-centric thing.

It turned out to be relatively painless to lift the code and bring it over to P5. In fact, in many cases (because of P5's cleaner code architecture), the implementation of surface functions required much less code in P5. Nothing gives a developer more happy feelings than that. Not even coffee. And the best thing is... it works!

What is a "strip" anyway?

When it comes down to it, in terms of control, P5 is similar enough to SONAR that it makes sense to integrate the surface framework. P5 has native parameters (like Volume, Pan, etc), and it has plug-ins. One of the fundamental questions to deal with in P5 is "what is a strip?". In SONAR, a Track, a Bus... whatever - they're strips. In Project5 there is one slightly strange animal: the multi-out Synth Track. What is that? A strip? Many strips? We decided to go with the latter. So when using surfaces on P5, multi-out synth tracks are exposes as 1 output per strip. The strip name is exposed to the surface as the track name with the output number in parenthesis for example "Dimension Pro (Out 3)".

2nd ACT

Since the original release of ACT in SONAR 6, numerous improvements and bug fixes have gone into both the framework, and the various ACT-capable Surface Plugins. Happily Project5 is coming along at just the right time to pick up all these improvements. In addition, we know that several 3rd Party Controller Manufacturers are either creating ACT-capable surface plugins, or adding ACT support to existing plugins for their hardware. ACT is being well accepted and integrated across the industry.