@@ -779,10 +779,10 @@ class StableDiffusionGGML {
779779 const std::vector<float >& sigmas,
780780 int start_merge_step,
781781 SDCondition id_cond,
782- std::vector<int > skip_layers = {},
783- float slg_scale = 0 ,
784- float skip_layer_start = 0.01 ,
785- float skip_layer_end = 0.2 ,
782+ std::vector<int > skip_layers = {},
783+ float slg_scale = 0 ,
784+ float skip_layer_start = 0.01 ,
785+ float skip_layer_end = 0.2 ,
786786 std::function<void (int , ggml_tensor*, SDVersion)> step_callback = nullptr) {
787787 size_t steps = sigmas.size () - 1 ;
788788 // noise = load_tensor_from_file(work_ctx, "./rand0.bin");
@@ -1165,10 +1165,10 @@ sd_image_t* generate_image(sd_ctx_t* sd_ctx,
11651165 float style_ratio,
11661166 bool normalize_input,
11671167 std::string input_id_images_path,
1168- std::vector<int > skip_layers = {},
1169- float slg_scale = 0 ,
1170- float skip_layer_start = 0.01 ,
1171- float skip_layer_end = 0.2 ,
1168+ std::vector<int > skip_layers = {},
1169+ float slg_scale = 0 ,
1170+ float skip_layer_start = 0.01 ,
1171+ float skip_layer_end = 0.2 ,
11721172 std::function<void (int , ggml_tensor*, SDVersion)> step_callback = nullptr) {
11731173 if (seed < 0 ) {
11741174 // Generally, when using the provided command line, the seed is always >0.
@@ -1464,7 +1464,7 @@ sd_image_t* txt2img(sd_ctx_t* sd_ctx,
14641464 float slg_scale = 0 ,
14651465 float skip_layer_start = 0.01 ,
14661466 float skip_layer_end = 0.2 ,
1467- step_callback_t step_callback) {
1467+ step_callback_t step_callback = NULL ) {
14681468 std::vector<int > skip_layers_vec (skip_layers, skip_layers + skip_layers_count);
14691469 LOG_DEBUG (" txt2img %dx%d" , width, height);
14701470 if (sd_ctx == NULL ) {
@@ -1570,7 +1570,8 @@ sd_image_t* img2img(sd_ctx_t* sd_ctx,
15701570 size_t skip_layers_count = 0 ,
15711571 float slg_scale = 0 ,
15721572 float skip_layer_start = 0.01 ,
1573- float skip_layer_end = 0.2 ) {
1573+ float skip_layer_end = 0.2 ,
1574+ step_callback_t step_callback = NULL ) {
15741575 std::vector<int > skip_layers_vec (skip_layers, skip_layers + skip_layers_count);
15751576 LOG_DEBUG (" img2img %dx%d" , width, height);
15761577 if (sd_ctx == NULL ) {
@@ -1649,7 +1650,8 @@ sd_image_t* img2img(sd_ctx_t* sd_ctx,
16491650 skip_layers_vec,
16501651 slg_scale,
16511652 skip_layer_start,
1652- skip_layer_end);
1653+ skip_layer_end,
1654+ step_callback);
16531655
16541656 size_t t2 = ggml_time_ms ();
16551657
@@ -1671,7 +1673,8 @@ SD_API sd_image_t* img2vid(sd_ctx_t* sd_ctx,
16711673 enum sample_method_t sample_method,
16721674 int sample_steps,
16731675 float strength,
1674- int64_t seed) {
1676+ int64_t seed,
1677+ step_callback_t step_callback = NULL ) {
16751678 if (sd_ctx == NULL ) {
16761679 return NULL ;
16771680 }
@@ -1750,7 +1753,10 @@ SD_API sd_image_t* img2vid(sd_ctx_t* sd_ctx,
17501753 sample_method,
17511754 sigmas,
17521755 -1 ,
1753- SDCondition (NULL , NULL , NULL ));
1756+ SDCondition (NULL , NULL , NULL ),
1757+ {},
1758+ 0 , 0 , 0 ,
1759+ step_callback);
17541760
17551761 int64_t t2 = ggml_time_ms ();
17561762 LOG_INFO (" sampling completed, taking %.2fs" , (t2 - t1) * 1 .0f / 1000 );
0 commit comments