diff options
author | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2003-11-01 18:34:22 +0000 |
---|---|---|
committer | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2003-11-01 18:34:22 +0000 |
commit | cede4748a3a045fad768f0cfd19b48b2d201292d (patch) | |
tree | 1e4e6c388ab358526e278ddef8b505bf557af4e1 | |
parent | 59c1677f44a7215754f155a20189572fb9dc4233 (diff) | |
download | xine-lib-cede4748a3a045fad768f0cfd19b48b2d201292d.tar.gz xine-lib-cede4748a3a045fad768f0cfd19b48b2d201292d.tar.bz2 |
provide help to video post plugins
CVS patchset: 5669
CVS date: 2003/11/01 18:34:22
-rw-r--r-- | src/post/deinterlace/xine_plugin.c | 59 | ||||
-rw-r--r-- | src/post/planar/boxblur.c | 14 | ||||
-rw-r--r-- | src/post/planar/denoise3d.c | 18 | ||||
-rw-r--r-- | src/post/planar/eq.c | 19 | ||||
-rw-r--r-- | src/post/planar/eq2.c | 27 | ||||
-rw-r--r-- | src/post/planar/expand.c | 14 | ||||
-rw-r--r-- | src/post/planar/unsharp.c | 30 |
7 files changed, 174 insertions, 7 deletions
diff --git a/src/post/deinterlace/xine_plugin.c b/src/post/deinterlace/xine_plugin.c index f726e231c..2589c5848 100644 --- a/src/post/deinterlace/xine_plugin.c +++ b/src/post/deinterlace/xine_plugin.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: xine_plugin.c,v 1.20 2003/11/01 13:20:01 miguelfreitas Exp $ + * $Id: xine_plugin.c,v 1.21 2003/11/01 18:34:22 miguelfreitas Exp $ * * advanced video deinterlacer plugin * Jun/2003 by Miguel Freitas @@ -192,10 +192,67 @@ static xine_post_api_descr_t * get_param_descr (void) { return ¶m_descr; } +static char * get_help (void) { + return _("Advanced tvtime/deinterlacer plugin with pulldown detection\n" + "This plugin aims to provide deinterlacing mechanisms comparable " + "to high quality progressive DVD players and so called " + "line-doublers, for use with computer monitors, projectors and " + "other progressive display devices.\n" + "\n" + "Parameters\n" + "\n" + " Method: Select deinterlacing method/algorithm to use, see below for " + "explanation of each method.\n" + "\n" + " Enabled: Enable/disable the plugin.\n" + "\n" + " Pulldown: Choose the 2-3 pulldown detection algorithm. 24 FPS films " + "that have being converted to NTSC can be detected and intelligently " + "reconstructed to their original (non-interlaced) frames.\n" + "\n" + " Framerate_mode: Selecting 'full' will deinterlace every field " + "to an unique frame for television quality and beyond. This feature will " + "effetively double the frame rate, improving smoothness. Note, however, " + "that full 59.94 FPS is not possible with plain 2.4 Linux kernel (that " + "use a timer interrupt frequency of 100Hz). Newer RedHat and 2.6 kernels " + "use higher HZ settings (512 and 1000, respectively) and should work fine.\n" + "\n" + " Judder_correction: Once 2-3 pulldown is enabled and a film material " + "is detected, it is possible to reduce the frame rate to original rate " + "used (24 FPS). This will make the frames evenly spaced in time, " + "matching the speed they were shot and eliminating the judder effect.\n" + "\n" + " Use_progressive_frame_flag: Well mastered MPEG2 streams uses a flag " + "to indicate progressive material. This setting control whether we trust " + "this flag or not (some rare and buggy mpeg2 streams set it wrong).\n" + "\n" + " Chroma_filter: DVD/MPEG2 use an interlaced image format that has " + "a very poor vertical chroma resolution. Upsampling the chroma for purposes " + "of deinterlacing may cause some artifacts to occur (eg. color stripes). Use " + "this option to blur the chroma vertically after deinterlacing to remove " + "the artifacts. Warning: cpu intensive.\n" + "\n" + " Cheap_mode: This will skip the expensive YV12->YUY2 image conversion, " + "tricking tvtime/dscaler routines like if they were still handling YUY2 " + "images. Of course, this is not correct, not all pixels will be evaluated " + "by the algorithms to decide the regions to deinterlace and chroma will be " + "processed separately. Nevertheless, it allows people with not so fast " + "systems to try deinterlace algorithms, in a tradeoff between quality " + "and cpu usage.\n" + "\n" + "Deinterlacing methods: (Not all methods are available for all plataforms)\n" + "\n" + "(FIXME: explain each method, check tvtime/dscaler docs... i fell lazy)\n" + "\n" + "* Uses several algorithms from tvtime and dscaler projects.\n" + ); +} + static xine_post_api_t post_api = { set_parameters, get_parameters, get_param_descr, + get_help, }; typedef struct post_deinterlace_out_s post_deinterlace_out_t; diff --git a/src/post/planar/boxblur.c b/src/post/planar/boxblur.c index 1a161cbb4..5f0764239 100644 --- a/src/post/planar/boxblur.c +++ b/src/post/planar/boxblur.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: boxblur.c,v 1.8 2003/10/22 20:38:10 komadori Exp $ + * $Id: boxblur.c,v 1.9 2003/11/01 18:34:22 miguelfreitas Exp $ * * mplayer's boxblur * Copyright (C) 2002 Michael Niedermayer <michaelni@gmx.at> @@ -101,10 +101,22 @@ static xine_post_api_descr_t * get_param_descr (void) { return ¶m_descr; } +static char * get_help (void) { + return _("Box blur does a simple blurring of the image.\n" + "\n" + "Parameters\n" + " Radius: size of the filter\n" + " Power: how often the filter should be applied\n" + "\n" + "* mplayer's boxblur (C) 2002 Michael Niedermayer\n" + ); +} + static xine_post_api_t post_api = { set_parameters, get_parameters, get_param_descr, + get_help, }; typedef struct post_boxblur_out_s post_boxblur_out_t; diff --git a/src/post/planar/denoise3d.c b/src/post/planar/denoise3d.c index 6edeff291..dc5441486 100644 --- a/src/post/planar/denoise3d.c +++ b/src/post/planar/denoise3d.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: denoise3d.c,v 1.8 2003/10/22 20:38:10 komadori Exp $ + * $Id: denoise3d.c,v 1.9 2003/11/01 18:34:22 miguelfreitas Exp $ * * mplayer's denoise3d * Copyright (C) 2003 Daniel Moreno <comac@comac.darktech.org> @@ -134,10 +134,26 @@ static xine_post_api_descr_t * get_param_descr (void) { return ¶m_descr; } +static char * get_help (void) { + return _("This filter aims to reduce image noise producing smooth images and " + "making still images really still (This should enhance compressibility.). " + "It can be given from 0 to 3 parameters. If you omit a parameter, " + "a reasonable value will be inferred.\n" + "\n" + "Parameters\n" + " Luma: Spatial luma strength (default = 4)\n" + " Chroma: Spatial chroma strength (default = 3)\n" + " Time: Temporal strength (default = 6)\n" + "\n" + "* mplayer's denoise3d (C) 2003 Daniel Moreno\n" + ); +} + static xine_post_api_t post_api = { set_parameters, get_parameters, get_param_descr, + get_help, }; typedef struct post_denoise3d_out_s post_denoise3d_out_t; diff --git a/src/post/planar/eq.c b/src/post/planar/eq.c index 532785b66..be8deb704 100644 --- a/src/post/planar/eq.c +++ b/src/post/planar/eq.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: eq.c,v 1.7 2003/10/22 20:38:10 komadori Exp $ + * $Id: eq.c,v 1.8 2003/11/01 18:34:22 miguelfreitas Exp $ * * mplayer's eq (soft video equalizer) * Copyright (C) Richard Felker @@ -184,10 +184,27 @@ static xine_post_api_descr_t * get_param_descr (void) { return ¶m_descr; } +static char * get_help (void) { + return _("Software equalizer with interactive controls just like the hardware " + "equalizer, for cards/drivers that do not support brightness and " + "contrast controls in hardware.\n" + "\n" + "Parameters\n" + " brightness\n" + " contrast\n" + "\n" + "Note: It is possible to use frontend's control window to set " + "these parameters.\n" + "\n" + "* mplayer's eq (C) Richard Felker\n" + ); +} + static xine_post_api_t post_api = { set_parameters, get_parameters, get_param_descr, + get_help, }; typedef struct post_eq_out_s post_eq_out_t; diff --git a/src/post/planar/eq2.c b/src/post/planar/eq2.c index 289d726da..ee765f382 100644 --- a/src/post/planar/eq2.c +++ b/src/post/planar/eq2.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: eq2.c,v 1.9 2003/10/22 20:38:10 komadori Exp $ + * $Id: eq2.c,v 1.10 2003/11/01 18:34:22 miguelfreitas Exp $ * * mplayer's eq2 (soft video equalizer) * Software equalizer (brightness, contrast, gamma, saturation) @@ -356,10 +356,35 @@ static xine_post_api_descr_t * get_param_descr (void) { return ¶m_descr; } +static char * get_help (void) { + return _("Alternative software equalizer that uses lookup tables (very slow), " + "allowing gamma correction in addition to simple brightness, " + "contrast and saturation adjustment.\n" + "Note that it uses the same MMX optimized code as 'eq' if all " + "gamma values are 1.0.\n" + "\n" + "Parameters\n" + " gamma\n" + " brightness\n" + " contrast\n" + " saturation\n" + " rgamma (gamma for the red component)\n" + " ggamma (gamma for the green component)\n" + " bgamma (gamma for the blue component)\n" + "\n" + "Value ranges are 0.1 - 10 for gammas, -2 - 2 for contrast " + "(negative values result in a negative image), -1 - 1 for " + "brightness and 0 - 3 for saturation.\n" + "\n" + "* mplayer's eq2 (C) Hampa Hug, Daniel Moreno, Richard Felker\n" + ); +} + static xine_post_api_t post_api = { set_parameters, get_parameters, get_param_descr, + get_help, }; typedef struct post_eq2_out_s post_eq2_out_t; diff --git a/src/post/planar/expand.c b/src/post/planar/expand.c index a6db54208..db9436e51 100644 --- a/src/post/planar/expand.c +++ b/src/post/planar/expand.c @@ -144,6 +144,18 @@ void *expand_init_plugin(xine_t *xine, void *data) return class; } +static char * get_help (void) { + return _("The expand plugin is meant to take frames of arbitrary aspect ratio and " + "converts them to 4:3 aspect by adding black bars on the top and bottom " + "of the frame. This allows us to shift overlays down into the black area " + "so they don't cover the image.\n" + "\n" + "Parameters (FIXME: better help)\n" + " Enable_automatic_shift: Enable automatic overlay shifting\n" + " Overlay_y_offset: Manually shift the overlay vertically\n" + "\n" + ); +} static post_plugin_t *expand_open_plugin(post_class_t *class_gen, int inputs, xine_audio_port_t **audio_target, @@ -155,7 +167,7 @@ static post_plugin_t *expand_open_plugin(post_class_t *class_gen, int inputs, post_expand_out_t *output = (post_expand_out_t *)malloc(sizeof(post_expand_out_t)); post_video_port_t *port; static xine_post_api_t post_api = - { expand_set_parameters, expand_get_parameters, expand_get_param_descr }; + { expand_set_parameters, expand_get_parameters, expand_get_param_descr, get_help }; if (!this || !input || !input_param || !output || !video_target || !video_target[0]) { free(this); diff --git a/src/post/planar/unsharp.c b/src/post/planar/unsharp.c index 3c11945ef..64283b283 100644 --- a/src/post/planar/unsharp.c +++ b/src/post/planar/unsharp.c @@ -17,7 +17,7 @@ * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA * - * $Id: unsharp.c,v 1.8 2003/10/22 20:38:10 komadori Exp $ + * $Id: unsharp.c,v 1.9 2003/11/01 18:34:22 miguelfreitas Exp $ * * mplayer's unsharp * Copyright (C) 2002 Rémi Guyomarch <rguyom@pobox.com> @@ -222,10 +222,38 @@ static xine_post_api_descr_t * get_param_descr (void) { return ¶m_descr; } +static char * get_help (void) { + return _("Unsharp mask / gaussian blur\n" + "It is possible to set the width and height of the matrix, " + "odd sized in both directions (min = 3x3, max = 13x11 or 11x13, " + "usually something between 3x3 and 7x7) and the relative amount " + "of sharpness/blur to add to the image (a sane range should be " + "-1.5 - 1.5).\n" + "\n" + "Parameters\n" + "\n" + " Luma_matrix_width: Width of the matrix (must be odd)\n" + "\n" + " Luma_matrix_height: Height of the matrix (must be odd)\n" + "\n" + " Luma_amount: Relative amount of sharpness/blur (=0 disable, <0 blur, >0 sharpen)\n" + "\n" + " Chroma_matrix_width: Width of the matrix (must be odd)\n" + "\n" + " Chroma_matrix_height: Height of the matrix (must be odd)\n" + "\n" + " Chroma_amount: Relative amount of sharpness/blur (=0 disable, <0 blur, >0 sharpen)\n" + "\n" + "\n" + "* mplayer's unsharp (C) 2002 Rémi Guyomarch\n" + ); +} + static xine_post_api_t post_api = { set_parameters, get_parameters, get_param_descr, + get_help, }; typedef struct post_unsharp_out_s post_unsharp_out_t; |