| Top |
| struct | GstVideoResampler |
| enum | GstVideoResamplerFlags |
| enum | GstVideoResamplerMethod |
| #define | GST_VIDEO_RESAMPLER_OPT_CUBIC_B |
| #define | GST_VIDEO_RESAMPLER_OPT_CUBIC_C |
| #define | GST_VIDEO_RESAMPLER_OPT_ENVELOPE |
| #define | GST_VIDEO_RESAMPLER_OPT_MAX_TAPS |
| #define | GST_VIDEO_RESAMPLER_OPT_SHARPEN |
| #define | GST_VIDEO_RESAMPLER_OPT_SHARPNESS |
GstVideoResampler is a structure which holds the information required to perform various kinds of resampling filtering.
void
gst_video_resampler_clear (GstVideoResampler *resampler);
Clear a previously initialized GstVideoResampler resampler
.
Since: 1.6
gboolean gst_video_resampler_init (GstVideoResampler *resampler,GstVideoResamplerMethod method,GstVideoResamplerFlags flags,guint n_phases,guint n_taps,gdouble shift,guint in_size,guint out_size,GstStructure *options);
struct GstVideoResampler {
gint in_size;
gint out_size;
guint max_taps;
guint n_phases;
guint32 *offset;
guint32 *phase;
guint32 *n_taps;
gdouble *taps;
};
A structure holding resampler information.
gint |
the input size |
|
gint |
the output size |
|
guint |
the maximum number of taps |
|
guint |
the number of phases |
|
array with the source offset for each output element |
||
array with the phase to use for each output element |
||
array with new number of taps for each phase |
||
gdouble * |
the taps for all phases |
Since: 1.6
Different subsampling and upsampling methods
|
Duplicates the samples when upsampling and drops when downsampling |
||
|
Uses linear interpolation to reconstruct missing samples and averaging to downsample |
||
|
Uses cubic interpolation |
||
|
Uses sinc interpolation |
||
|
Uses lanczos interpolation |
Since: 1.6
#define GST_VIDEO_RESAMPLER_OPT_CUBIC_B "GstVideoResampler.cubic-b"
G_TYPE_DOUBLE, B parameter of the cubic filter. The B parameter controls the bluriness. Values between 0.0 and 2.0 are accepted. 1/3 is the default.
Below are some values of popular filters: B C Hermite 0.0 0.0 Spline 1.0 0.0 Catmull-Rom 0.0 1/2 Mitchell 1/3 1/3 Robidoux 0.3782 0.3109 Robidoux Sharp 0.2620 0.3690 Robidoux Soft 0.6796 0.1602
#define GST_VIDEO_RESAMPLER_OPT_CUBIC_C "GstVideoResampler.cubic-c"
G_TYPE_DOUBLE, C parameter of the cubic filter. The C parameter controls the Keys alpha value. Values between 0.0 and 2.0 are accepted. 1/3 is the default.
See GST_VIDEO_RESAMPLER_OPT_CUBIC_B for some more common values
#define GST_VIDEO_RESAMPLER_OPT_ENVELOPE "GstVideoResampler.envelope"
G_TYPE_DOUBLE, specifies the size of filter envelope for
GST_VIDEO_RESAMPLER_METHOD_LANCZOS
. values are clamped between
1.0 and 5.0. 2.0 is the default.
#define GST_VIDEO_RESAMPLER_OPT_MAX_TAPS "GstVideoResampler.max-taps"
G_TYPE_INT, limits the maximum number of taps to use. 16 is the default.
#define GST_VIDEO_RESAMPLER_OPT_SHARPEN "GstVideoResampler.sharpen"
G_TYPE_DOUBLE, specifies sharpening of the filter for
GST_VIDEO_RESAMPLER_METHOD_LANCZOS
. values are clamped between
0.0 and 1.0. 0.0 is the default.