conduit-audio 0.2 → 0.2.0.1
raw patch · 2 files changed
+4/−4 lines, 2 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Data.Conduit.Audio: channels :: AudioSource m a -> Channels
- Data.Conduit.Audio: frames :: AudioSource m a -> Frames
- Data.Conduit.Audio: instance Eq Duration
- Data.Conduit.Audio: instance Ord Duration
- Data.Conduit.Audio: instance Read Duration
- Data.Conduit.Audio: instance Show Duration
- Data.Conduit.Audio: rate :: AudioSource m a -> Rate
- Data.Conduit.Audio: source :: AudioSource m a -> Source m (Vector a)
+ Data.Conduit.Audio: [channels] :: AudioSource m a -> Channels
+ Data.Conduit.Audio: [frames] :: AudioSource m a -> Frames
+ Data.Conduit.Audio: [rate] :: AudioSource m a -> Rate
+ Data.Conduit.Audio: [source] :: AudioSource m a -> Source m (Vector a)
+ Data.Conduit.Audio: instance GHC.Classes.Eq Data.Conduit.Audio.Duration
+ Data.Conduit.Audio: instance GHC.Classes.Ord Data.Conduit.Audio.Duration
+ Data.Conduit.Audio: instance GHC.Read.Read Data.Conduit.Audio.Duration
+ Data.Conduit.Audio: instance GHC.Show.Show Data.Conduit.Audio.Duration
- Data.Conduit.Audio: concatenate :: Monad m => AudioSource m a -> AudioSource m a -> AudioSource m a
+ Data.Conduit.Audio: concatenate :: (Monad m) => AudioSource m a -> AudioSource m a -> AudioSource m a
- Data.Conduit.Audio: deinterleave :: Storable a => Channels -> Vector a -> [Vector a]
+ Data.Conduit.Audio: deinterleave :: (Storable a) => Channels -> Vector a -> [Vector a]
- Data.Conduit.Audio: interleave :: Storable a => [Vector a] -> Vector a
+ Data.Conduit.Audio: interleave :: (Storable a) => [Vector a] -> Vector a
- Data.Conduit.Audio: vectorFrames :: Storable a => Vector a -> Channels -> Frames
+ Data.Conduit.Audio: vectorFrames :: (Storable a) => Vector a -> Channels -> Frames
Files
- conduit-audio.cabal +1/−1
- src/Data/Conduit/Audio.hs +3/−3
conduit-audio.cabal view
@@ -1,5 +1,5 @@ name: conduit-audio-version: 0.2+version: 0.2.0.1 author: Michael Tolly maintainer: miketolly@gmail.com license: LGPL
src/Data/Conduit/Audio.hs view
@@ -115,7 +115,7 @@ concatenate :: (Monad m) => AudioSource m a -> AudioSource m a -> AudioSource m a concatenate (AudioSource s1 r1 c1 l1) (AudioSource s2 r2 c2 l2) | r1 /= r2 = error $- printf "Data.Conduit.Audio.concatenate: mismatched rates (%d and %d)" r1 r2+ printf "Data.Conduit.Audio.concatenate: mismatched rates (%f and %f)" r1 r2 | c1 /= c2 = error $ printf "Data.Conduit.Audio.concatenate: mismatched channel counts (%d and %d)" c1 c2 | otherwise = AudioSource (s1 >> s2) r1 c1 (l1 + l2)@@ -142,7 +142,7 @@ mix :: (Monad m, Num a, V.Storable a) => AudioSource m a -> AudioSource m a -> AudioSource m a mix a1@(AudioSource _ r1 c1 l1) a2@(AudioSource _ r2 c2 l2) | r1 /= r2 = error $- printf "Data.Conduit.Audio.mix: mismatched rates (%d and %d)" r1 r2+ printf "Data.Conduit.Audio.mix: mismatched rates (%f and %f)" r1 r2 | c1 /= c2 = error $ printf "Data.Conduit.Audio.mix: mismatched channel counts (%d and %d)" c1 c2 | otherwise = AudioSource@@ -154,7 +154,7 @@ merge :: (Monad m, Num a, V.Storable a) => AudioSource m a -> AudioSource m a -> AudioSource m a merge a1@(AudioSource _ r1 c1 l1) a2@(AudioSource _ r2 c2 l2) | r1 /= r2 = error $- printf "Data.Conduit.Audio.merge: mismatched rates (%d and %d)" r1 r2+ printf "Data.Conduit.Audio.merge: mismatched rates (%f and %f)" r1 r2 | otherwise = AudioSource (C.mapOutput mergeChunk $ combineAudio a1 a2) r1 (c1 + c2) (max l1 l2)