Testers Needed
We’ve been working on an application that will repair corrupted Xsan volumes. If you have a volume you wouldn’t mind potentially shredding and would like to test the app for us then please let me know.
We’ve been working on an application that will repair corrupted Xsan volumes. If you have a volume you wouldn’t mind potentially shredding and would like to test the app for us then please let me know.
Atom, an alternative to RSS, is used extensively in Final Cut Server. Atom allows one to, for example show a list of assets and parse the information in a manner that makes sense to a browser to read. Atom also makes internationalization easier for developers. For more information on Atom see it’s wikipedia entry at http://en.wikipedia.org/wiki/Atom_(standard)
In the px PostgreSQL database for Final Cut Server, you’ll notice the pxatommap, which is used by Final Cut Server to parse the nearly 2,000 fields of data used by Final Cut Server into information easily readable by clients using Atom, similar to how the widget that I recently posted on this site uses RSS to display articles published through the site.
Tired of firing up a browser to view my site? Well, here’s a widget you can use to quickly view content without ever having to open the site. Simply download the widget here, double-click on it and you will then be able to view the articles on this site through Dashboard.
The database that stores the configuration information and assets that you are using with Final Cut Server is built in PostgreSQL. The name of the PostgreSQL database is px. The implementation of PostgreSQL that runs on Mac OS X for Final Cut Server uses port 5433 by default, although only through the localhost. There are two sets of PostgreSQL binaries on a Final Cut Server. The first is in the /Library/Application Support/Final Cut Server/Final Cut Server.bundle/Contents/PostgreSQL/bin directory. However, the tools here do not function. Use the PostgreSQL binary files to manage the database located in the /System/Library/CoreServices/RemoteManagement/rmdb.bundle/bin directory. The actual database information is stored in /var/db/FinalCutServer.
Given the above information, to connect to the database you would use the following command:
psql -d px -h 127.0.0.1 -p 5433 -U postgres
You will now be located at a px prompt. From here you can perform a variety of operations, including creating new tables, removing information, performing queries of simply altering fields within the database. Most of these operations can be extremely dangerous. Be very careful if you will be customizing this information as you can VERY easily unlink critical pieces of information from one another and render your Final Cut Server useless. Therefore, changing information on a Final Cut Server should only be done on a test server prior to any augmentation against a production database AND before changing anything make sure to back up the Final Cut Server database.
The pg_hba.conf file located in the /var/db/FinalCutServer/data directory handles all authentication to the Final Cut Server database. Using this file, it is possible to allow users to connect to your database from another host. If you are going to allow connections from other hosts, then you will likely want to create another user with a strong password and only allow that user. Luckily, in the /Library/Application Support/Final Cut Server/Final Cut Server.bundle/Contents/PostgreSQL/bin/ directory there is a createuser shell script that will help you do this (although it won’t do it for you).
These shell scripts also have other uses as well. For example, if you change your mind about the user that was creted withe the createuser script and wish to delete them at a later date you can also remove them using the dropuser shell script in the same location. One warning is that these scripts do not work out of the box, as mentioned. You will need to customize them with the information we previously used for your server, but I mention them here as they can act as guides for your customization of the PostgreSQL environment.
When connecting to PostgreSQL you can also use a graphical application such as Navicat or PGnJ. In this example, I’m going to use PGnJ to connect to the Final Cut Server px database. To do so, first open PostgreSQL. When prompted for the authentication information, enter it as you see here and click on the Connect button. Remember, you can only connect through the server actually running Final Cut Server unless you alter the pg_hba.conf file to allow other hosts to connect and if you do, you will likely want to identify which specific other hosts have access and how they authenticate to the database.
Once you’re connected, click on the disclosure triangle beside store and then click on the disclosure triangle beside tables. Now you will see a listing of each of the tables that Final Cut Server uses to store the data you have put into Final Cut Server. This data is logically structured in a collection of tables, all starting with the letters px, indicating Proximity (the original creators of Artbox, which was purchased by Apple and turned into Final Cut Server).
One example of something you can do using the tables is to change the wording for one of the screens within Final Cut Server. We’re going to go ahead and change the “This asset is linked to” text on the resources pane of an asset to make this features a little more user friendly (original text can be seen below).
First, open up the pxmdgroup table within PGnJ and click on the pxmdgroup table. Then, scroll down to the row for mdgroupid 1754.
Next, alter the text for the name field. In this case we are going to use “Productions that use this asset”.
Now you’ll need to restart PostgreSQL, which can most easily be done by rebooting your computer. Once it comes back online you’ll be able to view the resources for an asset and see that your changes have been made, as can be seen here:
This is only one example of the many things that you can do by augmenting the PostgreSQL database with Final Cut Server. You can also interact with it directly using shell scripts, further enhancing the workflow automations capable for your environment.
Final Cut Server allows you to archive the primary representation (or the original file) for assets that are cataloged. When you do so, the proxy clips (low resolution versions) of your assets still live on the Final Cut Server. However, the primary representation, once moved to your archive device can then be archived off to another form of media.
There are a variety of strategies to manage archived media. The one I will describe here is using the Amazon S3 storage service at a cost of approximately $.12 to $.15 per gigabyte. As a conduit to and from Amazon S3 we will use the Jungle Disk application, which uses the Amazon S3 API to provide a mount point to Mac OS X. Before you get started, first create an Amazon account (or enable Amazon Web Services for your existing Amazon account). Once you have enabled Web Services, click on the link that will be emailed to you that allows you to create an Access Identifier. Also keep in mind that file sizes cannot be larger than 5GB per file.
To get started, download Jungle Disk from http://www.jungledisk.com. Once downloaded, run the installer. At the welcome screen click on Next. At the Jungle Disk Account Information screen enter the Access Identifier and the Secret Key for your user account.
Next, tell Jungle Disk to use the storage from Amazon as a Network Drive. Here, I gave this drive a name of FCSBackup.
Next, create a new bucket (or use one you have already created).
To create a new bucket, click on Next. At the Bucket Setup screen provide a name for your bucket of storage within S3. I called my bucket fcsvrbackup. Here you can use standard or high encryption. Speeds will be reduced with high encryption but the data will be more secure. Click Next when you are satisfied with your settings and then click on Finish to complete the installation.
Next, for speed we’re going to do a little quick tuning. Open the Jungle Disk Configuration application and then click on Network Drive for the fcsvrbackup bucket. Then increase the maximum cache size and check the box for Upload files in the background for faster performance.
Next, open /Volumes and verify that you see your fcsbackup (or whatever you decided to name the volume). Alternately you can use the Bucket menu from within JungleDisk Monitor to click on Show Network Drive in Finder. Once you have verified that your mount is there, test copying data to the folder to verify that you have full write access. Once you are finished, open the Final Cut Server System Preference pane. Then click on the plus icon (+) to bring up your Device Setup Assistant.
Here, click on the Local Device type and click on Continue.
Next, open a Finder screen and open /Volumes/ (Command-Shift-G).
Now drag the FCSBackup over to the location field in the Device Setup Assistant and provide a name for your Final Cut Server to refer to your Device as (I used Amazon Backup here). Now click Continue.
Next, check the box for Enable as an Archive Device and click on the Continue button. At the next screen, click Finish.
Now go to your trusty Final Cut Server client application and control click (or right click if you’re so inclined) on an asset. Here, you will click on the Archive item in the dialog box.
Now, if you go to the FCSBackup volume you should see the file you decided to archive. These will be stored in a folder that corresponds to the device ID that Final Cut Server has for your “device”. Only the primary representation has been moved at this time, so your proxy media for these files is still in your proxy bundle. Now, click on the asset within the Final Cut Server client application and then perform a get info (Command I). You will now see the relative path to your device that the file is in. You can now unmount the FCSBackup drive and you will still be able to access the file. Once you have uploaded some files, tap into Amazon and check out how much they’ve charged you…
HFS+ and resource forks. Still a necessary evil. At times I find that I need to remove a resource fork from the command line, leaving the file otherwise in tact. To do so, first create an empty file. In this case I’ll create a file using touch called todelete, so I remember to delete it:
touch todelete
Now we’re going to copy this empty file over the resource fork for the file myvideo.mov using the cp command:
cp todelete myvideo.mov/rsrc
At this point, we can clean up the original file we created previously using rm:
rm todelete
Immediately activate the screen saver in OS X by using this command:
/System/Library/Frameworks/ScreenSaver.framework/Versions/A/Resources/ScreenSaverEngine.app/Contents/MacOS/ScreenSaverEngine &
You can invoke this from a script, through ARD, etc.
Windows 7 is slated for a 2010 release, although we could see it as late as 2009. Much like the reports coming out on Snow Leopard, Windows 7 is slated not to come with a variety of new features but rather on buttoning up the existing features and in some cases Microsoft will be reducing the number of features in the OS. Well, maybe not removing features, but rather moving them into Windows Live and making them as easily accessible as possible using the newly revamped Windows Live toolbar. Applications moved to the Windows Live-style a la carte menu:
Expect to see more of the same style of windows as we saw in Vista, but now they should all work a little better and a little snappier. Heard that before? Yes you have. In Windows Vista Service Pack 2 Microsoft reported hella fast performance compared to that of SP1. But not-so-much in reality. I hope to see drastically better performance out of the OS at release time. However, it’s currently in Alpha (what MS calls Pre-Beta) and so not much can be inferred from the current performance of Windows 7.
According to the MS Engineering blog other items we can expect to see that aren’t currently in the OS include better search, better account control APIs (via powershell and WMI), better internationalization, more energy efficiency, better performance, integrated multi-touch and less annoying help balloons.
As for the Server version of Windows, it appears (according to the internal MS blogosphere) that we’re likely only to see Windows Server 2008 R2. However, I have been unable to ascertain whether or not this will be an upgrade that you’ll have to pay for (like 2003 R2 was).
Georgia won, but barely. In a 42 to 38 win over Kentucky, Georgia could have looked better. Maybe it’s being out of the National Title hunt, or maybe it’s just that Kentucky is a dangerous team. Kentucky is not bad this year, but haven’t managed to beat a ranked team yet.
For the second time in two months I got stuck in Denver International for the night in the middle of a layover. But this time it was a completely different experience. Last time I arrived at DIA at midnight after being delayed and after facing a snotty customer service desk ended up stuck outside the airport (the security gate was closed already) and proceeded to grab a hotel for 4 or 5 hours on my own dime only to come back to a standby flight where I got to sit in the center seat in the back of the plane. This time though I arrived about 5 minutes after my connecting flight left. So I proceed to the customer service desk to inquire about what to do to find I had automagically been transferred to another flight leaving at 8 in the morning, handed a voucher for a hotel room and a voucher for dinner at any of the restaurants in the area of the airport. And the staff tracked down my bag to make sure I had it when I got home and was pretty much the nicest I’ve ever encountered at an airline. So congrats to United for screwing up and then making it up to me.