Custom XMP Panels in Adobe CS-5 and Xinet Venture

Posted by Robert Sullivan on Wed, Jul 14, 2010 @ 05:38 PM

Tags: XMP Panels, XMP, Venture, Adobe CS-5

You may have seen some of the videos we have about importing custom meta data panels from Adobe, into the Venture database. In Adobe CS-3 a custom panel was fairly easy to create because it was a single text file. That got a little more complicated with CS-4 when Adobe changed to a Flex file format that requires several files in combination to correctly create a custom data panel.

Now CS-5 is slightly different again and the panels from CS-4 do not just show up in CS-5. More modification is required to stay current.

Flathead-U has a few videos showing how to import these customized panels into Venture and that's great, but it's been pointed out to me in a not so subtle way, that a lot of people don't understand how it all works.

Here is a brief explanation of how it works, in my own layman's terms. I'm sure you'll all let me know what I have right and what I have wrong, ( as if..! )

So lets take a piece of one sample data field.

<xmp_property name="SulTextHack" category="external" label="Sul Text:" type="text"/>

The "xmp_property name" must be xmp compatible, meaning there are no spaces in the field name and no special characters. In the example, "SulTextHack" is the xmp name of the field, and this must match (case sensitive) between Adobe Apps and the Venture database. If they don't match, they will NOT map to one another. Meaning they will be two different fields from one program to the other.

Only when the XMP name of the field is mapped correctly will you have the bidirectional edit ability. Meaning you can make changes to the data field value from either program and have it show that change in the other program. The trick here is that both programs are writing 'into' the XMP space of the file. The data is pushed into the file it's-self. So the data value is in the Venture database but it's also imbedded in the file. It's like the old Spaghetti TV commercial where they say:

"Eh, it's in there"

The category= determines if it's editable, "external" or read only, "display" from within the Adobe programs. So you can configure a custom field from the Venture database and have it show up in Adobe, as read only. Imagine that.

In Adobe, we can display the name of this field in a more human readable way with the label, where label="Sul Text"  is the display name that I'll see in the custom panel from within Photoshop. In Venture this is the equivalent of the local.js variable.

In fact, Venture will automatically transfer the 'label' from the Adobe panel into the 'local.js' file when we load this custom info panel. Oh, have to actually select the button that you want to 'automatically' create and use the local.js file.

The last bit of this line is the type=. In my example it's a text field. We can just as easily create a boolean field, an integer or a multi value pull-down field. Date fields can be tricky because of the differences in the display of the date year range between Adobe and Venture.

Think about the ramifications here... This little bit of understanding can make a huge impact on you workflow and become a big time saver. Adding metadata in CS Suite that you can see in Venture. Add instructions in Venture and read them in Photoshop! You can writeinto the XMP space of the file from either program.

"Eh, it's in there"