Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
gifs from pngs.. a few questions, starting with:
#1
how do i reverse frame animation order where i have maybe hundreds of frames?   seems odd that the default should choose to do everything backwards.

also is there a way to have the default frame time anything except for 100ms?
if so or even if not is there a way to change frames times over several frames at the same time rather than changing them individually by editing their layer name?
Reply
#2
(06-01-2021, 01:51 PM)mr_ron Wrote: how do i reverse frame animation order where i have maybe hundreds of frames?   seems odd that the default should choose to do everything backwards.
Just the difference between loading layers (top to bottom) and playing an animation(bottom to top)
Easy to fix. Layer -> Stack -> Reverse Layer Order does just that.

Quote:... is there a way to have the default frame time anything except for 100ms?
if so or even if not is there a way to change frames times over several frames at the same time rather than changing them individually by editing their layer name?
As far as I know, you will have to set the delay yourself. A couple of simple plugins that might help.
Anitools.py get the zip from https://www.gimp-forum.net/attachment.php?aid=4537 it is in there with a couple of scripts.
retime-linked-layers.py from https://sourceforge.net/projects/gimp-to...y/download

Both python plugins, go in your Gimp user profile plugins folder, make sure you make them executable.

Not MacOS a linux Gimp 2.10 quick-ish demo 3 and-a-half minutes



Reply
#3
(06-01-2021, 01:51 PM)mr_ron Wrote: how do i reverse frame animation order where i have maybe hundreds of frames?   seems odd that the default should choose to do everything backwards.

also is there a way to have the default frame time anything except for 100ms?
if so or even if not is there a way to change frames times over several frames at the same time rather than changing them individually by editing their layer name?

Everything is in the right order, there is an option in GIF where a frame partially overlay the current image to create the next frame, this corresponds exactly to what Gimp does if you make layers visible one by one from the bottom. 

When you export the image as a GIF animation, the export dialog has an option to force a new  delay on all the  frames.
Reply
#4
(06-01-2021, 06:36 PM)Ofnuts Wrote:
(06-01-2021, 01:51 PM)mr_ron Wrote: how do i reverse frame animation order where i have maybe hundreds of frames?   seems odd that the default should choose to do everything backwards.

also is there a way to have the default frame time anything except for 100ms?
if so or even if not is there a way to change frames times over several frames at the same time rather than changing them individually by editing their layer name?

Everything is in the right order, there is an option in GIF where a frame partially overlay the current image to create the next frame, this corresponds exactly to what Gimp does if you make layers visible one by one from the bottom. 

When you export the image as a GIF animation, the export dialog has an option to force a new  delay on all the  frames.

i see you've quote me and somehow apparently answered a different question, thankfully i looks like rich2005 understands
Reply
#5
(06-01-2021, 09:06 PM)mr_ron Wrote:
(06-01-2021, 06:36 PM)Ofnuts Wrote:
(06-01-2021, 01:51 PM)mr_ron Wrote: how do i reverse frame animation order where i have maybe hundreds of frames?   seems odd that the default should choose to do everything backwards.

also is there a way to have the default frame time anything except for 100ms?
if so or even if not is there a way to change frames times over several frames at the same time rather than changing them individually by editing their layer name?

Everything is in the right order, there is an option in GIF where a frame partially overlay the current image to create the next frame, this corresponds exactly to what Gimp does if you make layers visible one by one from the bottom. 

When you export the image as a GIF animation, the export dialog has an option to force a new  delay on all the  frames.

i see you've quote me and somehow apparently answered a different question, thankfully i looks like rich2005 understands

No these are the answers to your questions:

Quote:seems odd that the default should choose to do everything backwards

Everything is in the right order, there is an option in GIF where a frame partially overlay the current image to create the next frame, this corresponds exactly to what Gimp does if you make layers visible one by one from the bottom.

Quote:also is there a way to have the default frame time anything except for 100ms?

When you export the image as a GIF animation, the export dialog has an option to force a new  delay on all the  frames.
Reply
#6
i don't see how mentioning the overlay option means that somehow having them layered so they default to play in reverse is normal... i reverse the layers then optimise and it still takes the layers below to optimise, doesn't take them from above :/ also once i reverse the layers the frames play in the right order, that is as they've been exported which is lowest number first from a batch.
i wouldn't mind if i could ask the other program to render the numbers in reverse but i feel asking for this option will get some serious eyebrows.

