https://github.com/neos/metadata-extractor
Extractor to extract asset meta data into Neos MetaData objects
https://github.com/neos/metadata-extractor
exif flowframework hacktoberfest iptc metadata neoscms
Last synced: 7 months ago
JSON representation
Extractor to extract asset meta data into Neos MetaData objects
- Host: GitHub
- URL: https://github.com/neos/metadata-extractor
- Owner: neos
- License: mit
- Created: 2016-04-21T12:30:45.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2023-03-17T15:19:43.000Z (almost 3 years ago)
- Last Synced: 2025-05-17T12:48:02.780Z (8 months ago)
- Topics: exif, flowframework, hacktoberfest, iptc, metadata, neoscms
- Language: PHP
- Homepage:
- Size: 221 KB
- Stars: 10
- Watchers: 3
- Forks: 8
- Open Issues: 3
-
Metadata Files:
- Readme: Readme.md
- License: LICENSE.txt
Awesome Lists containing this project
README
[](https://styleci.io/repos/56771923)
[](https://travis-ci.org/neos/metadata-extractor)
[](https://packagist.org/packages/neos/metadata-extractor)
[](https://packagist.org/packages/neos/metadata-extractor)
[](https://packagist.org/packages/neos/metadata-extractor)
# Neos.MetaData.Extractor Package
This package handles extraction of meta data from assets.
## Installation
Install using composer:
composer require neos/metadata-extractor
Some related packages are:
- [`neos/metadata`](https://github.com/neos/metadata): Provides provides data types and interfaces
(and is automatically installed with this package)
- [`neos/metadata-contentrepositoryadapter`](https://github.com/neos/metadata-contentrepositoryadapter):
Handles the mapping of meta data DTOs to the Neos Content Repository
### Requirements
The package requires the `exif` PHP extension and uses the `iptcparse()` function (which
is available in PHP by default.)
## Configuration
This package provides realtime meta data extraction. This can be switched off, if needed, using:
```yaml
Neos:
MetaData:
Extractor:
realtimeExtraction:
enabled: false
```
## Usage
The package extracts IPTC and EXIF meta data from assets using a CLI command:
./flow metadata:extract
When creating assets, the extraction is run as well (unless realtime extraction is disabled.)
The exact effect of the extraction depends on the implementation. If only this package is
installed and no further functionality has been implemented, the data supported by the
`AssetModelMetaDataMapper` from *Neos.MetaData* is stored in `Asset` models.
*In other words: You will get title, caption and copyright notice extracted and stored out
of the box.*
For developers, the package provides the `ExtractorInterface`. Using `isSuitableFor()` the
implementing classes decide if they will be used for a specific resource. The `AbstractExtractor`
implements a check by media type. Just extend and set `$compatibleMediaTypes` to the possible
media type range(s). Returned DTOs are added to a collection and forwarded to the central
`MetaDataManger` of the *Neos.MetaData* package.
## Extractors
The `ExtractionManager` itself generates the `Asset` DTO for every valid asset.
### `ExifExtractor` ([EXIF](http://www.exif.org/))
#### Supported Media Types
* image/jpeg
* image/tiff
* video/jpeg
#### Generated DTOs
* EXIF
### `IptcIimExtractor` ([IPTC IIM](https://iptc.org/standards/iim/))
#### Supported Media Types
* application/octet-stream
* application/x-shockwave-flash
* image/bmp
* image/gif
* image/iff
* image/jp2
* image/jpeg
* image/png
* image/psd
* image/tiff
* image/vnd.microsoft.icon
* image/vnd.wap.wbmp
* image/xbm
#### Generated DTOs
* IPTC