X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fmiracle%2Fmiracle_unit.h;h=3ba87513ab3f6a1c92d4ac323c1a8c24a0b3f8eb;hb=f5a438b319b560eccf511ebf3eed5db9edbac1de;hp=54338182babc10dbe8856186eeb4aafe15f6402e;hpb=661165812e3410fe2f6f49d7af882b36a0efcf82;p=melted diff --git a/src/miracle/miracle_unit.h b/src/miracle/miracle_unit.h index 5433818..3ba8751 100644 --- a/src/miracle/miracle_unit.h +++ b/src/miracle/miracle_unit.h @@ -22,14 +22,9 @@ #define _DV_UNIT_H_ #include -#include -#include -#include -#include -#include -#include -#include +#include +#include #ifdef __cplusplus extern "C" @@ -38,81 +33,46 @@ extern "C" typedef struct { - int unit; - dv_pump pump; - dv_player player; - dv_input in; - int dv1394_fd; - int is_terminated; - int is_suspended; - pthread_t out; - int channel; - nodeid_t node_id; - octlet_t guid; - raw1394handle_t raw1394; - int allow_stdin; - int buffer_size; - int online; - dv1394_notifier notifier; - char *root_dir; - unsigned int dv1394_syt_offset; - unsigned int dv1394_cip_n; - unsigned int dv1394_cip_d; - unsigned int n_frames; - unsigned int n_fill; - uint8_t *mmap; - int mmap_pos; - int mmap_length; -} dv_unit_t, *dv_unit; + mlt_properties properties; + mlt_properties producers; + mlt_properties old_producers; +} +miracle_unit_t, *miracle_unit; -extern dv_unit dv_unit_init( octlet_t guid, int channel ); -extern void dv_unit_allow_stdin( dv_unit unit, int flag ); -extern void dv_unit_set_buffer_size( dv_unit unit, int size ); -extern int dv_unit_get_buffer_size( dv_unit unit ); -extern void dv_unit_set_n_frames( dv_unit unit, int size ); -extern int dv_unit_get_n_frames( dv_unit unit ); -extern void dv_unit_set_n_fill( dv_unit unit, int size ); -extern int dv_unit_get_n_fill( dv_unit unit ); -extern dv_error_code dv_unit_load( dv_unit unit, const char *clip, long in, long out, int flush ); -extern dv_error_code dv_unit_insert( dv_unit unit, const char *clip, int index, long in, long out ); -extern dv_error_code dv_unit_append( dv_unit unit, const char *clip, long in, long out ); -extern dv_error_code dv_unit_remove( dv_unit unit, int index ); -extern dv_error_code dv_unit_clean( dv_unit unit ); -extern dv_error_code dv_unit_move( dv_unit unit, int src, int dest ); -extern int dv_unit_transfer( dv_unit dest_unit, dv_unit src_unit ); -extern void dv_unit_play( dv_unit_t *unit, int speed ); -extern void dv_unit_terminate( dv_unit ); -extern int dv_unit_has_terminated( dv_unit ); -extern octlet_t dv_unit_get_guid( dv_unit unit ); -extern int dv_unit_get_nodeid( dv_unit unit ); -extern int dv_unit_get_channel( dv_unit unit ); -extern int dv_unit_online( dv_unit unit ); -extern void dv_unit_offline( dv_unit unit ); -extern int dv_unit_is_offline( dv_unit unit ); -extern void dv_unit_set_notifier( dv_unit, dv1394_notifier, char * ); -extern int dv_unit_get_status( dv_unit, dv1394_status ); -extern void dv_unit_change_position( dv_unit, int, long position ); -extern void dv_unit_change_speed( dv_unit unit, int speed ); -extern int dv_unit_set_clip_in( dv_unit unit, int index, long position ); -extern int dv_unit_set_clip_out( dv_unit unit, int index, long position ); -extern void dv_unit_set_mode( dv_unit unit, dv_player_clip_mode mode ); -extern dv_player_clip_mode dv_unit_get_mode( dv_unit unit ); -extern void dv_unit_set_eof_action( dv_unit unit, dv_player_eof_action mode ); -extern dv_player_eof_action dv_unit_get_eof_action( dv_unit unit ); -extern void dv_unit_step( dv_unit unit, int offset ); -extern void dv_unit_close( dv_unit unit ); -extern int dv_unit_get_port( dv_unit unit ); -extern void dv_unit_set_dv1394_fd( dv_unit unit, int fd ); -extern unsigned int dv_unit_get_syt_offset( dv_unit unit ); -extern unsigned int dv_unit_get_cip_n( dv_unit unit ); -extern unsigned int dv_unit_get_cip_d( dv_unit unit ); -extern void dv_unit_set_syt_offset( dv_unit unit, unsigned int ); -extern void dv_unit_set_cip_n( dv_unit unit, unsigned int ); -extern void dv_unit_set_cip_d( dv_unit unit, unsigned int ); -extern void dv_unit_suspend( dv_unit ); -extern void dv_unit_restore( dv_unit ); -extern dv_player dv_unit_get_dv_player( dv_unit ); -extern int dv_unit_get_current_clip( dv_unit ); +extern miracle_unit miracle_unit_init( int index, char *arg ); +extern void miracle_unit_report_list( miracle_unit unit, valerie_response response ); +extern void miracle_unit_allow_stdin( miracle_unit unit, int flag ); +extern valerie_error_code miracle_unit_load( miracle_unit unit, char *clip, int32_t in, int32_t out, int flush ); +extern valerie_error_code miracle_unit_insert( miracle_unit unit, char *clip, int index, int32_t in, int32_t out ); +extern valerie_error_code miracle_unit_append( miracle_unit unit, char *clip, int32_t in, int32_t out ); +extern valerie_error_code miracle_unit_remove( miracle_unit unit, int index ); +extern valerie_error_code miracle_unit_clean( miracle_unit unit ); +extern valerie_error_code miracle_unit_clear( miracle_unit unit ); +extern valerie_error_code miracle_unit_move( miracle_unit unit, int src, int dest ); +extern int miracle_unit_transfer( miracle_unit dest_unit, miracle_unit src_unit ); +extern void miracle_unit_play( miracle_unit_t *unit, int speed ); +extern void miracle_unit_terminate( miracle_unit ); +extern int miracle_unit_has_terminated( miracle_unit ); +extern int miracle_unit_get_nodeid( miracle_unit unit ); +extern int miracle_unit_get_channel( miracle_unit unit ); +extern int miracle_unit_is_offline( miracle_unit unit ); +extern void miracle_unit_set_notifier( miracle_unit, valerie_notifier, char * ); +extern int miracle_unit_get_status( miracle_unit, valerie_status ); +extern void miracle_unit_change_position( miracle_unit, int, int32_t position ); +extern void miracle_unit_change_speed( miracle_unit unit, int speed ); +extern int miracle_unit_set_clip_in( miracle_unit unit, int index, int32_t position ); +extern int miracle_unit_set_clip_out( miracle_unit unit, int index, int32_t position ); +//extern void miracle_unit_set_mode( miracle_unit unit, dv_player_clip_mode mode ); +//extern dv_player_clip_mode miracle_unit_get_mode( miracle_unit unit ); +//extern void miracle_unit_set_eof_action( miracle_unit unit, dv_player_eof_action mode ); +//extern dv_player_eof_action miracle_unit_get_eof_action( miracle_unit unit ); +extern void miracle_unit_step( miracle_unit unit, int32_t offset ); +extern void miracle_unit_close( miracle_unit unit ); +extern void miracle_unit_suspend( miracle_unit ); +extern void miracle_unit_restore( miracle_unit ); +extern int miracle_unit_set( miracle_unit, char *name_value ); +extern char * miracle_unit_get( miracle_unit, char *name ); +extern int miracle_unit_get_current_clip( miracle_unit ); #ifdef __cplusplus