when i say default, i mean so i don't have to change them every time i'm creating another animation. as in when the frames are first loaded, before export... i know the option you mention is there but this states "delay between frames where unspecified"... would be great if i could unspecify frame length en-mass, perhaps that's what your script thing does idk... the thing is most of the time i want to export the frames at mostly less than .1 seconds but there will be frames that need to last longer (upto around 15 seconds)
Reply
#7
(06-01-2021, 11:07 PM)mr_ron Wrote: i know the option you mention is there but this states "delay between frames where unspecified"...  would be great if i could unspecify frame length en-mass,

This is what the Use delay entered above for all frames checkbox is all about in the GIF export dialog.
Reply
#8
(06-01-2021, 11:24 PM)Ofnuts Wrote:
(06-01-2021, 11:07 PM)mr_ron Wrote: i know the option you mention is there but this states "delay between frames where unspecified"...  would be great if i could unspecify frame length en-mass,

This is what the Use delay entered above for all frames checkbox is all about in the GIF export dialog.

the thing is most of the time i want to export the frames at mostly less than .1 seconds but there will be frames that need to last longer (up to around 15 seconds).

so when i say en-mass i mean MOST not all.

let me explain harder so maybe i am understood...

   when i say most, i mean this for example:    i have a hundred frame animation, most of the frames need to be .07 seconds, the first frame needs to be anything from 1 to 6 seconds (this means sometimes the animation will start with a longer pause of 6 seconds and sometimes the animation will only have a 1 seconds frame...   when i say sometimes it'll have a different start frame i mean this isn't the only animation i'm planning to do, i'm planning on creating a few hundred animations, each one having unique pauses [first frames]{and when i insert the word "say" here i mean of course "write"}). 
the first frame isn't the only frame that'll need this treatment, there will be on average maybe 15 frames throughout an animation (gif) that should have unique times attached.


example expanded:
1st frame (3s), 2nd frame (.07s), 3rd frame (.2s), 4th frame (.07s), 5th frame (2.5s), 6th frame (.07s), 7th frame (.1s), 8th frame (.07s),  9th frame (4s), 10th frame (.07s), 11th frame (.2s), 12th frame (.07s), 13th frame (4.2s), 15th frame (.07s), 16th frame (.07s), 17th frame (.07s), 18th frame (.07s), 19th frame (.07s), 20th frame (.07s), 21st frame (.07s), 22nd frame (.07s), 23rd frame (.07s), 24th frame (2.4s)... 55th frame (4s)...

that being written i'll ask again, how to i unspecify a frame length?   seems that once an animation has been optimised (for gif) all frames are default to 100ms (initially i was asking about that 100ms default, i wanted to have it so that optimising for gif added 0.07s [70ms] rather than 100ms because script or no script changing this number manually is going to kill my brain even harder than this explanation at some point) , i know you keep telling me this is what the option "delay between frames where unspecified" but firstly it isn't (this option is added in the export panel it is not defaulting on optimisation) and secondly it says it right there where it's written "unspecified"...

i'll write again differently, you said it yourself "This is what the Use delay entered above for all frames checkbox is all about in the GIF export dialog.", it's written right in there "export".

right so, what i initially meant is when it comes to creating an animation i don't want all frames to have the same length, i was hoping there's an option in preferences to change the 100ms standard default but i guess not, will give up asking about that.

ok, now i'll ask about the export option, how do i unspecify frame length en-mass?
i know i've asked that before but it was taken out of context and/or misinterpreted before being given a response.
let me explain this again.   when i write "unspecify en-mass" i do not mean all frames i mean selected frames (which may number in the 20's, possibly just ten, perhaps even 30) i'm asking about unspecify just because of the wording in the export dialogue, perhaps i'm actually after doing it differently.  this is the crux of this particular, i don't understand what it means, unless i'm missing some options (which i assumed i was and still am) this doesn't make sense, i can't explain how it doesn't make sense here bc i'm past the point of caring about that now, just know that it doesn't.   i realise i'm not really asking anything here but it should be understood that this post is clarification as required for previous posts for 2 simple, brief questions.    also i will have chance to put some proper time into attempting to work this out for myself soon, just thought it'd be quicker to ask here incase there was a simple understandable possibly logical answer
Reply
#9
Then retime-linked-layers.py is the best solution. You can link "en masse" by shift-clicking the link icon, whcih will link/unlink all layers. And linking most of them is linking all of them and then clicking on the few that must remain untouched.

Beyond that you can assign specific names to some layers and I can cook up a python incantation that won't touch those that match/don't match some name pattern.
Reply
#10
Instead of retime-linked-layers , try the shiny new ofn-retime-layers has some options (such as chnaging only the shorter/longer durations) that can be useful to your case.
Reply


Forum Jump: