Libvje / refactor : opacityadv

* frame->width, frame->height
This commit is contained in:
[d.j.a.y] Jerome Blanchi
2016-04-20 12:09:43 +02:00
parent abae2e2a3d
commit 6de8045357
4 changed files with 9 additions and 13 deletions

View File

@@ -48,12 +48,11 @@ vj_effect *opacityadv_init(int w, int h)
return ve; return ve;
} }
void opacityadv_apply( VJFrame *frame, VJFrame *frame2, int width, void opacityadv_apply( VJFrame *frame, VJFrame *frame2, int opacity,
int height, int opacity, int threshold, int threshold, int threshold2)
int threshold2)
{ {
unsigned int x, y, len = width * height; unsigned int x, y, len = frame->width * frame->height;
uint8_t a1, a2; uint8_t a1, a2;
unsigned int op0, op1; unsigned int op0, op1;
uint8_t *Y = frame->data[0]; uint8_t *Y = frame->data[0];
@@ -66,8 +65,8 @@ void opacityadv_apply( VJFrame *frame, VJFrame *frame2, int width,
op1 = (opacity > 255) ? 255 : opacity; op1 = (opacity > 255) ? 255 : opacity;
op0 = 255 - op1; op0 = 255 - op1;
for (y = 0; y < len; y += width) { for (y = 0; y < len; y += frame->width) {
for (x = 0; x < width; x++) { for (x = 0; x < frame->width; x++) {
a1 = Y[x + y]; a1 = Y[x + y];
a2 = Y2[x + y]; a2 = Y2[x + y];
/* /*

View File

@@ -25,8 +25,7 @@
#include <stdint.h> #include <stdint.h>
vj_effect *opacityadv_init(); vj_effect *opacityadv_init();
void opacityadv_apply( VJFrame *frame, VJFrame *frame2, int width, void opacityadv_apply( VJFrame *frame, VJFrame *frame2, int opacity,
int height, int opacity, int threshold, int threshold, int threshold2);
int threshold2);
void opacityadv_free(); void opacityadv_free();
#endif #endif

View File

@@ -320,8 +320,7 @@ extern void medianfilter_apply( VJFrame *frame, int val);
extern void negatechannel_apply( VJFrame *frame, int chan, int val); extern void negatechannel_apply( VJFrame *frame, int chan, int val);
extern void colormap_apply( VJFrame *frame, int r, int g, int b); extern void colormap_apply( VJFrame *frame, int r, int g, int b);
extern void opacity_apply(VJFrame *frame, VJFrame *frame2, int opacity); extern void opacity_apply(VJFrame *frame, VJFrame *frame2, int opacity);
extern void opacityadv_apply(VJFrame *frame, VJFrame *frame2, int w, extern void opacityadv_apply(VJFrame *frame, VJFrame *frame2, int o, int t1, int t2);
int h, int o, int t1, int t2);
extern void opacitythreshold_apply(VJFrame *frame, VJFrame *frame2, extern void opacitythreshold_apply(VJFrame *frame, VJFrame *frame2,
int w, int h, int o, int t1, int t2); int w, int h, int o, int t1, int t2);

View File

@@ -520,8 +520,7 @@ static void vj_effman_apply_video_effect( VJFrame **frames, vjp_kf *todo_info,in
frames[0]->height, arg[0], arg[1],arg[2]); frames[0]->height, arg[0], arg[1],arg[2]);
break; break;
case VJ_VIDEO_EFFECT_THRESHOLD: case VJ_VIDEO_EFFECT_THRESHOLD:
opacityadv_apply(frames[0], frames[1], frames[0]->width, opacityadv_apply(frames[0], frames[1], arg[0], arg[1], arg[2]);
frames[0]->height, arg[0], arg[1], arg[2]);
break; break;
case VJ_VIDEO_EFFECT_RGBKEY: case VJ_VIDEO_EFFECT_RGBKEY:
rgbkey_apply(frames[0], frames[1], frames[0]->width, frames[0]->height, rgbkey_apply(frames[0], frames[1], frames[0]->width, frames[0]->height,