#undef WRITE_UV
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
/*****************************************************************************
#undef WRITE_UV
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
static int AdjustCallback( vlc_object_t *p_this, char const *psz_var,
p_out_v++;
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
#include <vlc_plugin.h>
#include <vlc_vout.h>
#include "vlc_filter.h"
+#include "filter_picture.h"
/****************************************************************************
* Local prototypes
( i_outheight - i_ypadd - i_height ) * p_outplane->i_pitch );
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
#include "vlc_image.h"
#include "vlc_filter.h"
+#include "filter_picture.h"
/*****************************************************************************
* Local prototypes
/* Here */
FilterErase( p_filter, p_pic, p_outpic );
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
/*****************************************************************************
return NULL;
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
static inline uint8_t crop( int a )
/*****************************************************************************
*
*****************************************************************************/
-static inline picture_t *CopyMetaAndRelease( picture_t *p_outpic, picture_t *p_inpic )
+static inline picture_t *CopyInfoAndRelease( picture_t *p_outpic, picture_t *p_inpic )
{
p_outpic->date = p_inpic->date;
p_outpic->b_force = p_inpic->b_force;
#include <vlc_vout.h>
#include "vlc_filter.h"
+#include "filter_picture.h"
#include <math.h> /* exp(), sqrt() */
}
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
break;
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
/*****************************************************************************
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
#include <vlc_vout.h>
#include "vlc_filter.h"
+#include "filter_picture.h"
/*****************************************************************************
* Local prototypes
}
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
#include <vlc_sout.h>
#include <vlc_vout.h>
#include <vlc_filter.h>
+#include "filter_picture.h"
/*****************************************************************************
* Local protypes
free( p_filter->p_sys );
}
-#define RELEASE( pic ) \
- if( pic ->pf_release ) \
- pic ->pf_release( pic );
-
-#define INITPIC( dst, src ) \
- dst ->date = src ->date; \
- dst ->b_force = src ->b_force; \
- dst ->i_nb_fields = src ->i_nb_fields; \
- dst ->b_progressive = src->b_progressive; \
- dst ->b_top_field_first = src ->b_top_field_first;
-
/*****************************************************************************
* Filter
*****************************************************************************/
if( !p_outpic )
{
msg_Warn( p_filter, "can't get output picture" );
- RELEASE( p_pic );
+ if( p_pic->pf_release )
+ p_pic->pf_release( p_pic );
return NULL;
}
- INITPIC( p_outpic, p_pic );
if( !p_sys->pp_planes )
{
RenderBlur( p_sys, p_pic, p_outpic );
Copy( p_filter, p_outpic );
- RELEASE( p_pic );
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
/*****************************************************************************
#include <vlc_vout.h>
#include "vlc_filter.h"
+#include "filter_picture.h"
/*****************************************************************************
* Local prototypes
}
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
#include "vlc_filter.h"
#include "vlc_image.h"
+#include "filter_picture.h"
/*****************************************************************************
* Local prototypes
p_filter->p_sys->v += 1;
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
#include <vlc_plugin.h>
#include <vlc_vout.h>
#include <vlc_filter.h>
+#include "filter_picture.h"
/*****************************************************************************
* Local prototypes
}
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
}
}
- return CopyMetaAndRelease( p_outpic, p_pic );
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
/*****************************************************************************
}
}
- return CopyMetaAndRelease( p_outpic, p_pic );
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
/*****************************************************************************
#include <vlc_vout.h>
#include "vlc_filter.h"
+#include "filter_picture.h"
#include <assert.h>
FilterSeamCarving( p_filter, p_pic, p_outpic );
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
static inline int my_min3( int a, int b, int c );
#include <vlc_vout.h>
#include "vlc_filter.h"
+#include "filter_picture.h"
#define SIG_TEXT N_("Sharpen strength (0-2)")
#define SIG_LONGTEXT N_("Set the Sharpen strength, between 0 and 2. Defaults to 0.05.")
static void init_precalc_table(filter_sys_t *p_filter)
{
float sigma = p_filter->f_sigma;
-
+
for(int i = 0; i < 512; ++i)
{
p_filter->tab_precalc[i] = (i - 256) * sigma;
p_outpic->p[V_PLANE].i_lines * p_outpic->p[V_PLANE].i_pitch );
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}
static int SharpenCallback( vlc_object_t *p_this, char const *psz_var,
#include <vlc_vout.h>
#include "vlc_filter.h"
+#include "filter_picture.h"
/*****************************************************************************
* Local prototypes
}
}
- p_outpic->date = p_pic->date;
- p_outpic->b_force = p_pic->b_force;
- p_outpic->i_nb_fields = p_pic->i_nb_fields;
- p_outpic->b_progressive = p_pic->b_progressive;
- p_outpic->b_top_field_first = p_pic->b_top_field_first;
-
- if( p_pic->pf_release )
- p_pic->pf_release( p_pic );
-
- return p_outpic;
+ return CopyInfoAndRelease( p_outpic, p_pic );
}