gimp-gap r751 - in trunk: . gap vid_enc_single



Author: wolfgangh
Date: Sun May 18 16:39:04 2008
New Revision: 751
URL: http://svn.gnome.org/viewvc/gimp-gap?rev=751&view=rev

Log:
applied fixes (bug531735, save jpeg frameswith singleframes encoder, Storyboar support 8digit numbers)

Modified:
   trunk/ChangeLog
   trunk/gap/gap_lib.c
   trunk/gap/gap_mov_exec.c
   trunk/gap/gap_story_file.c
   trunk/gap/gap_story_file.h
   trunk/gap/gap_story_properties.c
   trunk/vid_enc_single/gap_enc_singleframes_main.c

Modified: trunk/gap/gap_lib.c
==============================================================================
--- trunk/gap/gap_lib.c	(original)
+++ trunk/gap/gap_lib.c	Sun May 18 16:39:04 2008
@@ -2108,7 +2108,7 @@
 
   l_rc   = FALSE;
 
-  //if(gap_debug)
+  if(gap_debug)
   {
     printf("DEBUG: p_lib_save_jpg_non_interactive: '%s' imageId:%d, drawableID:%d\n"
            "  jpg quality:%f\n"

Modified: trunk/gap/gap_mov_exec.c
==============================================================================
--- trunk/gap/gap_mov_exec.c	(original)
+++ trunk/gap/gap_mov_exec.c	Sun May 18 16:39:04 2008
@@ -1361,6 +1361,8 @@
     return(-1);
   }
 
+  gimp_image_undo_enable (l_mlayer_image_id);
+
   /* add a display for the animated preview multilayer image */
   gimp_display_new(l_mlayer_image_id);
 

Modified: trunk/gap/gap_story_file.c
==============================================================================
--- trunk/gap/gap_story_file.c	(original)
+++ trunk/gap/gap_story_file.c	Sun May 18 16:39:04 2008
@@ -58,6 +58,7 @@
 #define MAX_CHARS_ERRORTEXT_GUI   50
 #define MAX_TOLERATED_UNPRINTABLE_CHARACTERS 500
 
+
   typedef enum
   {
     GAP_STB_DUPLICATE_ALL_ELEMS,
@@ -3560,8 +3561,8 @@
       stb_elem->orig_src_line = g_strdup(multi_lines);
 
       if(*l_track_ptr)    { stb_elem->track      = p_scan_gint32(l_track_ptr,   1, GAP_STB_MAX_VID_TRACKS, stb); }
-      if(*l_from_ptr)     { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    0, 999999, stb); }
-      if(*l_to_ptr)       { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      0, 999999, stb); }
+      if(*l_from_ptr)     { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    0, GAP_STB_MAX_FRAMENR, stb); }
+      if(*l_to_ptr)       { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      0, GAP_STB_MAX_FRAMENR, stb); }
       if(*l_basename_ptr) { p_flip_dir_separators(l_basename_ptr);
                             stb_elem->basename = g_strdup(l_basename_ptr);
                           }
@@ -3631,8 +3632,8 @@
       if(*l_filename_ptr) { p_flip_dir_separators(l_filename_ptr);
                             stb_elem->orig_filename = g_strdup(l_filename_ptr);
                           }
-      if(*l_from_ptr)     { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    1, 999999, stb); }
-      if(*l_to_ptr)       { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      1, 999999, stb); }
+      if(*l_from_ptr)     { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    1, GAP_STB_MAX_FRAMENR, stb); }
+      if(*l_to_ptr)       { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      1, GAP_STB_MAX_FRAMENR, stb); }
 
       if(*l_seltrack_ptr)   { stb_elem->seltrack     = p_scan_gint32(l_seltrack_ptr,  1, 999999, stb); }
       if(*l_exact_seek_ptr) { stb_elem->exact_seek   = p_scan_gint32(l_exact_seek_ptr,  0, 1, stb); }
@@ -3708,8 +3709,8 @@
       if(*l_track_ptr)    { stb_elem->track      = p_scan_gint32(l_track_ptr, 1, GAP_STB_MAX_VID_TRACKS, stb); }
       if(*l_section_ptr)  { stb_elem->orig_filename = g_strdup(l_section_ptr);
                           }
