Class: LorisSound

Environment: Siren
Superclass: Siren.SampledSound
Category: MusicApps-Loris
Instance variables: partials configuration outputSnd
Indexed variables: objects
Imports: Siren.Loris.*

A LorisSound represents a sound file and its Loris analysis data. It stores the sound samples in its inherited state.

Instance Variables:
partials my data
configuration my analysis settings

synthesis

playOriginal
Play the source sound

playResynthesized
Play the processed sound

synthesize
Resynthesize the receiver and answer a sound.

synthesize: rat toFile: nam
Resynthesize the receiver and answer a sound.

printing/storing

copyTo: newBase
Copy all the files associated with the receiver to the given basename

edit
Open a LorisAnalysisEditor on the receiver.

loadConfiguration: confName
Load the analysis configuration from a text file.

loadEnvelopes: envName
Load the ampl/freq envelopes from a text file.

saveEnvelopes: envName
Load the ampl/freq envelopes from a text file.

saveSDIF: nam
Save the receiver as an SDIF file.

analysis

analyze
Run the Loris analyzer using the receiver's configuration, then coallate and distill;
save SDIF and/or AIFF files and play the output, dependng on the configuration

harmonify
Justify the receiver's partials to be harmonic overtones

loadEnvelopes: analyzer size: dsize
Load the ampl and freq envelopes frmo the analyzer

accessing

breakpointsDo: theBlock
Iterate over all the partials evaluating the given 1-argument block for each breakpoint

configuration
Answer the receiver's LorisAnalysisConfiguration.

configuration: conf
Set the receiver's analysis configuration to the given LorisAnalysisConfiguration.

maxAmplitude
Answer the receiver's max BP amplitudes.

outputSound
Answer the receiver's resynthesized output sound.

outputSound: aSound
Set the receiver's resynthesized output sound.

partials
Answer the receiver's Loris data (partial struct).

partials: dat
Set the receiver's Loris data (partial struct).

processing

compressAmp: factor
Compress the receiver's amplitudes by the given factor

dilateFrom: startMap to: targetMap
Map the time from the start map to the targetMap.

maskAmp: threshold
Apply the given threshold to the receiver's amplitudes

scaleAmp: ampEnv
Scale the receiver's amplitudes by the given linear envelope or scalar value

scaleBW: noizEnv
Scale the receiver's noise bandwidth by the given linear envelope or scalar value

scaleFreq: frqEnv
Scale the receiver's frequencies by the given linear envelope or scalar value

shiftPitch: frqEnv
Scale the receiver's freq values by the given linear envelope

morphing

morph: target envelope: env
Morph between the receiver and the target using the given envelope.

MetaClass: LorisSound class

instance creation

example: nam resolution: res
Create and answer a new instance read from the given file; print out the analyzer settings,
then coallate and distill; store an SDIF file and a re-syn file; answer the sound obj.

fromFile: nam configuration: config
Create and answer a new instance read from the given file; use the default analyzer settings,
then coallate and distill; edit or answer the sound obj.

fromSDIF: nam
Load a new instance read from the given SDIF file.

credo

examples

LorisSound fromFile: '1.2a1.aiff' configuration: LorisAnalysisConfiguration new

LorisSound fromFile: '1.1a.aiff' configuration:
(LorisAnalysisConfiguration res: 70 drift: 10 floor: -70 minF: 80 maxF: 140)

[LorisSound fromFile: 'horns1c.aiff' configuration:
((LorisAnalysisConfiguration res: 70 drift: 10 floor: -36 minF: 80 maxF: 140) bwScale: 6.0) ]

(Sound fromFile: '1.2a1.out.aiff') edit

LorisSound fromSDIF: '1.2a1.sdif'
LorisSound fromSDIF: 'horns1c.sdif'