mirror of
https://github.com/game-stop/veejay.git
synced 2025-12-20 23:00:02 +01:00
status line renewed
git-svn-id: svn://code.dyne.org/veejay/trunk@123 eb8d1916-c9e9-0310-b8de-cf0c9472ead5
This commit is contained in:
@@ -1,3 +1,5 @@
|
|||||||
|
0.7.2
|
||||||
|
|
||||||
0.7.1
|
0.7.1
|
||||||
+ fixed color corruption in fib
|
+ fixed color corruption in fib
|
||||||
+ removed veejay.spec from configure.in
|
+ removed veejay.spec from configure.in
|
||||||
@@ -13,6 +15,10 @@
|
|||||||
+ added new effect 'Nervous'
|
+ added new effect 'Nervous'
|
||||||
+ added new effect 'Video Blobs'
|
+ added new effect 'Video Blobs'
|
||||||
+ fixed ticket #3 (editlist load bug)
|
+ fixed ticket #3 (editlist load bug)
|
||||||
|
+ added new effect 'Video Boids'
|
||||||
|
+ refurbished status line (all modi have 13 status bytes now)
|
||||||
|
+ fixed minor bug in 'video boids'
|
||||||
|
+ bumped version to 0.7.2
|
||||||
- render to history list mismatches frames in clip
|
- render to history list mismatches frames in clip
|
||||||
(too many)
|
(too many)
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ dnl AC_CONFIG_SRCDIR([veejay/lav_io.c])
|
|||||||
AC_INIT(veejay/veejay.c)
|
AC_INIT(veejay/veejay.c)
|
||||||
VEEJAY_MAJOR_VERSION=0
|
VEEJAY_MAJOR_VERSION=0
|
||||||
VEEJAY_MINOR_VERSION=7
|
VEEJAY_MINOR_VERSION=7
|
||||||
VEEJAY_MICRO_VERSION=1
|
VEEJAY_MICRO_VERSION=2
|
||||||
VEEJAY_VERSION=$VEEJAY_MAJOR_VERSION.$VEEJAY_MINOR_VERSION.$VEEJAY_MICRO_VERSION
|
VEEJAY_VERSION=$VEEJAY_MAJOR_VERSION.$VEEJAY_MINOR_VERSION.$VEEJAY_MICRO_VERSION
|
||||||
PACKAGE_VERSION=VEEJAY_VERSION
|
PACKAGE_VERSION=VEEJAY_VERSION
|
||||||
|
|
||||||
|
|||||||
@@ -1761,8 +1761,9 @@ int clip_apply_loop_dec(int s1, double fps) {
|
|||||||
|
|
||||||
|
|
||||||
/* print clip status information into an allocated string str*/
|
/* print clip status information into an allocated string str*/
|
||||||
int clip_chain_sprint_status(int s1, int entry, int changed, int r_changed,char *str,
|
//int clip_chain_sprint_status(int s1, int entry, int changed, int r_changed,char *str,
|
||||||
int frame)
|
// int frame)
|
||||||
|
int clip_chain_sprint_status( int s1,int pfps, int frame, int mode, char *str )
|
||||||
{
|
{
|
||||||
clip_info *clip;
|
clip_info *clip;
|
||||||
clip = clip_get(s1);
|
clip = clip_get(s1);
|
||||||
@@ -1797,21 +1798,21 @@ int clip_chain_sprint_status(int s1, int entry, int changed, int r_changed,char
|
|||||||
clip->effect_chain[entry]->channel,
|
clip->effect_chain[entry]->channel,
|
||||||
this_clip_id - 1);
|
this_clip_id - 1);
|
||||||
*/
|
*/
|
||||||
|
/*
|
||||||
|
|
||||||
sprintf(str,
|
sprintf(str,
|
||||||
"%d %d %d %d %d %d %ld %ld %d %d %d %d %d %d %d %d %d %d %d %d %d %ld %ld %d %d %d %d %d %d %d %d %d %d %d",
|
"%d %d %d %d %d %d %ld %ld %d %d %d %d %d %d %d %d %d %d %d %d %d %ld %ld %d %d %d %d %d %d %d %d %d %d %d",
|
||||||
/* 1 */ frame,
|
/ frame,
|
||||||
clip->active_render_entry,
|
clip->active_render_entry,
|
||||||
r_changed,
|
r_changed,
|
||||||
clip->selected_entry,
|
clip->selected_entry,
|
||||||
/* 5 */ clip->effect_toggle,
|
clip->effect_toggle,
|
||||||
s1,
|
s1,
|
||||||
clip->first_frame[clip->active_render_entry],
|
clip->first_frame[clip->active_render_entry],
|
||||||
clip->last_frame[clip->active_render_entry],
|
clip->last_frame[clip->active_render_entry],
|
||||||
clip->speed,
|
clip->speed,
|
||||||
clip->looptype,
|
clip->looptype,
|
||||||
/* 11 */ clip->max_loops,
|
clip->max_loops,
|
||||||
clip->max_loops2,
|
clip->max_loops2,
|
||||||
clip->next_clip_id,
|
clip->next_clip_id,
|
||||||
clip->depth,
|
clip->depth,
|
||||||
@@ -1820,7 +1821,7 @@ int clip_chain_sprint_status(int s1, int entry, int changed, int r_changed,char
|
|||||||
clip->audio_volume,
|
clip->audio_volume,
|
||||||
0,
|
0,
|
||||||
0,
|
0,
|
||||||
/*20 */ 0,
|
0,
|
||||||
clip->encoder_active,
|
clip->encoder_active,
|
||||||
clip->encoder_duration,
|
clip->encoder_duration,
|
||||||
clip->encoder_succes_frames,
|
clip->encoder_succes_frames,
|
||||||
@@ -1836,6 +1837,25 @@ int clip_chain_sprint_status(int s1, int entry, int changed, int r_changed,char
|
|||||||
clip->effect_chain[entry]->a_flag,
|
clip->effect_chain[entry]->a_flag,
|
||||||
clip->effect_chain[entry]->volume,
|
clip->effect_chain[entry]->volume,
|
||||||
this_clip_id );
|
this_clip_id );
|
||||||
|
*/
|
||||||
|
|
||||||
|
sprintf(str,
|
||||||
|
"%d %d %d %d %d %d %d %d %d %d %d %d %d",
|
||||||
|
pfps,
|
||||||
|
frame,
|
||||||
|
mode,
|
||||||
|
s1,
|
||||||
|
clip->effect_toggle,
|
||||||
|
clip->first_frame[ clip->active_render_entry ],
|
||||||
|
clip->last_frame[ clip->active_render_entry ],
|
||||||
|
clip->speed,
|
||||||
|
clip->looptype,
|
||||||
|
clip->encoder_active,
|
||||||
|
clip->encoder_duration,
|
||||||
|
clip->encoder_succes_frames,
|
||||||
|
clip_size());
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -226,8 +226,7 @@ extern int clip_set_chain_channel(int s1, int position, int channel);
|
|||||||
|
|
||||||
//int clip_chain_replace(int s1, int position, int effect_id);
|
//int clip_chain_replace(int s1, int position, int effect_id);
|
||||||
|
|
||||||
extern int clip_chain_sprint_status(int s1, int entry, int changed, int r_changed, char *str,
|
extern int clip_chain_sprint_status(int s1, int r, int f, int m, char *s );
|
||||||
int frame);
|
|
||||||
|
|
||||||
extern int clip_set_render_entry(int s1, int entry);
|
extern int clip_set_render_entry(int s1, int entry);
|
||||||
extern int clip_get_render_entry(int s1);
|
extern int clip_get_render_entry(int s1);
|
||||||
|
|||||||
@@ -27,6 +27,9 @@
|
|||||||
|
|
||||||
#define MAX_EFFECTS 103
|
#define MAX_EFFECTS 103
|
||||||
|
|
||||||
|
#define PARAM_WIDTH (1<<0x2)
|
||||||
|
#define PARAM_HEIGHT (1<<0x3)
|
||||||
|
#define PARAM_FADER (1<<0x1)
|
||||||
|
|
||||||
// keyframe-able parameter sets
|
// keyframe-able parameter sets
|
||||||
typedef struct
|
typedef struct
|
||||||
@@ -67,6 +70,7 @@ typedef struct vj_effect_t {
|
|||||||
|
|
||||||
char **param_description; // unused.
|
char **param_description; // unused.
|
||||||
int *defaults;
|
int *defaults;
|
||||||
|
int *flags; // parameter flags
|
||||||
int *limits[2]; // [0] = min, [1] = max
|
int *limits[2]; // [0] = min, [1] = max
|
||||||
|
|
||||||
int extra_frame; // effect requires a secundary frame
|
int extra_frame; // effect requires a secundary frame
|
||||||
|
|||||||
@@ -1159,7 +1159,7 @@ static void veejay_put_to_screen(veejay_t * info)
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
static char status_who[5];
|
//static char status_who[5];
|
||||||
static char status_what[MESSAGE_SIZE];
|
static char status_what[MESSAGE_SIZE];
|
||||||
static char status_msg[MESSAGE_SIZE+5];
|
static char status_msg[MESSAGE_SIZE+5];
|
||||||
//static int status_first =0;
|
//static int status_first =0;
|
||||||
@@ -1171,11 +1171,11 @@ static void veejay_pipe_write_status(veejay_t * info)
|
|||||||
int d_len = 0;
|
int d_len = 0;
|
||||||
int res = 0;
|
int res = 0;
|
||||||
|
|
||||||
sprintf(status_who, "%d %d %d", info->uc->playback_mode, info->audio, info->real_fps );
|
// sprintf(status_who, "%d %d %d", info->uc->playback_mode, info->audio, info->real_fps );
|
||||||
|
|
||||||
switch (info->uc->playback_mode) {
|
switch (info->uc->playback_mode) {
|
||||||
case VJ_PLAYBACK_MODE_CLIP:
|
case VJ_PLAYBACK_MODE_CLIP:
|
||||||
/* get all current clip info (all buttons we can press in SDL) */
|
/* get all current clip info
|
||||||
if (clip_chain_sprint_status
|
if (clip_chain_sprint_status
|
||||||
(info->uc->clip_id, clip_get_selected_entry(info->uc->clip_id),
|
(info->uc->clip_id, clip_get_selected_entry(info->uc->clip_id),
|
||||||
info->uc->chain_changed, info->uc->render_changed, status_what,
|
info->uc->chain_changed, info->uc->render_changed, status_what,
|
||||||
@@ -1184,10 +1184,15 @@ static void veejay_pipe_write_status(veejay_t * info)
|
|||||||
"Status of clip %d is invalid",
|
"Status of clip %d is invalid",
|
||||||
info->uc->clip_id);
|
info->uc->clip_id);
|
||||||
info->uc->playback_mode = VJ_PLAYBACK_MODE_PLAIN;
|
info->uc->playback_mode = VJ_PLAYBACK_MODE_PLAIN;
|
||||||
|
}*/
|
||||||
|
if( clip_chain_sprint_status
|
||||||
|
(info->uc->clip_id, info->real_fps,settings->current_frame_num, info->uc->playback_mode, status_what ) != 0)
|
||||||
|
{
|
||||||
|
veejay_msg(VEEJAY_MSG_ERROR, "Invalid status!");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case VJ_PLAYBACK_MODE_PLAIN:
|
case VJ_PLAYBACK_MODE_PLAIN:
|
||||||
|
/*
|
||||||
sprintf(status_what, "%d %d %d %d %ld %f %ld %d %d %d",
|
sprintf(status_what, "%d %d %d %d %ld %f %ld %d %d %d",
|
||||||
settings->min_frame_num,
|
settings->min_frame_num,
|
||||||
settings->current_frame_num,
|
settings->current_frame_num,
|
||||||
@@ -1200,21 +1205,41 @@ static void veejay_pipe_write_status(veejay_t * info)
|
|||||||
clip_size() - 1,
|
clip_size() - 1,
|
||||||
vj_tag_size()-1
|
vj_tag_size()-1
|
||||||
);
|
);
|
||||||
|
*/
|
||||||
|
sprintf(status_what, "%d %d %d %d %d %d %d %d %d %d %d %d %d",
|
||||||
|
(int) info->real_fps,
|
||||||
|
settings->current_frame_num,
|
||||||
|
info->uc->playback_mode,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
settings->min_frame_num,
|
||||||
|
settings->max_frame_num,
|
||||||
|
settings->current_playback_speed,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0,
|
||||||
|
0 );
|
||||||
break;
|
break;
|
||||||
case VJ_PLAYBACK_MODE_TAG:
|
case VJ_PLAYBACK_MODE_TAG:
|
||||||
if (vj_tag_sprint_status(info->uc->clip_id,
|
/* if (vj_tag_sprint_status(info->uc->clip_id,
|
||||||
vj_tag_get_selected_entry(info->uc->clip_id),
|
vj_tag_get_selected_entry(info->uc->clip_id),
|
||||||
info->uc->chain_changed, status_what) != 0) {
|
info->uc->chain_changed, status_what) != 0) {
|
||||||
veejay_msg(VEEJAY_MSG_DEBUG,
|
veejay_msg(VEEJAY_MSG_DEBUG,
|
||||||
"Status of stream is invalid");
|
"Status of stream is invalid");
|
||||||
info->uc->playback_mode = VJ_PLAYBACK_MODE_PLAIN;
|
info->uc->playback_mode = VJ_PLAYBACK_MODE_PLAIN;
|
||||||
|
}*/
|
||||||
|
if( vj_tag_sprint_status( info->uc->clip_id, (int) info->real_fps,
|
||||||
|
settings->current_frame_num, info->uc->playback_mode, status_what ) != 0 )
|
||||||
|
{
|
||||||
|
veejay_msg(VEEJAY_MSG_ERROR, "Invalid status!");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
d_len = strlen(status_who) + strlen(status_what) + 1;
|
d_len = strlen(status_what);
|
||||||
|
|
||||||
snprintf(status_msg,MESSAGE_SIZE, "V%03dS%s %s", d_len, status_who, status_what);
|
snprintf(status_msg,MESSAGE_SIZE, "V%03dS%s", d_len, status_what);
|
||||||
|
|
||||||
res = vj_server_status_send(info->status, status_msg, strlen(status_msg));
|
res = vj_server_status_send(info->status, status_msg, strlen(status_msg));
|
||||||
if( res < 0) { /* close command socket */
|
if( res < 0) { /* close command socket */
|
||||||
|
|||||||
@@ -1817,14 +1817,15 @@ int vj_tag_get_frame(int t1, uint8_t *buffer[3], uint8_t * abuffer)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
int vj_tag_sprint_status(int tag_id, int entry, int changed, char *str)
|
//int vj_tag_sprint_status(int tag_id, int entry, int changed, char *str)
|
||||||
|
int vj_tag_sprint_status( int tag_id, int pfps,int frame, int mode, char *str )
|
||||||
{
|
{
|
||||||
vj_tag *tag;
|
vj_tag *tag;
|
||||||
tag = vj_tag_get(tag_id);
|
tag = vj_tag_get(tag_id);
|
||||||
|
|
||||||
if (!tag)
|
if (!tag)
|
||||||
return -1;
|
return -1;
|
||||||
|
/*
|
||||||
sprintf(str,
|
sprintf(str,
|
||||||
"%d %d %d %d %d %d %d %d %d %d %d %ld %ld %d %d %d %d %d %d %d %d %d %d %d",
|
"%d %d %d %d %d %d %d %d %d %d %d %ld %ld %d %d %d %d %d %d %d %d %d %d %d",
|
||||||
tag->id,
|
tag->id,
|
||||||
@@ -1852,6 +1853,24 @@ int vj_tag_sprint_status(int tag_id, int entry, int changed, char *str)
|
|||||||
tag->effect_chain[entry]->a_flag,
|
tag->effect_chain[entry]->a_flag,
|
||||||
tag->effect_chain[entry]->volume,
|
tag->effect_chain[entry]->volume,
|
||||||
this_tag_id-1);
|
this_tag_id-1);
|
||||||
|
*/
|
||||||
|
|
||||||
|
sprintf(str,
|
||||||
|
"%d %d %d %d %d %d %d %d %d %d %d %d %d",
|
||||||
|
pfps,
|
||||||
|
frame,
|
||||||
|
mode,
|
||||||
|
tag_id,
|
||||||
|
tag->effect_toggle,
|
||||||
|
0, // no start,
|
||||||
|
0, // no end,
|
||||||
|
0, // no speed,
|
||||||
|
0, // no looping
|
||||||
|
tag->encoder_active,
|
||||||
|
tag->encoder_duration,
|
||||||
|
tag->encoder_succes_frames,
|
||||||
|
vj_tag_size()-1);
|
||||||
|
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -209,8 +209,7 @@ int vj_tag_enable(int t1);
|
|||||||
|
|
||||||
int vj_tag_disable(int t1);
|
int vj_tag_disable(int t1);
|
||||||
|
|
||||||
int vj_tag_sprint_status(int tag_id, int entry, int changed, char *str);
|
int vj_tag_sprint_status(int tag_id, int r, int f, int m, char *str );
|
||||||
|
|
||||||
|
|
||||||
//int vj_tag_init_encoder(int t1, char *filename, int format,
|
//int vj_tag_init_encoder(int t1, char *filename, int format,
|
||||||
// int w, int h, double fps, long seconds, int autoplay);
|
// int w, int h, double fps, long seconds, int autoplay);
|
||||||
|
|||||||
Reference in New Issue
Block a user