-      if(*l_from_ptr)     { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    1, 999999, stb); }
-      if(*l_to_ptr)       { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      1, 999999, stb); }
+      if(*l_from_ptr)     { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    1, GAP_STB_MAX_FRAMENR, stb); }
+      if(*l_to_ptr)       { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      1, GAP_STB_MAX_FRAMENR, stb); }
 
       p_assign_parsed_video_values(stb_elem, stb
           , l_nloops_ptr
@@ -3808,8 +3809,8 @@
       if(*l_filename_ptr) { p_flip_dir_separators(l_filename_ptr);
                             stb_elem->orig_filename = g_strdup(l_filename_ptr);
                           }
-      if(*l_from_ptr)     { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    0, 999999, stb); }
-      if(*l_to_ptr)       { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      0, 999999, stb); }
+      if(*l_from_ptr)     { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    0, GAP_STB_MAX_FRAMENR, stb); }
+      if(*l_to_ptr)       { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      0, GAP_STB_MAX_FRAMENR, stb); }
 
       p_assign_parsed_video_values(stb_elem, stb
           , l_nloops_ptr
@@ -3984,8 +3985,8 @@
        */
       l_framerate = stb->master_framerate;
 
-      if(*l_from_ptr)     { l_from_frame = p_scan_gint32(l_from_ptr,     0, 999999, stb); }
-      if(*l_to_ptr)       { l_to_frame   = p_scan_gint32(l_to_ptr,       0, 999999, stb); }
+      if(*l_from_ptr)     { l_from_frame = p_scan_gint32(l_from_ptr,     0, GAP_STB_MAX_FRAMENR, stb); }
+      if(*l_to_ptr)       { l_to_frame   = p_scan_gint32(l_to_ptr,       0, GAP_STB_MAX_FRAMENR, stb); }
       if(*l_frate_ptr)    { l_framerate  = p_scan_gdouble(l_frate_ptr,   1.0, 999.9, stb); }
 
       if(l_framerate < 1)
@@ -4074,8 +4075,8 @@
       stb_elem->orig_src_line = g_strdup(multi_lines);
 
       if(*l_mask_name_ptr) { stb_elem->mask_name = g_strdup(l_mask_name_ptr); }
-      if(*l_from_ptr)      { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    0, 999999, stb); }
-      if(*l_to_ptr)        { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      0, 999999, stb); }
+      if(*l_from_ptr)      { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    0, GAP_STB_MAX_FRAMENR, stb); }
+      if(*l_to_ptr)        { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      0, GAP_STB_MAX_FRAMENR, stb); }
       if(*l_basename_ptr)  { p_flip_dir_separators(l_basename_ptr);
                              stb_elem->basename = g_strdup(l_basename_ptr);
                            }
@@ -4126,8 +4127,8 @@
       if(*l_filename_ptr)   { p_flip_dir_separators(l_filename_ptr);
                               stb_elem->orig_filename = g_strdup(l_filename_ptr);
                             }
-      if(*l_from_ptr)       { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    1, 999999, stb); }
-      if(*l_to_ptr)         { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      1, 999999, stb); }
+      if(*l_from_ptr)       { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    1, GAP_STB_MAX_FRAMENR, stb); }
+      if(*l_to_ptr)         { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      1, GAP_STB_MAX_FRAMENR, stb); }
 
       if(*l_seltrack_ptr)   { stb_elem->seltrack     = p_scan_gint32(l_seltrack_ptr,  1, 999999, stb); }
       if(*l_exact_seek_ptr) { stb_elem->exact_seek   = p_scan_gint32(l_exact_seek_ptr,  0, 1, stb); }
@@ -4165,8 +4166,8 @@
       if(*l_filename_ptr)  { p_flip_dir_separators(l_filename_ptr);
                              stb_elem->orig_filename = g_strdup(l_filename_ptr);
                            }
-      if(*l_from_ptr)      { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    0, 999999, stb); }
-      if(*l_to_ptr)        { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      0, 999999, stb); }
+      if(*l_from_ptr)      { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    0, GAP_STB_MAX_FRAMENR, stb); }
+      if(*l_to_ptr)        { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      0, GAP_STB_MAX_FRAMENR, stb); }
 
       p_assign_parsed_flip_value(stb_elem, l_flip_ptr);
 
@@ -4193,8 +4194,8 @@
       stb_elem->orig_src_line = g_strdup(multi_lines);
 
       if(*l_mask_name_ptr)  { stb_elem->mask_name = g_strdup(l_mask_name_ptr); }
-      if(*l_from_ptr)       { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    1, 999999, stb); }
-      if(*l_to_ptr)         { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      1, 999999, stb); }
+      if(*l_from_ptr)       { stb_elem->from_frame = p_scan_gint32(l_from_ptr,    1, GAP_STB_MAX_FRAMENR, stb); }
+      if(*l_to_ptr)         { stb_elem->to_frame   = p_scan_gint32(l_to_ptr,      1, GAP_STB_MAX_FRAMENR, stb); }
 
 
       stb_elem->nframes = ABS(stb_elem->from_frame - stb_elem->to_frame) + 1;

