packages feed

ffmpeg-light-0.3.0.1: ffmpeg-light.cabal

name:                ffmpeg-light
version:             0.3.0.1
synopsis:            Minimal bindings to the FFmpeg library.

description:         Stream frames from an encoded video, or stream frames to
                     a video output file. To read the first frame from
                     an @h264@-encoded file into a JuicyPixels 
                     @Maybe DynamicImage@,
                     .
                     > import Codec.FFmpeg
                     > import Codec.Picture
                     > import Control.Applicative
                     > import Control.Monad.Trans.Maybe
                     >
                     > go :: IO (Maybe DynamicImage)
                     > go = do (getFrame, cleanup) <- frameReaderT "myVideo.mov"
                     >         (runMaybeT $ getFrame >>= toJuicyT) <* cleanup
                     .
                     Tested on OS X 10.9.2 with <http://www.ffmpeg.org FFmpeg> 2.2.1
                     installed via <http://brew.sh homebrew>.

license:             BSD3
license-file:        LICENSE
author:              Anthony Cowley
maintainer:          acowley@gmail.com
copyright:           Copyright (C) 2014 Anthony Cowley
category:            Codec
build-type:          Simple
extra-source-files:  src/hscMacros.h, src/nameCompat.h, CHANGELOG.md
cabal-version:       >=1.10

source-repository head
  type:     git
  location: http://github.com/acowley/ffmpeg-light.git

flag BuildDemo
  description: Build demo executable
  default:     False

library
  exposed-modules:     Codec.FFmpeg,
                       Codec.FFmpeg.Common,
                       Codec.FFmpeg.Decode,
                       Codec.FFmpeg.Encode,
                       Codec.FFmpeg.Enums,
                       Codec.FFmpeg.Juicy,
                       Codec.FFmpeg.Scaler,
                       Codec.FFmpeg.Types,
                       Codec.FFmpeg.Internal.Debug
  build-tools:         hsc2hs
  build-depends:       base >=4.6 && < 5,
                       vector >= 0.10.9 && < 0.11,
                       transformers >= 0.3 && < 0.4,
                       mtl >= 2.1.3 && < 2.2,
                       JuicyPixels >= 3.1 && < 3.2
  pkgconfig-depends:   libavutil, libavformat, libavcodec, libswscale
  hs-source-dirs:      src
  include-dirs:        src
  default-language:    Haskell2010
  ghc-options:         -Wall

executable demo
  if !flag(BuildDemo)
    buildable:      False
  build-depends:    base < 5, vector, mtl, transformers,
                    ffmpeg-light, JuicyPixels
  hs-source-dirs:   demo
  main-is:          Main.hs
  default-language: Haskell2010
  ghc-options:      -Wall