mediabus-0.2.0.1: Multimedia streaming on top of Conduit

Safe HaskellNone
LanguageHaskell2010

Data.MediaBus.Sample

Synopsis

Documentation

newtype SampleBuffer sampleType Source #

A sample is a discrete value of a continuous signal, periodically sampled at the sampling frequency. This is a full buffer of those things.

Constructors

MkSampleBuffer (Vector sampleType) 

Instances

KnownNat r => HasDebugPlaybackSink s t (SampleBuffer (S16 r)) Source # 

Methods

debugPlaybackSink :: MonadIO m => Sink (Frame s t (SampleBuffer (S16 r))) m () Source #

Storable s => IsList (SampleBuffer s) Source # 

Associated Types

type Item (SampleBuffer s) :: * #

(Eq sampleType, Storable sampleType) => Eq (SampleBuffer sampleType) Source # 

Methods

(==) :: SampleBuffer sampleType -> SampleBuffer sampleType -> Bool #

(/=) :: SampleBuffer sampleType -> SampleBuffer sampleType -> Bool #

(Storable sampleType, Typeable * sampleType, Show sampleType) => Show (SampleBuffer sampleType) Source # 

Methods

showsPrec :: Int -> SampleBuffer sampleType -> ShowS #

show :: SampleBuffer sampleType -> String #

showList :: [SampleBuffer sampleType] -> ShowS #

Generic (SampleBuffer sampleType) Source # 

Associated Types

type Rep (SampleBuffer sampleType) :: * -> * #

Methods

from :: SampleBuffer sampleType -> Rep (SampleBuffer sampleType) x #

to :: Rep (SampleBuffer sampleType) x -> SampleBuffer sampleType #

Storable sampleType => Monoid (SampleBuffer sampleType) Source # 

Methods

mempty :: SampleBuffer sampleType #

mappend :: SampleBuffer sampleType -> SampleBuffer sampleType -> SampleBuffer sampleType #

mconcat :: [SampleBuffer sampleType] -> SampleBuffer sampleType #

Storable sampleType => Default (SampleBuffer sampleType) Source # 

Methods

def :: SampleBuffer sampleType #

NFData sampleType => NFData (SampleBuffer sampleType) Source # 

Methods

rnf :: SampleBuffer sampleType -> () #

(HasDuration (Proxy * sampleType), Storable sampleType) => HasDuration (SampleBuffer sampleType) Source # 
(Storable a, HasDuration (Proxy * a)) => CanSegment (SampleBuffer a) Source # 
(CanBeBlank sa, Storable sa, HasDuration (Proxy * sa)) => CanGenerateBlankMedia (SampleBuffer sa) Source # 
Storable a => HasSampleBuffer (SampleBuffer a) Source # 
Transcoder (SampleBuffer (S16 8000)) (SampleBuffer ALaw) Source # 
Transcoder (SampleBuffer ALaw) (SampleBuffer (S16 8000)) Source # 
type Rep (SampleBuffer sampleType) Source # 
type Rep (SampleBuffer sampleType) = D1 (MetaData "SampleBuffer" "Data.MediaBus.Sample" "mediabus-0.2.0.1-GufOXSQMJOgBSiYlFFnZ4L" True) (C1 (MetaCons "MkSampleBuffer" PrefixI True) (S1 (MetaSel (Just Symbol "_sampleVector") NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 (Vector sampleType))))
type Item (SampleBuffer s) Source # 
type Item (SampleBuffer s) = s
type GetSampleType (SampleBuffer a) Source # 
type SetSampleType (SampleBuffer a) t Source # 
type TranscodingSeqNum (SampleBuffer (S16 8000)) (SampleBuffer ALaw) s Source # 
type TranscodingSeqNum (SampleBuffer ALaw) (SampleBuffer (S16 8000)) s Source # 
type TranscodingTicks (SampleBuffer (S16 8000)) (SampleBuffer ALaw) t Source # 
type TranscodingTicks (SampleBuffer ALaw) (SampleBuffer (S16 8000)) t Source # 

sampleVector :: forall sampleType sampleType. Iso (SampleBuffer sampleType) (SampleBuffer sampleType) (Vector sampleType) (Vector sampleType) Source #

createSampleBufferFrom :: Storable sample' => (forall s. Vector sample -> ST s (MVector s sample')) -> SampleBuffer sample -> SampleBuffer sample' Source #

mutateSamples :: Storable a => (forall s. MVector s a -> ST s ()) -> SampleBuffer a -> SampleBuffer a Source #

unsafeMutateSamples :: Storable a => (forall s. MVector s a -> ST s r) -> SampleBuffer a -> (r, SampleBuffer a) Source #

Unsafe because results can be returned, which might contain the thawn vector.