Quantcast
Channel: Adobe Community: Message List - XMP SDK
Viewing all 801 articles
Browse latest View live

Re: Is Flash supported in XMP?


Some XMP SDK implementation questions.

$
0
0

Hi,

 

I have few questions regarding the XMP SDK, and want to summarize all in one discussion. Here is the file I am working with: http://www.exiv2.org/include/img_1771.jpg

 

  1. Is .arw file format not supported in XMP? What are the other file formats that are not supported?
  2. I have difficulties getting  some tags. I would love to know if there is some special technique for these:
    1. Compression - the value should be 6 (not present neither in EXIF nor TIFF domains for integer values)
    2. GainControl - same issue as in case with Compression.
    3. Flash - the value should be 24. The value stored as HEX, how can I get it?
    4. InteroperabilityIndex / Interoperability IFD - the value should be 1416. The InteroperabilityIndex returns an empty string. How can I get it?
    5. JPEGInterchangeFormat, JPEGInterchangeFormatLength - are these two tags supported in XMP SDK?
    6. MakerNote - I know that MakerNote is not supported in XMP, but still I though I could get it not as a text, but as a byte array for example. What is the way to do that?
    7. What is the right way to get XMP tags, that contain array of other fields? e.g xmp:BJ:JobRef.

 

Thank you!

Mikayel

How to get JobRef ?

$
0
0

How can I get JobRef tag in the xmpBJ: instance?

 

Thanks,

Mikayel

Re: How to get JobRef ?

$
0
0

Hi Mikayel,

   JobRef is of struct type so you have to read field by field. Assuming you have basic job of name "xmpBJ:instance", try with the following code

 

              //get the job properties

 

                if (meta.DoesPropertyExist(kXMP_NS_XMP_BJ, "instance")) {

                    int arrSize = meta.CountArrayItems(kXMP_NS_XMP_BJ, "instance");

 

                    string jobid, jobname, joburl, stJB_struct_path;

 

                    for (int i = 1; i <= arrSize; ++i) {

                        string temppath = "instance";

                        temppath = temppath + "[" + std::to_string(i) + "]";

                       

                        //read job id

                        SXMPUtils::ComposeStructFieldPath(kXMP_NS_XMP_BJ, temppath.c_str(), kXMP_NS_XMP_ST_Job, "id", &stJB_struct_path);

                        meta.GetProperty(kXMP_NS_XMP_BJ, stJB_struct_path.c_str(), &jobid, 0);

 

                        //reading jobname

                        SXMPUtils::ComposeStructFieldPath(kXMP_NS_XMP_BJ, temppath.c_str(), kXMP_NS_XMP_ST_Job, "name", &stJB_struct_path);

                        meta.GetProperty(kXMP_NS_XMP_BJ, stJB_struct_path.c_str(), &jobname, 0);

 

                        SXMPUtils::ComposeStructFieldPath(kXMP_NS_XMP_BJ, temppath.c_str(), kXMP_NS_XMP_ST_Job, "url", &stJB_struct_path);

                        meta.GetProperty(kXMP_NS_XMP_BJ, stJB_struct_path.c_str(), &joburl, 0);

 

                        cout << "job id is " << jobid <<"\t job name " <<jobname <<"\t joburl is " <<joburl <<endl;

                    }

                }

 

   Please let me know if I am missing anything.

 

-Sunil

Re: How to get JobRef ?

Re: Some XMP SDK implementation questions.

$
0
0

Hi Mikayel,

   1.  I will let you know the document having list of supported file format. For time being have a look on file"xmp\toolkit\XMPFiles\source\XMPFiles_Impl.cpp" having the list of not supported file and supported file.

 

  2. Compression is not reconciled with XMP, to see all the values which are not reconciled you have have look in file xmp\toolkit\XMPFiles\source\FormatSupport\ReconcileTIFF.cpp table sExifIFDMappings and 4th column as kExportNever. I will check and will let you know why these are not exported.

 

  3. GainControl: You can get/set this and is not the case you mentioned in point two. In order to get/set you can use the following code. But this property is InjectOnly it mean if this is not present you can set it but once set you cann't modify/delete it.

              

                meta.SetProperty_Int(kXMP_NS_EXIF, "GainControl", 1, 0);

                string gaincontrol_string;

                meta.GetProperty(kXMP_NS_EXIF, "GainControl", &gaincontrol_string, 0);

 

  4. Flash : In XMP this is stored as struct. If you will go through the detail of this EXIF property you will find that it is SHORT (size 8-bit). The 0th bit is set 0 or 1 showing where Flash was fired or not, 1st & 2nd bit are set for return value, 3rd & 4th are set for "FlashMode" if bot bit are set mean Flash Auto Mode was set. In your case it's 24 mean (0x00011000) so Flash Auto Mode was set. There is similar meaning for other bits. For exif flash property and it's bit have a look on (Exif TIFF Tag Flash, code 37385 (0x9209)). XMP reads the same and interpret it as Fired/ReturnMode/Mode/Function/RedEyeMode.

 

5. Not sure, will check it.

 

6. Already discuss on How to get EXIF tags like MakerNote?

 

7. JobRef : Already replied (How to get JobRef ? )

 

-Sunil

Delete an exif property?

$
0
0

Since XMP SDK doesn't allow to delete already existing tag, can you recommend a free library that will delete the tag, so that I can set a new value with XMP (please do not suggest Exiv20).

 

Note: Not a ready application, but an open source library with no charge for use.

 

