}
static gboolean
-_upload_frames (GstAggregator * agg, GstAggregatorPad * agg_pad,
+gst_gl_mixer_upload_frames (GstElement * element, GstPad * sink_pad,
gpointer user_data)
{
- GstVideoAggregatorPad *vaggpad = GST_VIDEO_AGGREGATOR_PAD (agg_pad);
- GstGLMixerPad *pad = GST_GL_MIXER_PAD (agg_pad);
- GstGLMixer *mix = GST_GL_MIXER (agg);
+ GstVideoAggregatorPad *vaggpad = GST_VIDEO_AGGREGATOR_PAD (sink_pad);
+ GstGLMixerPad *pad = GST_GL_MIXER_PAD (sink_pad);
+ GstGLMixer *mix = GST_GL_MIXER (element);
pad->current_texture = 0;
if (vaggpad->buffer != NULL) {
if (!gst_video_frame_map (&gl_frame, &gl_info, vaggpad->buffer,
GST_MAP_READ | GST_MAP_GL)) {
- GST_ERROR_OBJECT (agg_pad, "Failed to map input frame");
+ GST_ERROR_OBJECT (pad, "Failed to map input frame");
return FALSE;
}
out_tex = (GstGLMemory *) out_frame.map[0].memory;
- if (!gst_aggregator_iterate_sinkpads (GST_AGGREGATOR (mix),
- (GstAggregatorPadForeachFunc) _upload_frames, NULL)) {
+ if (!gst_element_foreach_sink_pad (GST_ELEMENT_CAST (mix),
+ gst_gl_mixer_upload_frames, NULL)) {
res = FALSE;
goto out;
}
}
static gboolean
-_reset_pad_gl (GstAggregator * agg, GstAggregatorPad * aggpad, gpointer udata)
+_reset_pad_gl (GstElement * agg, GstPad * aggpad, gpointer udata)
{
const GstGLFuncs *gl = GST_GL_BASE_MIXER (agg)->context->gl_vtable;
GstGLVideoMixerPad *pad = GST_GL_VIDEO_MIXER_PAD (aggpad);
video_mixer->checker_vbo = 0;
}
- gst_aggregator_iterate_sinkpads (GST_AGGREGATOR (video_mixer), _reset_pad_gl,
- NULL);
+ gst_element_foreach_sink_pad (GST_ELEMENT (video_mixer), _reset_pad_gl, NULL);
}
static void