-
Notifications
You must be signed in to change notification settings - Fork 143
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
different frame duration #101
Comments
The library supports this, but I don't see how to expose that on command line. |
Ideally, the way to expose it would be a flag like --acceptdelay and filenames in the folder could opt to specify the number of milliseconds in the filenames. So for example a gif with a long pause would be something like this
frame001 would have it's delay overridden by 3000ms, the rest would follow the normal length specified by --fps. This could allow absolutely insane optimization for gif production if someone has the patience to use it, so I really hope you can expose it somehow to cli. also this issue is practically a duplicate of #31 |
it would be great for me. I understand the fact this library is designed for video, but it's useful for gif "slideshows" too. |
if you can build it from source, use this PR #102 (unfortunately closed without reasons) |
I'm surprised that there's a demand for this feature. I didn't expect people would micromanage frames like that, or use it for anything other than video. I can't think of a nice user interface for this. A command-line switch like Timing in file names themselves may require using some mass-renaming applications, or hundreds of mouse clicks. That doesn't feel nice either. Maybe taking frames from a CSV file, with a column for filename and a delay? |
Yes, I am agreed with you, have a name-based frame duration is not handy... |
I still think it'd be nice to be able to just manually override the normal delay set by --fps on just some frames you want to specifically tweak, and btw, mass renaming is already usually required, we're talking about usually hundreds of numbered PNG input files here lol |
I completely disagree with CSV or Filename based being overkill the vast majority of gif production methods involve setting a specific delay for each frame, take GIMP for example, you can override the default by adding a number of ms to the layer in parenthesis I actually think CSV sounds really cool assuming it's not hard for a normal person to turn a folder of files into a text file, still though, that's adding complexity where it may not be needed always My only major suggestion, regardless of implementation is you NEED to allow setting a default delay time, and also allowing --fps as the default delay for frames with unspecified delays in a csv, or filename, or whatever |
I use GifSki a lot, pretty much any time I need to make a gif for any reason
the csv should not require all files to be listed, just the ones that need custom delay, if the user wants to specify all delays, they can if they want to |
Would it be an option to pass frames on
I suppose this could combine quite nicely with |
Actually some ideas are better and some ideas not so cool but the most important thing is adding the feature, so is there any workaround or short-term plan about the issue? :) |
I need this feature as well!! |
I would really like to have a feature like this too! |
I would love to see this implemented, I extracted the frames from an animated webp using "anim_dump" from the webp codec, matched the initial frame duration with --fps and converted it to gif using gifski, but I noticed the resulting file was slower in some parts and missing a ton duplicate frames at the end. Using "webpmux -info" from the webp codec on the original file showed me half way through the animation the frame duration decreased from 100ms to 90ms and 80ms as well as the final frame being set to 1500ms. Although this is a pretty uncommon use case for gifski, it would be an awesome feature for situations like this. |
Hello, awesome work!
Is there or are you plan to have a way to define the duration of each frame?
And avoid giving ten times the same frame to get this one longer.
Thank you!
The text was updated successfully, but these errors were encountered: