Copyright | (c) OleksandrZhabenko 2020 |
---|---|
License | MIT |
Stability | Experimental |
Safe Haskell | None |
Language | Haskell2010 |
Maintainer : olexandr543@yahoo.com
Helps to create experimental music. This module contains different representations for the data.
Synopsis
- data SoundI
- data SoundFN
- data SoundT
- data Timity = Time Float Float Float
- data Timity1 a = Time1 Float Float a
- data IntervalTim
- = Empty
- | I Float Float
- | UniversalI
- data IntervalTimI
- = Empty2
- | II Float Float
- | UniversalII
- data IntervalG a b = IG a b
- data IntervalMG a
- = IMG a a
- | UniversalG
Sound repesentations
An Int
parameter is an index of the SoundI
sound file in the sorted in the ascending order Vector
of them (the corresponding files or their
names) representing the whole composition.
An FilePath
parameter is a name of the sound file in the current directory with the filetype (supported by SoX) being given by String
representing
the whole composition.
The first Float
parameter is a time moment (starting from 0) of the playing the sound being represented by OvertonesO
, the second one is its
duration. The third one is its maximum amplitude by an absolute value. The fourth one is the minimum duration that can provide a needed human
feeling of perception (some impression) for the sound. The further one(s) is(are) some adjustment(s) parameter(s).
Sound time intervals representations
The first Float
parameter is a time moment (starting from 0) of the playing the sound, the second one is its duration in seconds (with a negative
values corresponding to the pause duration --- the silent "sound"), the third one is the minimum duration that can provide a needed human
feeling of perception (some impression) for the sound.
The first Float
parameter is a time moment (starting from 0) of the playing the sound, the second one is its duration in seconds (with a negative
values corresponding to the pause duration --- the silent "sound"), the third one is a parameter to specify more complex behaviour for the sound.
Instances
Functor Timity1 Source # | |
Eq a => Eq (Timity1 a) Source # | |
Ord a => Ord (Timity1 a) Source # | |
Defined in DobutokO.Sound.Presentation | |
Show a => Show (Timity1 a) Source # | |
Semigroup a => Semigroup (Timity1 a) Source # | Since base-4.9.0.0. Idempotent semigroup (band) (x <> x == x) if |
data IntervalTim Source #
Float
interval representation with no order of the arguments preserved.
Instances
data IntervalTimI Source #
Another Float
interval representation with no order of the arguments preserved. Since base-4.9.0.0 has different instance of Semigroup
than IntervalTim
.
Instances
Generalized interval representation.
IG a b |
Instances
Bifunctor IntervalG Source # | Since base-4.8.0.0. |
Functor (IntervalG a) Source # | |
(Eq a, Eq b) => Eq (IntervalG a b) Source # | |
(Ord a, Ord b) => Ord (IntervalG a b) Source # | |
Defined in DobutokO.Sound.Presentation compare :: IntervalG a b -> IntervalG a b -> Ordering # (<) :: IntervalG a b -> IntervalG a b -> Bool # (<=) :: IntervalG a b -> IntervalG a b -> Bool # (>) :: IntervalG a b -> IntervalG a b -> Bool # (>=) :: IntervalG a b -> IntervalG a b -> Bool # | |
(Show a, Show b) => Show (IntervalG a b) Source # | |
Semigroup (IntervalG a b) Source # | Since base-4.9.0.0. Idempotent semigroup (x <> x == x) and rectangular band (x <> y <> z == x <> z) For more information, please, refer to: https://en.wikipedia.org/wiki/Band_(mathematics) |
data IntervalMG a Source #
Generalized interval representation which is a Monoid instance.
IMG a a | |
UniversalG |