source: soft/giet_vm/applications/mjpeg/mjpeg.h @ 723

Last change on this file since 723 was 723, checked in by alain, 9 years ago

Introduce application mjpeg.

File size: 2.9 KB
Line 
1/////////////////////////////////////////////////////////////////////////////////////////
2// File   : mjpeg.h   
3// Date   : octobre 2015
4// author : Alain Greiner
5/////////////////////////////////////////////////////////////////////////////////////////
6// This file contains all global variables allocated in the mjpeg.c file,
7// and used by the threads of the MJPEG application.
8// It defines also the debug directives.
9/////////////////////////////////////////////////////////////////////////////////////////
10
11#ifndef MJPEG_GLOBALS_H
12#define MJPEG_GLOBALS_H
13
14#include <stdint.h>
15#include <mwmr_channel.h>
16#include <user_lock.h>
17
18#define   MAX_IMAGES  64
19
20////////////////////////////////////////////////////////////////////////////////////////
21//  MWMMR channels depths (number of 32 bits words)
22////////////////////////////////////////////////////////////////////////////////////////
23
24#define   TG_2_DEMUX_DEPTH          256
25#define   DEMUX_2_VLD_DATA_DEPTH    256
26#define   DEMUX_2_VLD_HUFF_DEPTH    256
27#define   DEMUX_2_IQZZ_DEPTH        256
28#define   VLD_2_IQZZ_DEPTH          256
29#define   IQZZ_2_IDCT_DEPTH         256
30#define   IDCT_2_LIBU_DEPTH         256
31
32////////////////////////////////////////////////////////////////////////////////////////
33// debug variables
34// O : No trace
35// 1 : simple debug
36// 2 : detailed debug
37////////////////////////////////////////////////////////////////////////////////////////
38
39#define DEBUG_TG      1
40#define DEBUG_DEMUX   0
41#define DEBUG_VLD     0
42#define DEBUG_IQZZ    0
43#define DEBUG_IDCT    0
44#define DEBUG_LIBU    0
45
46////////////////////////////////////////////////////////////////////////////////////////
47//       Global variables
48////////////////////////////////////////////////////////////////////////////////////////
49
50extern uint32_t         fd;    // file descriptor for the file containing MJPEG stream
51
52extern mwmr_channel_t*  tg_2_demux[256];         // one per cluster
53extern mwmr_channel_t*  demux_2_vld_data[256];   // one per cluster
54extern mwmr_channel_t*  demux_2_vld_huff[256];   // one per cluster
55extern mwmr_channel_t*  demux_2_iqzz[256];       // one per cluster
56extern mwmr_channel_t*  vld_2_iqzz[256];         // one per cluster
57extern mwmr_channel_t*  iqzz_2_idct[256];        // one per cluster
58extern mwmr_channel_t*  idct_2_libu[256];        // one per cluster
59
60extern user_lock_t      tty_lock;                // lock protecting shared TTY
61
62extern uint8_t*         cma_buf[256];            // CMA buffers (one per cluster)
63extern void*            cma_sts[256];            // CMA buffers status
64
65extern uint32_t         fbf_width;               // Frame Buffer width
66extern uint32_t         fbf_height;              // Frame Buffer height
67
68extern uint32_t         nblocks_h;               // number of blocks in a column
69extern uint32_t         nblocks_w;               // number of blocks in a row   
70
71extern uint32_t         date[MAX_IMAGES];        // date of completion in libu
72
73#endif
Note: See TracBrowser for help on using the repository browser.