Modified: trunk/gap/gap_story_file.h
==============================================================================
--- trunk/gap/gap_story_file.h	(original)
+++ trunk/gap/gap_story_file.h	Sun May 18 16:39:04 2008
@@ -48,6 +48,7 @@
 
 
 #define GAP_STB_MASK_SECTION_NAME  "Masks"
+#define GAP_STB_MAX_FRAMENR 99999999
 
 
 /* GapStoryRecordType enum values are superset of GapLibAinfoType

Modified: trunk/gap/gap_story_properties.c
==============================================================================
--- trunk/gap/gap_story_properties.c	(original)
+++ trunk/gap/gap_story_properties.c	Sun May 18 16:39:04 2008
@@ -685,7 +685,7 @@
   || (all_scenes == FALSE))
   {
     /* allow search until end */
-    framenr_max =999999;
+    framenr_max = GAP_STB_MAX_FRAMENR;
   }
 
   drop_th_data = FALSE;
@@ -3245,11 +3245,11 @@
   adj = gimp_scale_entry_new (GTK_TABLE (pw->master_table), 0, row++,
                               _("From:"), PW_SCALE_WIDTH, PW_SPIN_BUTTON_WIDTH,
                               pw->stb_elem_refptr->from_frame,
-                              l_lower_limit, 999999.0,  /* lower/upper */
+                              l_lower_limit, GAP_STB_MAX_FRAMENR,  /* lower/upper */
                               1.0, 10.0,      /* step, page */
                               0,              /* digits */
                               TRUE,           /* constrain */
-                              1.0, 999999.0,  /* lower/upper unconstrained */
+                              1.0, GAP_STB_MAX_FRAMENR,  /* lower/upper unconstrained */
                               _("framenumber of the first frame "
                                 "in the clip range"), NULL);
   pw->pw_spinbutton_from_adj = adj;
@@ -3274,11 +3274,11 @@
   adj = gimp_scale_entry_new (GTK_TABLE (pw->master_table), 0, row++,
                               _("To:"), PW_SCALE_WIDTH, PW_SPIN_BUTTON_WIDTH,
                               pw->stb_elem_refptr->to_frame,
-                              l_lower_limit, 999999.0,  /* lower/upper */
+                              l_lower_limit, GAP_STB_MAX_FRAMENR,  /* lower/upper */
                               1.0, 10.0,      /* step, page */
                               0,              /* digits */
                               TRUE,           /* constrain */
-                              1.0, 999999.0,  /* lower/upper unconstrained */
+                              1.0, GAP_STB_MAX_FRAMENR,  /* lower/upper unconstrained */
                               _("framenumber of the last frame "
                                 "in the clip range"), NULL);
   pw->pw_spinbutton_to_adj = adj;

Modified: trunk/vid_enc_single/gap_enc_singleframes_main.c
==============================================================================
--- trunk/vid_enc_single/gap_enc_singleframes_main.c	(original)
+++ trunk/vid_enc_single/gap_enc_singleframes_main.c	Sun May 18 16:39:04 2008
@@ -1,4 +1,4 @@
-/* gap_enc_main_singleframes.c
+/* gap_enc_singleframes_main.c
  *  by hof (Wolfgang Hofer)
  *
  * GAP ... Gimp Animation Plugins
@@ -45,6 +45,7 @@
 #include "gap_libgapvidutil.h"
 #include "gap_libgimpgap.h"
 
+
 /* Singleframe specific encoder params  */
 typedef struct {
   gint32 dum_par;   /* unused */
@@ -725,10 +726,25 @@
          g_free(l_msg);
        }
 
-       if(!gimp_file_save(l_save_runmode, l_tmp_image_id, l_layer_id, l_sav_name,  l_sav_name))
        {
-         g_message(_("** Save FAILED on file\n%s"), l_sav_name);
-         l_rc = -1;
+         gint32 l_sav_rc;
+
+         if(gap_debug)
+         {
+           printf("SINGLEFRAME mode:%d, image_id:%d save: %s l_sav_name\n"
+              ,(int)l_save_runmode
+              ,(int)l_tmp_image_id
+              ,l_sav_name
+              );
+         }
+
+         l_sav_rc = gap_lib_save_named_image(l_tmp_image_id, l_sav_name, l_save_runmode);
+         
+         if(l_sav_rc < 0)
+         {
+           g_message(_("** Save FAILED on file\n%s"), l_sav_name);
+           l_rc = -1;
+         }
        }
        g_free(l_sav_name);
     }
@@ -762,3 +778,14 @@
 
   return l_rc;
 }  /* end p_singleframe_encode */
+
+
+
+
+
+
+
+
+
+//////////////////////
+



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]