Lines Matching refs:scenechange

138 gst_scene_change_init (GstSceneChange * scenechange)  in gst_scene_change_init()  argument
171 GstSceneChange *scenechange = GST_SCENE_CHANGE (filter); in gst_scene_change_transform_frame_ip() local
181 GST_DEBUG_OBJECT (scenechange, "transform_frame_ip"); in gst_scene_change_transform_frame_ip()
183 if (!scenechange->oldbuf) { in gst_scene_change_transform_frame_ip()
184 scenechange->n_diffs = 0; in gst_scene_change_transform_frame_ip()
185 memset (scenechange->diffs, 0, sizeof (double) * SC_N_DIFFS); in gst_scene_change_transform_frame_ip()
186 scenechange->oldbuf = gst_buffer_ref (frame->buffer); in gst_scene_change_transform_frame_ip()
187 memcpy (&scenechange->oldinfo, &frame->info, sizeof (GstVideoInfo)); in gst_scene_change_transform_frame_ip()
192 gst_video_frame_map (&oldframe, &scenechange->oldinfo, in gst_scene_change_transform_frame_ip()
193 scenechange->oldbuf, GST_MAP_READ); in gst_scene_change_transform_frame_ip()
195 GST_ERROR_OBJECT (scenechange, "failed to map old video frame"); in gst_scene_change_transform_frame_ip()
203 gst_buffer_unref (scenechange->oldbuf); in gst_scene_change_transform_frame_ip()
204 scenechange->oldbuf = gst_buffer_ref (frame->buffer); in gst_scene_change_transform_frame_ip()
205 memcpy (&scenechange->oldinfo, &frame->info, sizeof (GstVideoInfo)); in gst_scene_change_transform_frame_ip()
207 memmove (scenechange->diffs, scenechange->diffs + 1, in gst_scene_change_transform_frame_ip()
209 scenechange->diffs[SC_N_DIFFS - 1] = score; in gst_scene_change_transform_frame_ip()
210 scenechange->n_diffs++; in gst_scene_change_transform_frame_ip()
212 score_min = scenechange->diffs[0]; in gst_scene_change_transform_frame_ip()
213 score_max = scenechange->diffs[0]; in gst_scene_change_transform_frame_ip()
215 score_min = MIN (score_min, scenechange->diffs[i]); in gst_scene_change_transform_frame_ip()
216 score_max = MAX (score_max, scenechange->diffs[i]); in gst_scene_change_transform_frame_ip()
221 if (scenechange->n_diffs > (SC_N_DIFFS - 1)) { in gst_scene_change_transform_frame_ip()
227 && (score / scenechange->diffs[SC_N_DIFFS - 2] > 1.4)) { in gst_scene_change_transform_frame_ip()
241 memset (scenechange->diffs, 0, sizeof (double) * SC_N_DIFFS); in gst_scene_change_transform_frame_ip()
242 scenechange->n_diffs = 0; in gst_scene_change_transform_frame_ip()
245 if (change != is_shot_change (scenechange->n_diffs)) { in gst_scene_change_transform_frame_ip()
246 g_print ("%d %g %g %g %d\n", scenechange->n_diffs, score / threshold, in gst_scene_change_transform_frame_ip()
254 GST_INFO_OBJECT (scenechange, "%d %g %g %g %d", in gst_scene_change_transform_frame_ip()
255 scenechange->n_diffs, score / threshold, score, threshold, change); in gst_scene_change_transform_frame_ip()
260 scenechange->count++); in gst_scene_change_transform_frame_ip()
262 gst_pad_push_event (GST_BASE_TRANSFORM_SRC_PAD (scenechange), event); in gst_scene_change_transform_frame_ip()