LiVES  2.4.1-svn
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
Data Structures | Macros | Typedefs | Enumerations | Functions
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
 

Macros

#define TRUE   1
 
#define FALSE   0
 
#define LIVES_SEEK_FAST   (1<<0)
 good More...
 
#define LIVES_SEEK_NEEDS_CALCULATION   (1<<1)
 not so good More...
 
#define LIVES_SEEK_QUALITY_LOSS   (1<<2)
 
#define SYNC_HINT_AUDIO_TRIM_START   (1<<0)
 
#define SYNC_HINT_AUDIO_PAD_START   (1<<1)
 
#define SYNC_HINT_AUDIO_TRIM_END   (1<<2)
 
#define SYNC_HINT_AUDIO_PAD_END   (1<<3)
 
#define SYNC_HINT_VIDEO_PAD_START   (1<<4)
 
#define SYNC_HINT_VIDEO_PAD_END   (1<<5)
 
#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 *)
 
boolean get_frame (const lives_clip_data_t *, int64_t frame, int *rowstrides, int height, void **pixel_data)
 frame starts at 0 More...
 
void clip_data_free (lives_clip_data_t *)
 free clip data - this should be called for each instance before unloading the module More...
 
const char * module_check_init (void)
 
boolean set_palette (lives_clip_data_t *)
 
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)
 

Macro Definition 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 SYNC_HINT_AUDIO_PAD_END   (1<<3)
#define SYNC_HINT_AUDIO_PAD_START   (1<<1)
#define SYNC_HINT_AUDIO_TRIM_END   (1<<2)
#define SYNC_HINT_AUDIO_TRIM_START   (1<<0)
#define SYNC_HINT_VIDEO_PAD_END   (1<<5)
#define SYNC_HINT_VIDEO_PAD_START   (1<<4)
#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  
)

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 ,
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 )
boolean set_palette ( lives_clip_data_t )
const char* version ( void  )