summaryrefslogtreecommitdiff
path: root/src/post/planar/invert.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/post/planar/invert.c')
-rw-r--r--src/post/planar/invert.c36
1 files changed, 18 insertions, 18 deletions
diff --git a/src/post/planar/invert.c b/src/post/planar/invert.c
index d1f0c8d4e..820221cf5 100644
--- a/src/post/planar/invert.c
+++ b/src/post/planar/invert.c
@@ -1,23 +1,23 @@
/*
* Copyright (C) 2000-2004 the xine project
- *
+ *
* This file is part of xine, a free video player.
- *
+ *
* xine is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
- *
+ *
* xine is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
- *
+ *
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
*/
-
+
/*
* simple video inverter plugin
*/
@@ -50,15 +50,15 @@ static int invert_draw(vo_frame_t *frame, xine_stream_t *stream);
void *invert_init_plugin(xine_t *xine, void *data)
{
post_class_t *class = (post_class_t *)malloc(sizeof(post_class_t));
-
+
if (!class)
return NULL;
-
+
class->open_plugin = invert_open_plugin;
class->get_identifier = invert_get_identifier;
class->get_description = invert_get_description;
class->dispose = invert_class_dispose;
-
+
return class;
}
@@ -71,23 +71,23 @@ static post_plugin_t *invert_open_plugin(post_class_t *class_gen, int inputs,
post_in_t *input;
post_out_t *output;
post_video_port_t *port;
-
+
if (!this || !video_target || !video_target[0]) {
free(this);
return NULL;
}
-
+
_x_post_init(this, 0, 1);
-
+
port = _x_post_intercept_video_port(this, video_target[0], &input, &output);
port->intercept_frame = invert_intercept_frame;
port->new_frame->draw = invert_draw;
input->xine_in.name = "video";
output->xine_out.name = "inverted video";
this->xine_post.video_input[0] = &port->new_port;
-
+
this->dispose = invert_dispose;
-
+
return this;
}
@@ -125,18 +125,18 @@ static int invert_draw(vo_frame_t *frame, xine_stream_t *stream)
post_video_port_t *port = (post_video_port_t *)frame->port;
vo_frame_t *inverted_frame;
int size, i, skip;
-
+
if (frame->bad_frame) {
_x_post_frame_copy_down(frame, frame->next);
skip = frame->next->draw(frame->next, stream);
_x_post_frame_copy_up(frame, frame->next);
return skip;
}
-
+
inverted_frame = port->original_port->get_frame(port->original_port,
frame->width, frame->height, frame->ratio, frame->format, frame->flags | VO_BOTH_FIELDS);
_x_post_frame_copy_down(frame, inverted_frame);
-
+
switch (inverted_frame->format) {
case XINE_IMGFMT_YUY2:
size = inverted_frame->pitches[0] * inverted_frame->height;
@@ -157,10 +157,10 @@ static int invert_draw(vo_frame_t *frame, xine_stream_t *stream)
for (i = 0; i < size; i++)
inverted_frame->base[2][i] = 0xff - frame->base[2][i];
break;
- }
+ }
skip = inverted_frame->draw(inverted_frame, stream);
_x_post_frame_copy_up(frame, inverted_frame);
inverted_frame->free(inverted_frame);
-
+
return skip;
}