Main Page | Modules | Data Structures | File List | Data Fields | Globals

remix_deck.h File Reference


Detailed Description

The top level structured mixing abstraction in libremix is known as a deck.

A deck contains a number of tracks which are mixed in parallel. Each track may contain a number of layers which are mixed from bottom to top in series. Finally, these layers each contain a sequence of sounds with transparency.

decks.png

The sequence of sounds in a layer can be indexed by samples, seconds or tempo. Sounds provide audio data from any instrument or effect source, and these sources can each be reused multiple times. A sound can even source its audio data from another entire deck, thus decks can be used to sequence other decks. In this manner effects can be applied to sequences of decks, and sequences of decks can be stored as higher level units such as verses and choruses in a music application.

#include <remix/remix_types.h>

Go to the source code of this file.

Functions

RemixDeckremix_deck_new (RemixEnv *env)
RemixCount remix_deck_set_mixlength (RemixEnv *env, RemixDeck *deck, RemixCount mixlength)
RemixCount remix_deck_get_mixlength (RemixEnv *env, RemixDeck *deck)
CDList * remix_deck_get_tracks (RemixEnv *env, RemixDeck *deck)
RemixTrackremix_track_new (RemixEnv *env, RemixDeck *deck)
RemixPCM remix_track_set_gain (RemixEnv *env, RemixTrack *track, RemixPCM gain)
RemixPCM remix_track_get_gain (RemixEnv *env, RemixTrack *track)
RemixCount remix_track_set_mixlength (RemixEnv *env, RemixTrack *track, RemixCount mixlength)
RemixCount remix_track_get_mixlength (RemixEnv *env, RemixTrack *track)
void remix_remove_track (RemixEnv *env, RemixTrack *track)
RemixDeckremix_track_get_deck (RemixEnv *env, RemixTrack *track)
RemixLayerremix_layer_new_ontop (RemixEnv *env, RemixTrack *track, RemixTimeType timetype)
RemixLayerremix_layer_new_above (RemixEnv *env, RemixLayer *above, RemixTimeType timetype)
RemixLayerremix_layer_move_ontop (RemixEnv *env, RemixLayer *layer, RemixTrack *track)
RemixLayerremix_layer_move_above (RemixEnv *env, RemixLayer *layer, RemixLayer *above)
RemixLayerremix_layer_raise (RemixEnv *env, RemixLayer *layer)
RemixLayerremix_layer_lower (RemixEnv *env, RemixLayer *layer)
RemixTrackremix_layer_get_track (RemixEnv *env, RemixLayer *layer)
RemixDeckremix_layer_get_deck (RemixEnv *env, RemixLayer *layer)
RemixTimeType remix_layer_set_timetype (RemixEnv *env, RemixLayer *layer, RemixTimeType new_type)
RemixTimeType remix_layer_get_timetype (RemixEnv *env, RemixLayer *layer)
RemixSoundremix_layer_get_sound_before (RemixEnv *env, RemixLayer *layer, RemixTime time)
RemixSoundremix_layer_get_sound_at (RemixEnv *env, RemixLayer *layer, RemixTime time)
RemixSoundremix_layer_get_sound_after (RemixEnv *env, RemixLayer *layer, RemixTime time)
RemixLayerremix_layer_below (RemixEnv *env, RemixLayer *layer)
RemixLayerremix_layer_above (RemixEnv *env, RemixLayer *layer)
RemixSoundremix_sound_new (RemixEnv *env, RemixBase *source, RemixLayer *layer, RemixTime start_time, RemixTime duration)
RemixBaseremix_sound_set_source (RemixEnv *env, RemixSound *sound, RemixBase *source)
RemixBaseremix_sound_get_source (RemixEnv *env, RemixSound *sound)
RemixLayerremix_sound_get_layer (RemixEnv *env, RemixSound *sound)
RemixTrackremix_sound_get_track (RemixEnv *env, RemixSound *sound)
RemixDeckremix_sound_get_deck (RemixEnv *env, RemixSound *sound)
RemixTime remix_sound_move (RemixEnv *env, RemixSound *sound, RemixTime time)
RemixSoundremix_sound_get_prev (RemixEnv *env, RemixSound *sound)
RemixSoundremix_sound_get_next (RemixEnv *env, RemixSound *sound)
RemixTime remix_sound_set_start_time (RemixEnv *env, RemixSound *sound, RemixTime time)
RemixTime remix_sound_get_start_time (RemixEnv *env, RemixSound *sound)
RemixTime remix_sound_set_duration (RemixEnv *env, RemixSound *sound, RemixTime time)
RemixTime remix_sound_get_duration (RemixEnv *env, RemixSound *sound)
RemixBaseremix_sound_set_rate_envelope (RemixEnv *env, RemixSound *sound, RemixBase *rate_envelope)
RemixBaseremix_sound_get_rate_envelope (RemixEnv *env, RemixSound *sound)
RemixBaseremix_sound_set_gain_envelope (RemixEnv *env, RemixSound *sound, RemixBase *gain_envelope)
RemixBaseremix_sound_get_gain_envelope (RemixEnv *env, RemixSound *sound)
RemixBaseremix_sound_set_blend_envelope (RemixEnv *env, RemixSound *sound, RemixBase *blend_envelope)
RemixBaseremix_sound_get_blend_envelope (RemixEnv *env, RemixSound *sound)


