Paparazzi UAS  v5.8.2_stable-0-g6260b7c
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Add EXIF data to any JPEG

Module XML file: video_exif.xml

  • Image size
    • GPS location

Example for airframe file

1 <modules>
2  <load name="video_exif.xml"/>
3 </modules>

Module functions

Periodic Functions

These functions are called periodically at the specified frequency from the module periodic loop.

  • push_gps_to_vision()
    • Frequency in Hz: 8
    • Autorun: LOCK
      Periodic function automatically starts after init and can't be stopped.


Header Files

The following headers are automatically included in modules.h

Source Files

Raw video_exif.xml file:

<!DOCTYPE module SYSTEM "module.dtd">
<module name="video_exif" dir="computer_vision">
Add EXIF data to any JPEG
- Image size
- GPS location
<file name="lib/exif/exif_module.h"/>
<periodic fun="push_gps_to_vision()" freq="8"/>
<makefile target="ap">
<define name="modules/computer_vision" type="include"/>
<file name="exif_module.c" dir="modules/computer_vision/lib/exif"/>
<!-- libexif -->
<configure name="EXTSW" value="$(PAPARAZZI_SRC)/sw/ext" />
<configure name="LIBEXIF" value="$(EXTSW)/libexif" />
<file name="exif-content.c" dir="$(LIBEXIF)"/>
<file name="exif-entry.c" dir="$(LIBEXIF)"/>
<file name="exif-tag.c" dir="$(LIBEXIF)"/>
<file name="exif-format.c" dir="$(LIBEXIF)"/>
<file name="exif-utils.c" dir="$(LIBEXIF)"/>
<file name="exif-mem.c" dir="$(LIBEXIF)"/>
<file name="exif-data.c" dir="$(LIBEXIF)"/>
<file name="exif-log.c" dir="$(LIBEXIF)"/>
<file name="exif-loader.c" dir="$(LIBEXIF)"/>
<file name="exif-ifd.c" dir="$(LIBEXIF)"/>
<file name="exif-mnote-data.c" dir="$(LIBEXIF)"/>
<!-- libexif flags -->
<define name="$(EXTSW)" type="include"/>
<define name="$(LIBEXIF)" type="include"/>
<define name="NO_VERBOSE_TAG_DATA"/>
<define name="NO_VERBOSE_TAG_STRINGS"/>
<define name="JPEG_WITH_EXIF_HEADER" value="1"/>