Gifcurry-2.3.0.0: GIF creation utility.

Safe HaskellSafe
LanguageHaskell2010

Gifcurry

Description

Produces GIFs using FFmpeg and ImageMagick. The main function is gif.

Synopsis

Documentation

gif :: GifParams -> IO (Either IOError String) Source #

Inputs GifParams and outputs either an IO IOError or IO String.

   import qualified Gifcurry (gif, GifParams(..), defaultGifParams, gifParamsValid)
   main :: IO ()
   main = do
     let params = Gifcurry.defaultGifParams { Gifcurry.inputFile = "./in.mov", Gifcurry.outputFile = "./out.gif" }
     valid <- Gifcurry.gifParamsValid params
     if valid
       then do
         result <- Gifcurry.gif params
         print result
       else return ()

gifParamsValid :: GifParams -> IO Bool Source #

Outputs True or False if the parameters in the GifParams record are valid. Looks at inputFile, outputFile, startTime, durationTime, widthSize, and qualityPercent.

versionNumber :: String Source #

The version number.

getVideoDurationInSeconds :: GifParams -> IO (Maybe Float) Source #

Returns the duration of the video in seconds if successful.

   import qualified Gifcurry (getVideoDurationInSeconds)
   -- ...
   let params = Gifcurry.defaultGifParams { Gifcurry.inputFile = "./in.mov" }
   maybeDuration <- Gifcurry.getVideoDurationInSeconds params
   let duration = case maybeDuration of
                     Nothing    -> 0.0
                     Just float -> float

findOrCreateTemporaryDirectory :: IO FilePath Source #

Finds or creates the temporary directory for Gifcurry. This directory is used for storing temporary frames.