Function Documentation

RemixCount remix_deck_get_mixlength RemixEnv env,
RemixDeck deck
 

CDList* remix_deck_get_tracks RemixEnv env,
RemixDeck deck
 

RemixDeck* remix_deck_new RemixEnv env  ) 
 

RemixCount remix_deck_set_mixlength RemixEnv env,
RemixDeck deck,
RemixCount  mixlength
 

RemixLayer* remix_layer_above RemixEnv env,
RemixLayer layer
 

RemixLayer* remix_layer_below RemixEnv env,
RemixLayer layer
 

RemixDeck* remix_layer_get_deck RemixEnv env,
RemixLayer layer
 

RemixSound* remix_layer_get_sound_after RemixEnv env,
RemixLayer layer,
RemixTime  time
 

RemixSound* remix_layer_get_sound_at RemixEnv env,
RemixLayer layer,
RemixTime  time
 

RemixSound* remix_layer_get_sound_before RemixEnv env,
RemixLayer layer,
RemixTime  time
 

RemixTimeType remix_layer_get_timetype RemixEnv env,
RemixLayer layer
 

RemixTrack* remix_layer_get_track RemixEnv env,
RemixLayer layer
 

RemixLayer* remix_layer_lower RemixEnv env,
RemixLayer layer
 

RemixLayer* remix_layer_move_above RemixEnv env,
RemixLayer layer,
RemixLayer above
 

RemixLayer* remix_layer_move_ontop RemixEnv env,
RemixLayer layer,
RemixTrack track
 

RemixLayer* remix_layer_new_above RemixEnv env,
RemixLayer above,
RemixTimeType  timetype
 

RemixLayer* remix_layer_new_ontop RemixEnv env,
RemixTrack track,
RemixTimeType  timetype
 

RemixLayer* remix_layer_raise RemixEnv env,
RemixLayer layer
 

RemixTimeType remix_layer_set_timetype RemixEnv env,
RemixLayer layer,
RemixTimeType  new_type
 

void remix_remove_track RemixEnv env,
RemixTrack track
 

RemixBase* remix_sound_get_blend_envelope RemixEnv env,
RemixSound sound
 

RemixDeck* remix_sound_get_deck RemixEnv env,
RemixSound sound
 

RemixTime remix_sound_get_duration RemixEnv env,
RemixSound sound
 

RemixBase* remix_sound_get_gain_envelope RemixEnv env,
RemixSound sound
 

RemixLayer* remix_sound_get_layer RemixEnv env,
RemixSound sound
 

RemixSound* remix_sound_get_next RemixEnv env,
RemixSound sound
 

RemixSound* remix_sound_get_prev RemixEnv env,
RemixSound sound
 

RemixBase* remix_sound_get_rate_envelope RemixEnv env,
RemixSound sound
 

RemixBase* remix_sound_get_source RemixEnv env,
RemixSound sound
 

RemixTime remix_sound_get_start_time RemixEnv env,
RemixSound sound
 

RemixTrack* remix_sound_get_track RemixEnv env,
RemixSound sound
 

RemixTime remix_sound_move RemixEnv env,
RemixSound sound,
RemixTime  time
 

RemixSound* remix_sound_new RemixEnv env,
RemixBase source,
RemixLayer layer,
RemixTime  start_time,
RemixTime  duration
 

RemixBase* remix_sound_set_blend_envelope RemixEnv env,
RemixSound sound,
RemixBase blend_envelope
 

RemixTime remix_sound_set_duration RemixEnv env,
RemixSound sound,
RemixTime  time
 

RemixBase* remix_sound_set_gain_envelope RemixEnv env,
RemixSound sound,
RemixBase gain_envelope
 

RemixBase* remix_sound_set_rate_envelope RemixEnv env,
RemixSound sound,
RemixBase rate_envelope
 

RemixBase* remix_sound_set_source RemixEnv env,
RemixSound sound,
RemixBase source
 

RemixTime remix_sound_set_start_time RemixEnv env,
RemixSound sound,
RemixTime  time
 

RemixDeck* remix_track_get_deck RemixEnv env,
RemixTrack track
 

RemixPCM remix_track_get_gain RemixEnv env,
RemixTrack track
 

RemixCount remix_track_get_mixlength RemixEnv env,
RemixTrack track
 

RemixTrack* remix_track_new RemixEnv env,
RemixDeck deck
 

RemixPCM remix_track_set_gain RemixEnv env,
RemixTrack track,
RemixPCM  gain
 

RemixCount remix_track_set_mixlength RemixEnv env,
RemixTrack track,
RemixCount  mixlength
 


Generated on Fri Jan 9 08:44:16 2004 for remix by doxygen 1.3.4