1

GIMP has the tool Animation Playback (found under Filters/Animation) to help with creating animations. When creating an animation, it is very useful to be able to manually "scrub" through the frames. The tool has a button Step that allows you to step one frame forward. However, a button to step one frame backward is missing.

enter image description here

Now I had a look at the source code of the Animation Playback tool. What I was hoping to find was whether such a "step backwards one frame" feature exists, and how we are meant to use it. And yes such a feature does exist! And it has a keyboard shortcut: d key according to the source code. However, the keyboard shortcut does not seem to work =(! The interesting thing is that all keyboard shortcuts for the tool which are combined with the Ctrl key work. For example:

  • Ctrl+L to "speed_up"
  • Ctrl+J to "speed_down"
  • Ctrl+K to "speed_reset"

But those without the Ctrl modifier don't work:

  • d to "step-back" (step back one frame)
  • f to "step" (step forward one frame)

TLDR: the tool supports the ability to step back one frame, but how can I use it?


Here is the code snippet for reference:

static GtkUIManager *
ui_manager_new (GtkWidget *window)
{
  static GtkActionEntry actions[] =
  {
    { "step-back", "media-skip-backward",
      N_("Step _back"), "d", N_("Step back to previous frame"),
      G_CALLBACK (step_back_callback) },

    { "step", "media-skip-forward",
      N_("_Step"), "f", N_("Step to next frame"),
      G_CALLBACK (step_callback) },

    { "rewind", "media-seek-backward",
      NULL, NULL, N_("Rewind the animation"),
      G_CALLBACK (rewind_callback) },

    { "refresh", GIMP_ICON_VIEW_REFRESH,
      NULL, "<control>R", N_("Reload the image"),
      G_CALLBACK (refresh_callback) },

    { "help", "help-browser",
      NULL, NULL, NULL,
      G_CALLBACK (help_callback) },

    { "close", "window-close",
      NULL, "<control>W", NULL,
      G_CALLBACK (close_callback)
    },
    {
      "quit", "application-quit",
      NULL, "<control>Q", NULL,
      G_CALLBACK (close_callback)
    },
    {
      "speed-up", NULL,
      N_("Faster"), "<control>L", N_("Increase the speed of the animation"),
      G_CALLBACK (speed_up_callback)
    },
    {
      "speed-down", NULL,
      N_("Slower"), "<control>J", N_("Decrease the speed of the animation"),
      G_CALLBACK (speed_down_callback)
    },
    {
      "speed-reset", NULL,
      N_("Reset speed"), "<control>K", N_("Reset the speed of the animation"),
      G_CALLBACK (speed_reset_callback)
    }
  };
1

The solution is to use a newer version of GIMP! The UI of the tool has been updated. (And all the keyboard shortcuts mentioned in the question also work).

enter image description here

*Aside: The source code I reference in the question is of the latest GIMP version at time of writing. Looking at the source code appropriate to my old version of GIMP, the "step backwards one frame" feature is not supported.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.