remove debugging code, set n_inputs and n_outputs correctly if plugin has none

This commit is contained in:
niels
2015-03-01 20:36:09 +01:00
parent 82273d9fce
commit 83894fe755
3 changed files with 22 additions and 13 deletions

View File

@@ -412,8 +412,8 @@ void vj_fast_picture_save_to_mem( VJFrame *frame, int out_w, int out_h, int pixf
uint8_t *dest[3];
dest[0] = vj_perform_get_preview_buffer();
dest[1] = dest[0] + frame->len;
dest[2] = dest[1] + frame->uv_len;
dest[1] = dest[0] + (out_w * out_h);
dest[2] = dest[1] + (out_w * out_h)/4; //@ destination is yuv 4:2:0
int dst_fmt = (pixfmt == PIX_FMT_YUVJ420P || pixfmt == PIX_FMT_YUVJ422P ? PIX_FMT_YUVJ420P : PIX_FMT_YUV420P );

View File

@@ -320,15 +320,7 @@ int frei0r_push_frame_f( void *plugin, int seqno, int dir, VJFrame *in )
return 0;
}
if(in->stand && seqno == 0) {
fr->in[seqno]->data[0] = in->data[0];
fr->in[seqno]->data[1] = in->data[1];
fr->in[seqno]->data[2] = in->data[2];
//rgb format
} else {
yuv_convert_and_scale_rgb( in_scaler__, in, fr->in[seqno]); //@ yuv -> rgb
in->stand = 1;
}
yuv_convert_and_scale_rgb( in_scaler__, in, fr->in[seqno]); //@ yuv -> rgb
if(seqno == 0)
fr->last = in;
}
@@ -843,9 +835,15 @@ int frei0r_process_frame_f( void *plugin )
int n_inputs = 0;
err = vevo_property_get(plugin, "num_inputs", 0, &n_inputs );
if( err != VEVO_NO_ERROR ) {
n_inputs = 0;
}
int n_outputs = 0;
err = vevo_property_get(plugin, "num_outputs",0, &n_outputs );
if( err != VEVO_NO_ERROR ) {
n_outputs = 0;
}
if( n_inputs == 0 && n_outputs == 1 ) {

View File

@@ -8585,7 +8585,7 @@ void vj_event_get_scaled_image ( void *ptr, const char format[], va_list ap )
w = args[0];
h = args[1];
if( w <= 0 || h <= 0 || w >= 2000 || h >= 2000 )
if( w <= 0 || h <= 0 || w >= 4096 || h >= 4096 )
{
veejay_msg(0, "Invalid image dimension %dx%d requested",w,h );
SEND_MSG(v, "0000000" );
@@ -8594,6 +8594,7 @@ void vj_event_get_scaled_image ( void *ptr, const char format[], va_list ap )
veejay_image_t *img = NULL;
int pixel_format = get_ffmpeg_pixfmt(v->pixel_format);
int preview_size = 0;
VJFrame frame;
veejay_memcpy(&frame, v->effect_frame1, sizeof(VJFrame));
vj_perform_get_primary_frame( v, frame.data );
@@ -8625,6 +8626,16 @@ void vj_event_get_scaled_image ( void *ptr, const char format[], va_list ap )
frame.len = frame.width * frame.height;
frame.uv_len = frame.uv_width * frame.uv_height;
break;
case PIX_FMT_YUV420P:
case PIX_FMT_YUVJ420P:
frame.uv_width = frame.width / 2;
frame.uv_height= frame.height / 2;
frame.ssm = 0;
frame.shift_v = 1;
frame.shift_h = 1;
frame.len = frame.width * frame.height;
frame.uv_len = frame.uv_width * frame.uv_height;
break;
}
}
//@ fast*_picture delivers always 4:2:0 data to reduce bandwidth
@@ -8641,7 +8652,7 @@ void vj_event_get_scaled_image ( void *ptr, const char format[], va_list ap )
h,
pixel_format );
int dstlen = (use_bw_preview_ ? ( w * h ) : (( w * h ) + ((w * h)/2)) );
int dstlen = (use_bw_preview_ ? ( w * h ) : ( ( w * h )/4 ) * 2 + (w * h) );
char header[8];
sprintf( header, "%06d%1d", dstlen, use_bw_preview_ );