mirror of
https://github.com/ultravideo/uvg266.git
synced 2024-11-23 18:14:06 +00:00
Added some encoder control structures
This commit is contained in:
parent
bbe03211e1
commit
8507aa0c9a
3
.gitignore
vendored
Normal file
3
.gitignore
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
|
||||
/bin
|
||||
/build
|
|
@ -1,3 +1,11 @@
|
|||
/*! \file bitstream.c
|
||||
\brief Bitstream related functions
|
||||
\author Marko Viitanen
|
||||
\date 2012-05
|
||||
|
||||
This file has all bitstream functions
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <math.h>
|
||||
|
@ -7,21 +15,17 @@
|
|||
#include "global.h"
|
||||
#include "bitstream.h"
|
||||
|
||||
|
||||
#ifdef VERBOSE
|
||||
void printf_bitstream(char *msg, ...)
|
||||
{
|
||||
|
||||
va_list fmtargs;
|
||||
char buffer[1024];
|
||||
|
||||
va_list fmtargs;
|
||||
char buffer[1024];
|
||||
va_start(fmtargs,msg);
|
||||
vsnprintf(buffer,sizeof(buffer)-1,msg,fmtargs);
|
||||
va_end(fmtargs);
|
||||
printf("%s",buffer);
|
||||
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
/*
|
||||
* Clear bitstream
|
||||
*/
|
||||
|
@ -46,6 +50,7 @@ void bitstream_put(bitstream* stream, uint32_t data, uint8_t bits)
|
|||
{
|
||||
uint8_t i=0;
|
||||
uint32_t bitsleft=32-stream->cur_bit;
|
||||
#ifdef VERBOSE
|
||||
printf_bitstream("put: ");
|
||||
for(i=0;i<bits;i++)
|
||||
{
|
||||
|
@ -53,6 +58,7 @@ void bitstream_put(bitstream* stream, uint32_t data, uint8_t bits)
|
|||
}
|
||||
printf_bitstream("\n");
|
||||
//printf_bitstream(" count: %i\n",bits);
|
||||
#endif
|
||||
|
||||
//Theres space for all the bits
|
||||
if(bits<=bitsleft)
|
||||
|
|
|
@ -1,3 +1,10 @@
|
|||
/*! \file bitstream.h
|
||||
\brief Bitstream related functions
|
||||
\author Marko Viitanen
|
||||
\date 2012-05
|
||||
|
||||
This file has all bitstream headers
|
||||
*/
|
||||
#ifndef _BITSTREAM_H
|
||||
#define _BITSTREAM_H
|
||||
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
#include <string.h>
|
||||
#include "global.h"
|
||||
#include "config.h"
|
||||
#include "encoder.h"
|
||||
|
||||
|
||||
/*!
|
||||
|
@ -54,6 +55,7 @@
|
|||
config *cfg = NULL; /* Global configuration */
|
||||
FILE *input = NULL;
|
||||
FILE *output = NULL;
|
||||
encoder_control* encoder;
|
||||
|
||||
/* Handle configuration */
|
||||
cfg = config_alloc();
|
||||
|
@ -77,6 +79,7 @@
|
|||
}
|
||||
|
||||
printf("Input: %s, output: %s\r\n", cfg->input, cfg->output);
|
||||
printf(" Video size: %dx%d\r\n", cfg->width, cfg->height);
|
||||
|
||||
/* Open input file and check that it was opened correctly */
|
||||
input = fopen(cfg->input, "rb");
|
||||
|
|
0
src/encoder.c
Normal file
0
src/encoder.c
Normal file
35
src/encoder.h
Normal file
35
src/encoder.h
Normal file
|
@ -0,0 +1,35 @@
|
|||
/*! \file encoder.h
|
||||
\brief Encoding related functions
|
||||
\author Marko Viitanen
|
||||
\date 2012-06
|
||||
|
||||
Structures for encoding
|
||||
*/
|
||||
#ifndef _ENCODER_H
|
||||
#define _ENCODER_H
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
void (*IME)(encoder_control* encoder);
|
||||
|
||||
} encoder_me;
|
||||
|
||||
|
||||
typedef struct
|
||||
{
|
||||
FILE *file;
|
||||
|
||||
|
||||
} encoder_input;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
encoder_input in;
|
||||
encoder_me me;
|
||||
FILE *output;
|
||||
} encoder_control;
|
||||
|
||||
|
||||
|
||||
#endif
|
Loading…
Reference in a new issue