An Image Metadata processor
In the previous examples we have discussed full-text parser plugins that were actually doing the parsing—extracting words from a text. But as we have seen in Chapter 6, a full-text parser plugin does not necessarily have to do that. Only "tokenizer" plugins do. In this example we will create an "extractor" plugin—a plugin that merely converts the data to plain text and lets MySQL parse it with a built-in parser.
As many know, digital cameras store inside an image file the metadata that contains various details about the photo. It is stored using a format called Exif (Exchangeable image file format).
This full-text parser plugin will take the image filenames from the database, parse the Exif data, and allow MySQL to index it. In other words, one can INSERT
rows with filenames in the table, but MATCH … AGAINST()
will search in the Exif metadata of these images!
How to access Exif data
To extract the image metadata we will use the libexif library. It is included...