2012-06-01 12:31:06 +00:00
|
|
|
/*! \file encoder.h
|
|
|
|
\brief Encoding related functions
|
|
|
|
\author Marko Viitanen
|
|
|
|
\date 2012-06
|
|
|
|
|
|
|
|
Structures for encoding
|
|
|
|
*/
|
|
|
|
#ifndef _ENCODER_H
|
|
|
|
#define _ENCODER_H
|
|
|
|
|
2012-06-04 08:53:48 +00:00
|
|
|
//ToDo: add ME data
|
2012-06-01 12:31:06 +00:00
|
|
|
typedef struct
|
|
|
|
{
|
2012-06-04 08:53:48 +00:00
|
|
|
void (*IME)(encoder_control* encoder);
|
2012-06-01 12:31:06 +00:00
|
|
|
|
|
|
|
} encoder_me;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
|
|
{
|
2012-06-04 08:53:48 +00:00
|
|
|
FILE* file;
|
|
|
|
uint32_t width;
|
|
|
|
uint32_t height;
|
|
|
|
uint32_t height_in_LCU;
|
|
|
|
uint32_t width_in_LCU;
|
2012-06-01 12:31:06 +00:00
|
|
|
} encoder_input;
|
|
|
|
|
|
|
|
typedef struct
|
|
|
|
{
|
|
|
|
encoder_input in;
|
|
|
|
encoder_me me;
|
2012-06-04 08:53:48 +00:00
|
|
|
FILE* output;
|
2012-06-01 12:31:06 +00:00
|
|
|
} encoder_control;
|
|
|
|
|
2012-06-04 08:53:48 +00:00
|
|
|
init_encoder_control(encoder_control* control,FILE* output) {control->output = output;};
|
|
|
|
init_encoder_input(encoder_input* input,FILE* inputfile, uint32_t width, uint32_t height) {input->file = inputfile; input->width = width; input->height = height;};
|
2012-06-01 12:31:06 +00:00
|
|
|
|
|
|
|
#endif
|