From b966ff3cfec577131472bd0536f815ad84bfd159 Mon Sep 17 00:00:00 2001 From: Niels Elburg Date: Wed, 14 Mar 2007 18:57:02 +0000 Subject: [PATCH] framedup update trough statusline git-svn-id: svn://code.dyne.org/veejay/trunk@855 eb8d1916-c9e9-0310-b8de-cf0c9472ead5 --- veejay-current/gveejay-reloaded/callback.c | 3 +++ veejay-current/gveejay-reloaded/common.h | 1 + veejay-current/gveejay-reloaded/utils.c | 5 +++-- veejay-current/gveejay-reloaded/vj-api.c | 12 +++++++++--- veejay-current/libsample/sampleadm.c | 5 +++-- veejay-current/libstream/vj-tag.c | 5 +++-- veejay-current/veejay/liblavplayvj.c | 3 ++- 7 files changed, 24 insertions(+), 10 deletions(-) diff --git a/veejay-current/gveejay-reloaded/callback.c b/veejay-current/gveejay-reloaded/callback.c index 4768b45d..396a7ab9 100644 --- a/veejay-current/gveejay-reloaded/callback.c +++ b/veejay-current/gveejay-reloaded/callback.c @@ -2358,6 +2358,9 @@ void on_veejayevent_leave_notify_event(GtkWidget *w , gpointer user_data) void on_spin_framedelay_value_changed(GtkWidget *w, gpointer user_data) { + if( info->status_lock ) + return; + multi_vims(VIMS_VIDEO_SET_SLOW, "%d", get_nums("spin_framedelay")); } diff --git a/veejay-current/gveejay-reloaded/common.h b/veejay-current/gveejay-reloaded/common.h index 82f4e9bc..1ce17a46 100644 --- a/veejay-current/gveejay-reloaded/common.h +++ b/veejay-current/gveejay-reloaded/common.h @@ -41,6 +41,7 @@ #define SEQ_ACT 18 #define SEQ_CUR 19 #define CHAIN_FADE 20 +#define FRAME_DUP 21 #define CURRENT_ENTRY 15 #define MODE_PLAIN 2 #define MODE_SAMPLE 0 diff --git a/veejay-current/gveejay-reloaded/utils.c b/veejay-current/gveejay-reloaded/utils.c index 792339a3..e15cb43f 100644 --- a/veejay-current/gveejay-reloaded/utils.c +++ b/veejay-current/gveejay-reloaded/utils.c @@ -25,7 +25,7 @@ int status_to_arr( char *status, int *array ) { - int n = sscanf(status, "%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", + int n = sscanf(status, "%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", array + 0, array + 1, array + 2, @@ -46,7 +46,8 @@ int status_to_arr( char *status, int *array ) array + 17, array + 18, array + 19, - array + 20 ); + array + 20, + array + 21 ); return n; } diff --git a/veejay-current/gveejay-reloaded/vj-api.c b/veejay-current/gveejay-reloaded/vj-api.c index 10587796..d87a8db4 100644 --- a/veejay-current/gveejay-reloaded/vj-api.c +++ b/veejay-current/gveejay-reloaded/vj-api.c @@ -2963,6 +2963,12 @@ static void update_current_slot(int *history, int pm, int last_pm) // update_knob_value(info->speed_knob, speed, 0); } + if( history[FRAME_DUP] != info->status_tokens[FRAME_DUP] ) + { + update_spin_value( "spin_framedelay", info->status_tokens[FRAME_DUP]); + } + + if(update) { speed = info->status_tokens[SAMPLE_SPEED]; @@ -6025,16 +6031,16 @@ static gboolean veejay_tick( GIOChannel *source, GIOCondition condition, gpointe { int n = status_to_arr( gui->status_msg, gui->status_tokens ); #ifdef STRICT_CHECKING - assert(n == 21); + assert(n == 22); #endif info->uc.playmode = gui->status_tokens[ PLAY_MODE ]; - if( n != 21 ) + if( n != 22) { veejay_msg(0, "Received corrupt status line!"); int *history = info->history_tokens[ info->uc.playmode ]; int i; - for(i = 0; i <= 21; i ++ ) + for(i = 0; i <= 22; i ++ ) gui->status_tokens[i] = history[i]; } diff --git a/veejay-current/libsample/sampleadm.c b/veejay-current/libsample/sampleadm.c index 72b4f872..db9e1768 100644 --- a/veejay-current/libsample/sampleadm.c +++ b/veejay-current/libsample/sampleadm.c @@ -2127,7 +2127,7 @@ int sample_chain_sprint_status( int s1,int cache,int sa,int ca, int pfps, int fr return -1; } veejay_sprintf(str,1024, - "%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", + "%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", pfps, frame, mode, @@ -2148,7 +2148,8 @@ int sample_chain_sprint_status( int s1,int cache,int sa,int ca, int pfps, int fr cache, sa, ca, - (int)( sample->fader_val )); + (int)( sample->fader_val ), + sample->dup); diff --git a/veejay-current/libstream/vj-tag.c b/veejay-current/libstream/vj-tag.c index faaa59bf..09da24be 100644 --- a/veejay-current/libstream/vj-tag.c +++ b/veejay-current/libstream/vj-tag.c @@ -2348,7 +2348,7 @@ int vj_tag_sprint_status( int tag_id,int cache,int sa, int ca, int pfps,int fram //return -1; veejay_sprintf(str, 1024, - "%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", + "%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", pfps, frame, mode, @@ -2369,7 +2369,8 @@ int vj_tag_sprint_status( int tag_id,int cache,int sa, int ca, int pfps,int fram cache, sa, ca, - (int)(tag->fader_val)); + (int)(tag->fader_val), + 0); return 0; } diff --git a/veejay-current/veejay/liblavplayvj.c b/veejay-current/veejay/liblavplayvj.c index 54b98112..202ad759 100644 --- a/veejay-current/veejay/liblavplayvj.c +++ b/veejay-current/veejay/liblavplayvj.c @@ -1173,7 +1173,7 @@ void veejay_pipe_write_status(veejay_t * info, int link_id) } break; case VJ_PLAYBACK_MODE_PLAIN: - veejay_sprintf(info->status_what,1024, "%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", + veejay_sprintf(info->status_what,1024, "%d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d", info->real_fps, settings->current_frame_num, info->uc->playback_mode, @@ -1194,6 +1194,7 @@ void veejay_pipe_write_status(veejay_t * info, int link_id) cache_used, 0, 0, + 0, 0 ); break; case VJ_PLAYBACK_MODE_TAG: