LiVES 1.4.9
Data Structures | Defines | Typedefs | Enumerations | Functions

lives-plugins/plugins/decoders/decplugin.h File Reference

#include <inttypes.h>
#include <sys/types.h>
#include "../../../libweed/weed-palettes.h"

Go to the source code of this file.

Data Structures

struct  lives_clip_data_t

Defines

#define TRUE   1
#define FALSE   0
#define LIVES_SEEK_FAST   (1<<0)
 good
#define LIVES_SEEK_NEEDS_CALCULATION   (1<<1)
 not so good
#define LIVES_SEEK_QUALITY_LOSS   (1<<2)
#define get_le16int(p)   (*(p+1)<<8 | *(p))
#define get_le32int(p)   ((get_le16int(p+2)<<16) | get_le16int(p))
#define get_le64int(p)   (int64_t)(((uint64_t)(get_le32int(p+4))<<32) | (uint64_t)(get_le32int(p)))
#define MK_FOURCC(a, b, c, d)   ((a<<24)|(b<<16)|(c<<8)|d)
#define ABS(a)   ((a)>=0.?(a):-(a))

Typedefs

typedef int boolean

Enumerations

enum  lives_interlace_t {
  LIVES_INTERLACE_NONE = 0, LIVES_INTERLACE_BOTTOM_FIRST = 1, LIVES_INTERLACE_TOP_FIRST = 2, LIVES_INTERLACE_NONE = 0,
  LIVES_INTERLACE_BOTTOM_FIRST = 1, LIVES_INTERLACE_TOP_FIRST = 2
}
enum  LiVESMediaType { LIVES_MEDIA_TYPE_UNKNOWN = 0, LIVES_MEDIA_TYPE_VIDEO, LIVES_MEDIA_TYPE_AUDIO, LIVES_MEDIA_TYPE_DATA }

Functions

const char * version (void)
lives_clip_data_tget_clip_data (const char *URI, lives_clip_data_t *clip_data)
boolean get_frame (const lives_clip_data_t *cdata, int64_t frame, int *rowstrides, int height, void **pixel_data)
 frame starts at 0
void clip_data_free (lives_clip_data_t *)
 free clip data - this should be called for each instance before unloading the module
const char * module_check_init (void)
int64_t rip_audio (const lives_clip_data_t *, const char *fname, int64_t stframe, int64_t nframes, unsigned char **abuff)
void rip_audio_cleanup (const lives_clip_data_t *)
void module_unload (void)

Define Documentation

#define ABS (   a)    ((a)>=0.?(a):-(a))
#define FALSE   0
#define get_le16int (   p)    (*(p+1)<<8 | *(p))
#define get_le32int (   p)    ((get_le16int(p+2)<<16) | get_le16int(p))
#define get_le64int (   p)    (int64_t)(((uint64_t)(get_le32int(p+4))<<32) | (uint64_t)(get_le32int(p)))
#define LIVES_SEEK_FAST   (1<<0)

good

#define LIVES_SEEK_NEEDS_CALCULATION   (1<<1)

not so good

#define LIVES_SEEK_QUALITY_LOSS   (1<<2)
#define MK_FOURCC (   a,
  b,
  c,
 
)    ((a<<24)|(b<<16)|(c<<8)|d)
#define TRUE   1

Typedef Documentation

typedef int boolean

Enumeration Type Documentation

Enumerator:
LIVES_INTERLACE_NONE 
LIVES_INTERLACE_BOTTOM_FIRST 
LIVES_INTERLACE_TOP_FIRST 
LIVES_INTERLACE_NONE 
LIVES_INTERLACE_BOTTOM_FIRST 
LIVES_INTERLACE_TOP_FIRST 
Enumerator:
LIVES_MEDIA_TYPE_UNKNOWN 
LIVES_MEDIA_TYPE_VIDEO 
LIVES_MEDIA_TYPE_AUDIO 
LIVES_MEDIA_TYPE_DATA 

Function Documentation

void clip_data_free ( lives_clip_data_t )

free clip data - this should be called for each instance before unloading the module

lives_clip_data_t* get_clip_data ( const char *  URI,
lives_clip_data_t clip_data 
)

pass in NULL clip_data for the first call, subsequent calls (if the URI, current_clip or current_palette changes) should reuse the previous value. If URI or current_clip are invalid, clip_data will be freed and NULL returned.

plugin may or may not check current_palette to see if it is valid

boolean get_frame ( const lives_clip_data_t cdata,
int64_t  frame,
int *  rowstrides,
int  height,
void **  pixel_data 
)

frame starts at 0

const char* module_check_init ( void  )
void module_unload ( void  )
int64_t rip_audio ( const lives_clip_data_t ,
const char *  fname,
int64_t  stframe,
int64_t  nframes,
unsigned char **  abuff 
)
void rip_audio_cleanup ( const lives_clip_data_t )
const char* version ( void  )
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines