[gst-cvs] CVS: gstreamer/gst gstdparammanager.c,1.7,1.8
Steve Baker
sbaker3 at users.sourceforge.net
Mon Sep 17 12:16:17 PDT 2001
Update of /cvsroot/gstreamer/gstreamer/gst
In directory usw-pr-cvs1:/tmp/cvs-serv20593
Modified Files:
gstdparammanager.c
Log Message:
init the values when the state hits playing so that we don't do dum things like log(0)
Index: gstdparammanager.c
===================================================================
RCS file: /cvsroot/gstreamer/gstreamer/gst/gstdparammanager.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- gstdparammanager.c 2001/09/16 16:39:02 1.7
+++ gstdparammanager.c 2001/09/17 19:15:53 1.8
@@ -540,23 +540,27 @@
GSList *dwraps;
GstDParam *dparam;
GstDParamWrapper *dpwrap;
-
- if (state == GST_STATE_PLAYING) return;
- GST_DEBUG(GST_CAT_PARAMS, "initialising params\n");
-
+
g_return_if_fail (dpman != NULL);
g_return_if_fail (GST_IS_DPMAN (dpman));
-
- // force all params to be updated
- dwraps = GST_DPMAN_DPARAMS_LIST(dpman);
- while (dwraps){
- dpwrap = (GstDParamWrapper*)dwraps->data;
- dparam = dpwrap->dparam;
-
- if (dparam){
- GST_DPARAM_READY_FOR_UPDATE(dparam) = TRUE;
+
+ if (state == GST_STATE_PLAYING){
+ GST_DEBUG(GST_CAT_PARAMS, "initialising params\n");
+
+ // force all params to be updated
+ dwraps = GST_DPMAN_DPARAMS_LIST(dpman);
+ while (dwraps){
+ dpwrap = (GstDParamWrapper*)dwraps->data;
+ dparam = dpwrap->dparam;
+
+ if (dparam){
+ GST_DPARAM_READY_FOR_UPDATE(dparam) = TRUE;
+ if (dparam->spec){
+ g_value_copy(dparam->spec->default_val, GST_DPARAM_VALUE(dparam));
+ }
+ }
+ dwraps = g_slist_next(dwraps);
}
- dwraps = g_slist_next(dwraps);
}
}
More information about the Gstreamer-commits
mailing list