Cleanup "Sync Mode" (i.e. Av Sync/Framedropping) stuff
authorJoshua Leung <aligorith@gmail.com>
Thu, 3 May 2018 16:50:53 +0000 (18:50 +0200)
committerJoshua Leung <aligorith@gmail.com>
Thu, 3 May 2018 16:50:53 +0000 (18:50 +0200)
* Remove the "sync_mode" dropdown from timeline header, and move it into
  the Playback menu instead.
* Remove the confusing "Frame Dropping" and "AV Sync" entries from the
  Playback menu. These were supposed to be mutually exclusive (or else,
  the "sync_mode" menu would break).
* Turn AV Sync on by default
* Commented out the Frame Dropping and Av Sync RNA Properties too.
  THere doesn't seem to be any valid reason for these to exist?

release/scripts/startup/bl_ui/space_time.py
source/blender/blenkernel/intern/scene.c
source/blender/blenloader/intern/versioning_defaults.c
source/blender/makesrna/intern/rna_scene.c

index a1f0f5a7cc8afac8c3cbeeab79b8e9b6d2bb4d2a..6710ed634b91d2c01488f96cdf19912c7c715182 100644 (file)
@@ -77,8 +77,6 @@ class TIME_HT_editor_buttons(Header):
         row.operator("screen.keyframe_jump", text="", icon='NEXT_KEYFRAME').next = True
         row.operator("screen.frame_jump", text="", icon='FF').end = True
 
-        layout.prop(scene, "sync_mode", text="")
-
         layout.separator()
 
         row = layout.row(align=True)
@@ -218,10 +216,9 @@ class TIME_MT_playback(Menu):
         layout.prop(screen, "use_follow")
         layout.separator()
 
-        layout.prop(scene, "use_frame_drop", text="Frame Dropping")
-        layout.prop(scene, "use_audio_sync", text="AV-sync", icon='SPEAKER')
         layout.prop(scene, "use_audio")
         layout.prop(scene, "use_audio_scrub")
+        layout.prop_menu_enum(scene, "sync_mode")
 
 
 class TIME_MT_autokey(Menu):
index f3f08aec3cdc37751006c10dc7e08df6a6d20a46..a11c7320da599fd9cc5fbff7f957c1e779d222cf 100644 (file)
@@ -717,6 +717,7 @@ void BKE_scene_init(Scene *sce)
        sce->audio.doppler_factor = 1.0f;
        sce->audio.speed_of_sound = 343.3f;
        sce->audio.volume = 1.0f;
+       sce->audio.flag = AUDIO_SYNC;
 
        BLI_strncpy(sce->r.pic, U.renderdir, sizeof(sce->r.pic));
 
index 1e27ab64f482f586250218c402401d8b3c4aade5..3211ed4fc111c0615b2b61c7deef6da3eaf88e82 100644 (file)
@@ -210,6 +210,11 @@ void BLO_update_defaults_startup_blend(Main *bmain)
                }
 
                scene->r.ffcodecdata.audio_mixrate = 48000;
+               
+               /* set av sync by default */
+               printf("setting new default audio\n");
+               scene->audio.flag |= AUDIO_SYNC;
+               scene->flag &= ~SCE_FRAME_DROP;
        }
 
        for (FreestyleLineStyle *linestyle = bmain->linestyle.first; linestyle; linestyle = linestyle->id.next) {
index 1fb4e2d8b573c47c5c83bae7ad0ec459322a4f30..b93c3cf1dc685c670320fbf9f131ef71b0b470a2 100644 (file)
@@ -5864,14 +5864,17 @@ void RNA_def_scene(BlenderRNA *brna)
        RNA_def_property_update(prop, NC_SPACE | ND_SPACE_GRAPH, NULL);
        
        /* Frame dropping flag for playback and sync enum */
+#if 0 /* XXX: Is this actually needed? */
        prop = RNA_def_property(srna, "use_frame_drop", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "flag", SCE_FRAME_DROP);
        RNA_def_property_ui_text(prop, "Frame Dropping", "Play back dropping frames if frame display is too slow");
        RNA_def_property_update(prop, NC_SCENE, NULL);
+#endif
 
        prop = RNA_def_property(srna, "sync_mode", PROP_ENUM, PROP_NONE);
        RNA_def_property_enum_funcs(prop, "rna_Scene_sync_mode_get", "rna_Scene_sync_mode_set", NULL);
        RNA_def_property_enum_items(prop, sync_mode_items);
+       RNA_def_property_enum_default(prop, AUDIO_SYNC);
        RNA_def_property_ui_text(prop, "Sync Mode", "How to sync playback");
        RNA_def_property_update(prop, NC_SCENE, NULL);
 
@@ -6007,11 +6010,13 @@ void RNA_def_scene(BlenderRNA *brna)
        RNA_def_property_ui_text(prop, "Audio Muted", "Play back of audio from Sequence Editor will be muted");
        RNA_def_property_update(prop, NC_SCENE, NULL);
 
+#if 0 /* XXX: Is this actually needed? */
        prop = RNA_def_property(srna, "use_audio_sync", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "audio.flag", AUDIO_SYNC);
        RNA_def_property_ui_text(prop, "Audio Sync",
                                 "Play back and sync with audio clock, dropping frames if frame display is too slow");
        RNA_def_property_update(prop, NC_SCENE, NULL);
+#endif
 
        prop = RNA_def_property(srna, "use_audio_scrub", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_boolean_sdna(prop, NULL, "audio.flag", AUDIO_SCRUB);