Paparazzi UAS  v5.15_devel-50-g4d7045d
Paparazzi is a free software Unmanned Aircraft System.
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
video_usb_logger.c File Reference
#include "video_usb_logger.h"
#include <stdio.h>
#include "state.h"
#include "viewvideo.h"
#include "cv.h"
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include "computer_vision/lib/encoding/jpeg.h"
#include "pose_history/pose_history.h"
+ Include dependency graph for video_usb_logger.c:

Go to the source code of this file.

Macros

#define VIDEO_USB_LOGGER_PATH   /data/video/usb
 Set the default File logger path to the USB drive. More...
 
#define VIDEO_USB_LOGGER_FPS   0
 Default FPS (zero means run at camera fps) More...
 

Functions

static void save_shot_on_disk (struct image_t *img, struct image_t *img_jpeg)
 
static struct image_tlog_image (struct image_t *img)
 
void video_usb_logger_start (void)
 Start the file logger and open a new file. More...
 
void video_usb_logger_stop (void)
 Stop the logger an nicely close the file. More...
 
void video_usb_logger_periodic (void)
 

Variables

static FILE * video_usb_logger = NULL
 The file pointer. More...
 
struct image_t img_jpeg_global
 
bool created_jpeg = FALSE
 
char foldername [512]
 
int shotNumber = 0
 

Macro Definition Documentation

#define VIDEO_USB_LOGGER_FPS   0

Default FPS (zero means run at camera fps)

Definition at line 47 of file video_usb_logger.c.

Referenced by video_usb_logger_start().

#define VIDEO_USB_LOGGER_PATH   /data/video/usb

Set the default File logger path to the USB drive.

Definition at line 43 of file video_usb_logger.c.

Referenced by video_usb_logger_start().

Function Documentation

static struct image_t* log_image ( struct image_t img)
static

Definition at line 114 of file video_usb_logger.c.

References created_jpeg, image_t::h, image_create(), IMAGE_JPEG, img_jpeg_global, save_shot_on_disk(), TRUE, and image_t::w.

Referenced by video_usb_logger_start().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static void save_shot_on_disk ( struct image_t img,
struct image_t img_jpeg 
)
static

Log the values to a csv file

Definition at line 58 of file video_usb_logger.c.

References counter, pose_t::eulers, get_rotation_at_timestamp(), jpeg_encode_image(), FloatRates::p, FloatEulers::phi, FloatEulers::psi, FloatRates::q, FloatRates::r, pose_t::rates, sonar, stateGetAccelNed_i(), stateGetPositionNed_i(), FloatEulers::theta, TRUE, video_usb_logger, write_exif_jpeg(), NedCoor_i::x, NedCoor_i::y, and NedCoor_i::z.

Referenced by log_image().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void video_usb_logger_periodic ( void  )

Definition at line 163 of file video_usb_logger.c.

void video_usb_logger_start ( void  )

Start the file logger and open a new file.

Definition at line 127 of file video_usb_logger.c.

References counter, cv_add_to_device(), foldername, log_image(), video_usb_logger, VIDEO_USB_LOGGER_FPS, and VIDEO_USB_LOGGER_PATH.

+ Here is the call graph for this function:

void video_usb_logger_stop ( void  )

Stop the logger an nicely close the file.

Definition at line 155 of file video_usb_logger.c.

References video_usb_logger.

Variable Documentation

bool created_jpeg = FALSE

Definition at line 54 of file video_usb_logger.c.

Referenced by log_image().

char foldername[512]

Definition at line 55 of file video_usb_logger.c.

Referenced by video_usb_logger_start().

struct image_t img_jpeg_global

Definition at line 53 of file video_usb_logger.c.

Referenced by log_image().

int shotNumber = 0

Definition at line 56 of file video_usb_logger.c.

FILE* video_usb_logger = NULL
static

The file pointer.

Definition at line 52 of file video_usb_logger.c.

Referenced by save_shot_on_disk(), video_usb_logger_start(), and video_usb_logger_stop().