forked from acowley/ffmpeg-light
-
Notifications
You must be signed in to change notification settings - Fork 0
/
ffmpeg-light.cabal
126 lines (113 loc) · 4.08 KB
/
ffmpeg-light.cabal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
name: ffmpeg-light
version: 0.12.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
>
> go :: IO (Maybe DynamicImage)
> go = do (getFrame, cleanup) <- imageReader "myVideo.mov"
> (fmap ImageRGB8 <$> getFrame) <* cleanup
.
Tested with FFmpeg 3.1 - 3.2.4
license: BSD3
license-file: LICENSE
author: Anthony Cowley
maintainer: acowley@gmail.com
copyright: Copyright (C) 2014 Anthony Cowley
homepage: http://github.com/acowley/ffmpeg-light
bug-reports: http://github.com/acowley/ffmpeg-light/issues
category: Codec
build-type: Simple
extra-source-files: src/hscMacros.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
manual: True
flag BuildRasterDemo
description: Build Rasterific demo executable
default: False
manual: True
flag BuildVPlayDemo
description: Build video player demo executable
default: False
manual: True
flag BuildTranscodeDemo
description: Build transcode demo executable
default: False
manual: True
library
exposed-modules: Codec.FFmpeg,
Codec.FFmpeg.Common,
Codec.FFmpeg.Decode,
Codec.FFmpeg.Encode,
Codec.FFmpeg.Enums,
Codec.FFmpeg.Juicy,
Codec.FFmpeg.Probe,
Codec.FFmpeg.Scaler,
Codec.FFmpeg.Types,
Codec.FFmpeg.Internal.Debug,
Codec.FFmpeg.Internal.Linear
build-tools: hsc2hs
build-depends: base >=4.6 && < 4.11,
either,
exceptions,
vector >= 0.10.9 && < 0.13,
transformers >= 0.4.1 && < 0.6,
mtl >= 2.2.1 && < 2.3,
JuicyPixels >= 3.1 && < 3.3,
bytestring
pkgconfig-depends: libavutil, libavformat, libavcodec, libswscale, libavdevice
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, JuicyPixels
if flag(BuildDemo)
build-depends: ffmpeg-light, time
hs-source-dirs: demo
main-is: Main.hs
default-language: Haskell2010
ghc-options: -Wall
executable raster
if !flag(BuildRasterDemo)
buildable: False
build-depends: base < 5, vector, mtl, transformers, JuicyPixels >= 3.2
if flag(BuildRasterDemo)
build-depends: ffmpeg-light, Rasterific >= 0.3
hs-source-dirs: demo
main-is: Raster.hs
default-language: Haskell2010
ghc-options: -Wall -O2
executable vplay
if !flag(BuildVPlayDemo)
buildable: False
build-depends: base < 5, mtl, transformers, text, monad-loops, bytestring
if flag(BuildVPlayDemo)
build-depends: ffmpeg-light, sdl2
hs-source-dirs: demo
main-is: VPlay.hs
default-language: Haskell2010
ghc-options: -Wall -O2
executable transcode
if !flag(BuildTranscodeDemo)
buildable: False
build-depends: base < 5, JuicyPixels
if flag(BuildTranscodeDemo)
build-depends: ffmpeg-light
hs-source-dirs: demo
main-is: Transcode.hs
default-language: Haskell2010
ghc-options: -Wall