Added new effect 'VideoWall', changes to effects Photoplay and Videoplay , part II

git-svn-id: svn://code.dyne.org/veejay/trunk@267 eb8d1916-c9e9-0310-b8de-cf0c9472ead5
This commit is contained in:
Niels Elburg
2005-03-19 17:19:12 +00:00
parent 676e15f9ff
commit 20170e3859
5 changed files with 14 additions and 5 deletions

View File

@@ -38,7 +38,7 @@ libvje_la_SOURCES = vj-effect.c vj-effman.c effects/common.c \
effects/crosspixel.c effects/morphology.c effects/ghost.c effects/blob.c effects/boids.c effects/nervous.c \ effects/crosspixel.c effects/morphology.c effects/ghost.c effects/blob.c effects/boids.c effects/nervous.c \
effects/cartonize.c effects/tripplicity.c effects/neighbours.c effects/neighbours2.c\ effects/cartonize.c effects/tripplicity.c effects/neighbours.c effects/neighbours2.c\
effects/neighbours3.c effects/neighbours4.c effects/neighbours5.c effects/cutstop.c\ effects/neighbours3.c effects/neighbours4.c effects/neighbours5.c effects/cutstop.c\
effects/maskstop.c effects/photoplay.c effects/videoplay.c effects/maskstop.c effects/photoplay.c effects/videoplay.c effects/videowall.c
libvje_la_LDFLAGS = $(VJE_ALL_LIB_OPTS) \ libvje_la_LDFLAGS = $(VJE_ALL_LIB_OPTS) \

View File

@@ -111,6 +111,7 @@ enum {
VJ_VIDEO_EFFECT_DISSOLVE = 235, VJ_VIDEO_EFFECT_DISSOLVE = 235,
VJ_VIDEO_EFFECT_TRIPPLICITY = 236, VJ_VIDEO_EFFECT_TRIPPLICITY = 236,
VJ_VIDEO_EFFECT_VIDEOPLAY = 237, VJ_VIDEO_EFFECT_VIDEOPLAY = 237,
VJ_VIDEO_EFFECT_VIDEOWALL = 238,
// VJ_VIDEO_EFFECT_CHANNELMIX = 233, // VJ_VIDEO_EFFECT_CHANNELMIX = 233,
}; };
@@ -197,7 +198,7 @@ enum {
#define VJ_IMAGE_EFFECT_MAX 175 #define VJ_IMAGE_EFFECT_MAX 175
#define VJ_VIDEO_EFFECT_MIN 200 #define VJ_VIDEO_EFFECT_MIN 200
#define VJ_VIDEO_EFFECT_MAX 238 #define VJ_VIDEO_EFFECT_MAX 239
#define VJ_VIDEO_COUNT (VJ_VIDEO_EFFECT_MAX - VJ_VIDEO_EFFECT_MIN) #define VJ_VIDEO_COUNT (VJ_VIDEO_EFFECT_MAX - VJ_VIDEO_EFFECT_MIN)
@@ -507,6 +508,8 @@ extern void photoplay_apply(VJFrame *frame, int w, int h, int a, int b, int c);
extern void videoplay_apply(VJFrame *frame,VJFrame *B, int w, int h, int a, int b, int c); extern void videoplay_apply(VJFrame *frame,VJFrame *B, int w, int h, int a, int b, int c);
extern void videowall_apply(VJFrame *frame,VJFrame *B, int w, int h, int a, int b, int c, int d);
#endif #endif

View File

@@ -139,7 +139,7 @@
#include "effects/maskstop.h" #include "effects/maskstop.h"
#include "effects/photoplay.h" #include "effects/photoplay.h"
#include "effects/videoplay.h" #include "effects/videoplay.h"
#include "effects/videowall.h"
static struct static struct
{ {
int (*mem_init)(int width, int height); int (*mem_init)(int width, int height);
@@ -188,6 +188,7 @@ static struct
{ maskstop_malloc, maskstop_free, VJ_IMAGE_EFFECT_MASKSTOP }, { maskstop_malloc, maskstop_free, VJ_IMAGE_EFFECT_MASKSTOP },
{ photoplay_malloc, photoplay_free, VJ_IMAGE_EFFECT_PHOTOPLAY }, { photoplay_malloc, photoplay_free, VJ_IMAGE_EFFECT_PHOTOPLAY },
{ videoplay_malloc, videoplay_free, VJ_VIDEO_EFFECT_VIDEOPLAY }, { videoplay_malloc, videoplay_free, VJ_VIDEO_EFFECT_VIDEOPLAY },
{ videowall_malloc, videowall_free, VJ_VIDEO_EFFECT_VIDEOWALL },
{ NULL , NULL ,0 }, { NULL , NULL ,0 },
}; };
@@ -400,7 +401,8 @@ void vj_effect_initialize(int width, int height)
vj_effects[35] = dissolve_init(width,height); vj_effects[35] = dissolve_init(width,height);
vj_effects[36] = tripplicity_init(width,height); vj_effects[36] = tripplicity_init(width,height);
vj_effects[37] = videoplay_init(width,height); vj_effects[37] = videoplay_init(width,height);
vj_effects[38] = dummy_init(width,height); vj_effects[38] = videowall_init(width,height);
vj_effects[39] = dummy_init(width,height);
vj_effects[i + 1] = mirrors2_init(width,height); vj_effects[i + 1] = mirrors2_init(width,height);
vj_effects[i + 2] = mirrors_init(width,height); vj_effects[i + 2] = mirrors_init(width,height);
vj_effects[i + 3] = widthmirror_init(width,height); vj_effects[i + 3] = widthmirror_init(width,height);

View File

@@ -319,6 +319,10 @@ void vj_effman_apply_image_effect(
void vj_effman_apply_video_effect( VJFrame **frames, VJFrameInfo *frameinfo ,vjp_kf *todo_info,int *arg, int entry, int e) { void vj_effman_apply_video_effect( VJFrame **frames, VJFrameInfo *frameinfo ,vjp_kf *todo_info,int *arg, int entry, int e) {
switch(e) { switch(e) {
case VJ_VIDEO_EFFECT_VIDEOWALL:
videowall_apply(frames[0],frames[1],frameinfo->width,
frameinfo->height,arg[0],arg[1],arg[2],arg[3]);
break;
case VJ_VIDEO_EFFECT_VIDEOPLAY: case VJ_VIDEO_EFFECT_VIDEOPLAY:
videoplay_apply(frames[0],frames[1],frameinfo->width, videoplay_apply(frames[0],frames[1],frameinfo->width,
frameinfo->height,arg[0],arg[1],arg[2]); frameinfo->height,arg[0],arg[1],arg[2]);

View File

@@ -25,7 +25,7 @@
#include <string.h> #include <string.h>
#include <libvjmem/vjmem.h> #include <libvjmem/vjmem.h>
#define MAX_EFFECTS 113 #define MAX_EFFECTS 114
#define PARAM_WIDTH (1<<0x2) #define PARAM_WIDTH (1<<0x2)
#define PARAM_HEIGHT (1<<0x3) #define PARAM_HEIGHT (1<<0x3)