Thanks,

Mikayel

Re: Some XMP SDK implementation questions.

$
0
0

Thank you Sunsil.

 

What about this:?

4. InteroperabilityIndex / Interoperability IFD - the value should be 1416. The InteroperabilityIndex returns an empty string. How can I get it?


Re: How to get JobRef ?

$
0
0

Sunsil,

 

I am wondering if JobRef was ordered array, would the parsing be the same?

 

Thanks!

Ordered vs Unordered

$
0
0

What is different when getting ordered array of something and UNordered array of something?

Re: Ordered vs Unordered

$
0
0
  • data from an ordered array implies that order is significant (the order implies some meaning)
  • data from an unordered array implies that the order is not significant (no specific meaning is associated with the order of the entries)

looking for XMP schema relevant to scanned documents

$
0
0

I want to embed XMP metadata in a scanned document, I'm looking for any existing schema or standards or even existing practice by anybody.

Examples:

physical sheet number

side of page (front or back)

make & model of scanner

operator name

scan resolution (DPI)

paper size

pixel format

paper orientation

 

Doesn't have to be those exact things, anything relevant would be interesting.

Re: CS 6 Generic File Info - not keeping checkboxes

$
0
0

Is this still broken in CC?

 

We have been stuck on CS5 because of this issue.  It's now been a year and a half since it was first reported.  Is there a plan to fix this?

 

Thanks,

  Craig

Re: Can I create a custom XMP panel but using the exact same fields from standard XMP panels?

$
0
0

I am trying to do the same thing but with only the IPTC Keywords field. Searching everywhere but no luck.

 

Thanks!

How do I get the popup calendar and the "width" setting?

$
0
0

I am in the process of migrating my custom panels from CS6 to CC2014. What I am finding is that the popup calendar in date fields is missing. I also noted that the "width=xx%" is no longer functioning as well.

 

Is there a work around?

 

Morgan


Is it possible to compile the latest XMP SDK with MinGW?

$
0
0

Hello everyone

 

I'm trying to compile the XMP SDK 201412 with Cmake gui and MinGW makefiles but an error occurs when i try to configure the project (i'm not a Cmake expert) :

 

CMake Error at C:/Users/Etienne/Downloads/XMP-Toolkit-SDK-CC201412/XMP-Toolkit-SDK-CC201412/XMPCore/buil d/CMakeListsCommon.txt:85 (if):
  if given arguments:

  "WIN32" "AND"

  Unknown arguments specified
Call Stack (most recent call first):
  C:/Users/Etienne/Downloads/XMP-Toolkit-SDK-CC201412/XMP-Toolkit-SDK-CC201412/XMPCore/buil d/CMakeLists.txt:75 (include)

 

I can see the line where the error is but it's simply written this :

In CMakeListsCommon.txt (line 85) :

if(WIN32 AND ${XMP_BUILD_STATIC})

    list(REMOVE_ITEM RESOURCE_FILES ${RESOURCE_ROOT}/${XMP_PLATFORM_SHORT}/${TARGET_NAME}.rc)

endif()

In CMakeLists.txt (line 75, last line) : include(${CMAKE_CURRENT_SOURCE_DIR}/${XMP_THIS_PROJECT_RELATIVEPATH}/XMPCore/build/CMakeLi stsCommon.txt)

 

Thank you for your time, hopefully you can help !


Etienne

XMP metadata is not accepting the copyright symbol

$
0
0

While using the ModifyXMP method to append the metadata with some custom text data, it is found that, if the custom text data is having copyright symbol, metadata modification fails. Error can be caught as, 'Invalid UTF-8 sequence length'.

How to have the copyright symbol added in the XMP metadata?

sample code for custom properties and/or custom namspace

$
0
0

I working on a project to store meta data in images generated via electron optics.  I'm thinking about using XMP because of the excitability it seems to allow.

 

I've downloaded the XmpToolkit SDK and I can read existing properties, but I can't figure out how write to existing properties or create a new custom schema.  Are there any examples updating existing , or creating new ones?

 

Thanks!

Re: sample code for custom properties and/or custom namspace

$
0
0

Adding custom namespaces and properties into XMP is quite easy.

  After,

  SXMPMeta::Initialize();

  you need to register your custom namespace and the prefix. An example is

  std::string customNS = "http://www.temporary.com/NS";

  std::string customPrefix = "myPre";

  // Registering custom namespace and prefix

  bool isSucess = SXMPMeta::RegisterNamespace( customNS.c_str(), customPrefix.c_str(), &customPrefix );

// After getting metadata from XMPFile, you need to set property values.

// Setting property

SXMPMeta meta;

meta.SetProperty( customNS.c_str(), "name", "xmp" );

meta.SetProperty( customNS.c_str(), "kind", "1" );

// After putting the required properties into a file, you may get property as follow

// Getting property

std::string propValue;

meta.GetProperty( customNS.c_str(), "name", &propValue, 0 );

XMP library crashes on BlackBerry10 / ARM

$
0
0

I'm developing an application for BlackBerry 10, which uses the XMP library heavily.

 

The application works fine on the simulator (x86), but when run on the actual BB10 device, the XMP library crashes on certain photos.  I've so far identified two different types of crash.

 

Here are the stack traces:

crash10.JPG

 

and:

 

crash9.JPG

 

As a developer, how should I overcome these significant show-stoppers?

 

Thanks,
Daniel

Viewing all 801 articles
Browse latest View live


Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>