sndfile-enumerators-0.9.0: src/Sound/Iteratee/Codecs/Raw.hs
module Sound.Iteratee.Codecs.Raw (
RawCodec (..)
,readRaw
)
where
import Sound.Iteratee.Base
import Sound.Iteratee.Codecs.Common
import Data.Iteratee as I
import qualified Data.Vector.Storable as V
import Data.Word
import Control.Monad.CatchIO
data RawCodec = RawCodec
instance WritableAudio RawCodec where
emptyState RawCodec = error "emptyState not defined for Raw files"
initState RawCodec _ = error "initState not defined for Raw files"
supportedBitDepths RawCodec = Any
fileType RawCodec = Raw
readRaw ::
(MonadCatchIO m, Functor m) =>
AudioFormat
-> Iteratee (V.Vector Double) m a
-> Iteratee (V.Vector Word8) m a
readRaw fmt iter_dub = do
joinI . convStream (convFunc fmt) $ iter_dub