Revision: 26162
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=26162
Author:   aligorith
Date:     2010-01-21 11:28:19 +0100 (Thu, 21 Jan 2010)

Log Message:
-----------
Patch #20693:  add parameters for FPS and wait timer for screen cast

This patch by Guillaume Lecocq (lguillaume) adds user preference settings for 
setting the playback frame-rate and delay between captured frames for the 
screencasting feature. 

-- 

I've made a few tweaks for a few minor issues
- Made DNA vars for these settings shorts instead of ints, reducing the number 
of unnecessary extra pad vars 
- Added version patching to ensure that these settings are initialised by 
default
- Made tooltips for the settings more descriptive

Modified Paths:
--------------
    trunk/blender/release/scripts/ui/space_userpref.py
    trunk/blender/source/blender/editors/interface/resources.c
    trunk/blender/source/blender/editors/screen/screendump.c
    trunk/blender/source/blender/makesdna/DNA_userdef_types.h
    trunk/blender/source/blender/makesrna/intern/rna_userdef.c

Modified: trunk/blender/release/scripts/ui/space_userpref.py
===================================================================
--- trunk/blender/release/scripts/ui/space_userpref.py  2010-01-21 10:19:54 UTC 
(rev 26161)
+++ trunk/blender/release/scripts/ui/space_userpref.py  2010-01-21 10:28:19 UTC 
(rev 26162)
@@ -416,6 +416,13 @@
         col.separator()
         col.separator()
         col.separator()
+        
+        col.label(text="Screencast:")
+        col.prop(system, "screencast_fps")
+        col.prop(system, "screencast_wait_time")     
+        col.separator()
+        col.separator()
+        col.separator()
 
         #column = split.column()
         #colsplit = column.split(percentage=0.85)

Modified: trunk/blender/source/blender/editors/interface/resources.c
===================================================================
--- trunk/blender/source/blender/editors/interface/resources.c  2010-01-21 
10:19:54 UTC (rev 26161)
+++ trunk/blender/source/blender/editors/interface/resources.c  2010-01-21 
10:28:19 UTC (rev 26162)
@@ -1373,6 +1373,10 @@
        if (U.anim_player_preset == 0) {
                U.anim_player_preset =1 ;
        }
+       if (U.scrcastfps == 0) {
+               U.scrcastfps = 10;
+               U.scrcastwait = 50;
+       }
 
        /* funny name, but it is GE stuff, moves userdef stuff to engine */
 // XXX space_set_commmandline_options();

Modified: trunk/blender/source/blender/editors/screen/screendump.c
===================================================================
--- trunk/blender/source/blender/editors/screen/screendump.c    2010-01-21 
10:19:54 UTC (rev 26161)
+++ trunk/blender/source/blender/editors/screen/screendump.c    2010-01-21 
10:28:19 UTC (rev 26162)
@@ -38,6 +38,7 @@
 #include "DNA_scene_types.h"
 #include "DNA_screen_types.h"
 #include "DNA_space_types.h"
+#include "DNA_userdef_types.h"
 
 #include "BKE_context.h"
 #include "BKE_global.h"
@@ -226,7 +227,7 @@
        int cfra= 1;
        
        /* we need this as local variables for renderdata */
-       rd.frs_sec= 10;
+       rd.frs_sec= U.scrcastfps;
        rd.frs_sec_base= 1.0f;
        
        if(BKE_imtype_is_movie(rd.imtype)) {
@@ -279,9 +280,10 @@
                        *do_update= 1;
                        
                        cfra++;
+
                }
                else 
-                       PIL_sleep_ms(50);
+                       PIL_sleep_ms(U.scrcastwait);
        }
        
        if(mh)

Modified: trunk/blender/source/blender/makesdna/DNA_userdef_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_userdef_types.h   2010-01-21 
10:19:54 UTC (rev 26161)
+++ trunk/blender/source/blender/makesdna/DNA_userdef_types.h   2010-01-21 
10:28:19 UTC (rev 26162)
@@ -341,8 +341,11 @@
        short ndof_pan, ndof_rotate;
        short curssize, ipo_new;
        short color_picker_type;
-       short pad2[3];
+       short pad2;
 
+       short scrcastfps;               /* frame rate for screencast to be 
played back */
+       short scrcastwait;              /* milliseconds between screencast 
snapshots */
+
        char versemaster[160];
        char verseuser[160];
        float glalphaclip;

Modified: trunk/blender/source/blender/makesrna/intern/rna_userdef.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_userdef.c  2010-01-21 
10:19:54 UTC (rev 26161)
+++ trunk/blender/source/blender/makesrna/intern/rna_userdef.c  2010-01-21 
10:28:19 UTC (rev 26162)
@@ -2322,6 +2322,16 @@
        RNA_def_property_ui_text(prop, "Audio Channels", "Sets the audio 
channel count.");
        RNA_def_property_update(prop, 0, "rna_UserDef_audio_update");
 
+       prop= RNA_def_property(srna, "screencast_fps", PROP_INT, PROP_NONE);
+       RNA_def_property_int_sdna(prop, NULL, "scrcastfps");
+       RNA_def_property_range(prop, 10, 50);
+       RNA_def_property_ui_text(prop, "FPS", "Frame rate for the screencast to 
be played back.");
+
+       prop= RNA_def_property(srna, "screencast_wait_time", PROP_INT, 
PROP_NONE);
+       RNA_def_property_int_sdna(prop, NULL, "scrcastwait");
+       RNA_def_property_range(prop, 50, 1000);
+       RNA_def_property_ui_text(prop, "Wait Timer (ms)", "Time in milliseconds 
between each frame recorded for screencast.");
+
 #if 0
        prop= RNA_def_property(srna, "verse_master", PROP_STRING, PROP_NONE);
        RNA_def_property_string_sdna(prop, NULL, "versemaster");


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to