View RSS Feed

Andy

Latest Project

Rate this Entry
With the group I'm currently working with, we have a unique problem that I haven't run into before. The cast of 5 players have "alternates" who will replace the main cast members from time to time, from just one player to all players. The combinations and permutations of cast members is a lot.
Some use wedges, some are on IEMs, although they are all currently "on their way" to using IEMS.

So, we had to come up with a way to have everyone's IEM and wedge mixes accomodated, no matter what combination of players are playing. It's extremely tricky, as not only do you need to change the mixes for the person playing, but you also need to change the other players' mixes depending on who they're playing with.

Add to that the need to make sure everyone has their latest settings. If one alternate hasn't played with the group in a month, it doesn't do any good to load the last setup that that player had since all the other players have had changes since then.

A way needed to be devised to pull in JUST the latest information for each player, based on who they are playing with. I needed to write a program that figures out what information to pull from previous setup files, based on what combination of players would be performing.

Turns out it's quite complex. Getting my head around "how it should work" took just as long as writing the program! Turns out you need to identify 2 things for each player: What channels do they "play" and what mixes do they "listen to".

For example, the bass player plays the bass DI & MIC channel and his vocal and the acoustic guitar. The drummer plays all the drum kit mics and the click. The bass player listens to his IEM mixes, and his wedge. (If he's an IEM user, the wedge mix is muted).

So you end up with this matrix of players, channels and mixes. I used a DataGridView to show it, with colour coding based on the player.

Add to that the complexity of 40+ scenes in the show and the fact that players move around on stage, singing into other mics than their own, playing multiple instruments. The "who's channel/who's mix" matrix had to store information for each scene separately as they can change.

So, the program is simple enough to use, but Very complicated to get the right information into it at setup time. Picking the correct "Who's" is quite tricky. Also, setup files have to have all matching scenes to work.

Anyway, it's custom made for our group, and I can't imagine trying to get it to become generic enough to release, let alone support, since the setup is so difficult to get right.

Good news is that it works perfectly if you do get it set up right, and I learned quite a bit more about Yamaha session (scene) files and some additional programming.

Here's a demo of how the program works:
http://checkcheckonetwo.com/files/FlexiCast_Demo.html

(Firefox users: http://checkcheckonetwo.com/files/flexicast.SWF)

Updated 07-15-2010 at 03:50 AM by Andy

Categories
Programming

Comments

  1. Andy -
    Andy's Avatar
    Update:

    Been using the program daily for a few weeks now, and after a few little updates, it's working perfectly!

    The surprising thing is sometimes you look at the new data and think "that's not right", but in fact it is, just because that particular combination of players leads to that specific setting, so in many ways, it's more accurate than just charting or "remembering" what each person likes. There'd be no way to chart all the possible combinations of players.

    It's been flawless so far. Again, the trickiest part is getting the matrix of players accurately entered. Once you've got that correct, select today's players and the program does all the work.
    Updated 07-15-2010 at 03:52 AM by Andy
  2. guessi -
    guessi's Avatar
    sorry, the demo page gives me just a blank white screen and in the context menu the flash player 10 says something like "movie not loaded"
    Updated 07-15-2010 at 03:52 AM by Andy
  3. Andy -
    Andy's Avatar
    Quote Originally Posted by guessi
    sorry, the demo page gives me just a blank white screen and in the context menu the flash player 10 says something like "movie not loaded"
    Yeah, I'm clueless when it comes to streaming video.
    Maybe this will work? http://www.checkcheckonetwo.com/files/FlexiCast.swf
    If not clicking it, then right-click (or whatever you Mac-guys do) and select "Save Target As..."

    Seems if the video is too long, the browser buffers the whole thing which takes forever. Haven't been able to figure out a better way yet.
    Updated 07-15-2010 at 03:52 AM by Andy
  4. guessi -
    guessi's Avatar
    alright, the direct link to the swf works
    btw: I'm on linux, but ok: MacOSX is a a child of the *nix-universe as well :-)
    with the blank html-page: it did not load or buffer anything as I could have seen my ethernet switch blinking during data transfer

    definately your project looks impressive, the big challenge is to verify if after all it did everything right, but as you wrote, it seems so :-)

    what I maybe missed or did not understand:
    the source for all the settings is still single PM5-files, or is there any other datasource involved?
    and
    after the process you get a PM5-file, do you rely just on the filename (including player names) to find the right one, use it for the show and save all changes in?
    Updated 07-15-2010 at 03:52 AM by Andy
  5. Andy -
    Andy's Avatar
    Yeah, I wish I understood streaming better, especially for big video files. May be something to do with the capabilities of my host, but I don't really know.

    Thanks for the kudos, I'm quite happy that the project gave us the results we are looking for. Truely something that could not have been done without software.

    All the data for the mixes comes from PM5 files. As you create more combinations of player, you get more and more data to work with. You need only keep the latest file FOR EACH COMBINATION of players. One player may have several files that they are part of, and each one is significant as it produces information regarding the relationship between that player and several others.

    As I said, it was as hard to get my head around what needed to be done as it was to write the software.
    Originally, the fles were identified by the file comment, which you can edit when you save the file on a PM5D. Unfortunately, I found that studio manager replaces that comment with something like "[WIN] 2.2.5", which is the type and version of the editor. Not a bad thing to have an idea what version made the file, but really, that info should be data within the file, not part of the comment. So instead I store the info in the file comment and also in the 1st scene's comments, which don't get overwritten.
    The filename is just for reference and to help make sure that only the latest combination is kept.
    Additionally, I've changed the filename creation a little so it adds "YFC-" at the beginning of the filename to show that it was a file created with the software, not from a console file. The YFC file is only needed once to load onto the console, and then it can be deleted, since you're very likely to make changes to the settings once they're loaded onto the console. Keeping the initial file that was created by software is not necessary.
    Updated 07-15-2010 at 03:53 AM by Andy
  6. whale-av -
    whale-av's Avatar
    That is very impressive work Andy. It's good to see someone using computing power correctly.

    When I left university Fortran was "it" and the spreadsheet was but a gleam in the eyes of Dan Bricklin and Bob Frankston. All of our programming was inputted through punched cards, and we had just seen our first graphical printout - a naked girl represented by a grid of X's and O's and spaces. Not much has changed since.

    Everything was horribly noisy. Now we just worry about noise from the desktop fan.
    I might have written the first virus - a small pack of punched cards that had to be manually inserted into someones program deck when they weren't looking:

    Print off
    iterate x=x+1 without end
    Print on

    We only had 8 seconds of mainframe time a year, so my virus would only run for 8 seconds. Afterwards the victim had no more access (until they could prove that it was not their fault). It would not print, so finding it would mean searching through the deck and reading each card from tickertape individually. Not much has changed since.

    It looks as though the Spreadsheet (in one form or another) is still king, and that you are putting it to very good use!
    Updated 07-15-2010 at 03:53 AM by Andy