# fpGetXmpInfo()

This function extracts XMP metadata in stream mode.

## Syntax

    KVErrorCode pascal fpGetXmpInfo(
        void *pContext,
        KVInputStream *pInput,
        KVXmpInfo *pXmpInfo,
        DWORD dwXmpOptions );

## Arguments

`pContext` | The pointer returned by fpInit() or fpInitWithLicenseData().
`pInput` | A pointer to the input stream.
`pXmpInfo` | A pointer to the KVXmpInfo structure.
`dwXmpOptions` | Set this argument to `1` to return charset information, the raw XMP packet, and the path and value pairs of all XMP elements. Set this argument to `2` to return the raw XMP packet.

## Returns

The return value is an error code. See KVErrorCode.

## Discussion

- After the `pXmpInfo` argument is successfully filled, and its data is no longer required, call fpFreeXmpInfo() to free the memory allocated by this function.

- This function runs in process or out of process. See The Filter Process Model.

- XMP extraction is supported only for certain platforms and formats. See the following entries in the platform differences section:

  - XMP extraction
  - XMP extraction - HTML
  - XMP extraction - additional formats

_FT_HTML5_bannerTitle.htm