Crate sunvox_sys

Crate sunvox_sys 

Source
Expand description

§sunvox-sys

FFI bindings to the Sunvox library (http://warmplace.ru/soft/sunvox).

Structs§

sunvox_note
A single note cell in a pattern.

Constants§

NOTECMD_ALL_NOTES_OFF
Notes of all synths off.
NOTECMD_CLEAN_SYNTHS
Stop and clean all synths.
NOTECMD_NOTE_OFF
Single note off.
NOTECMD_PLAY
NOTECMD_PREV_TRACK
Apply effect in this note cell to the corresponding one in the previous track.
NOTECMD_SET_PITCH
Change the pitch of a currently playing note.
NOTECMD_STOP
SV_INIT_FLAG_AUDIO_FLOAT32
Audio is float (c_float).
SV_INIT_FLAG_AUDIO_INT16
Audio is signed 16-bit (c_short).
SV_INIT_FLAG_NO_DEBUG_OUTPUT
Supresses debug output from the SunVox library.
SV_INIT_FLAG_ONE_THREAD
Audio callback and song modification functions are in a single thread.
SV_INIT_FLAG_USER_AUDIO_CALLBACK
Interaction with sound card is on the user side.
SV_MODULE_FLAG_EFFECT
SV_MODULE_FLAG_EXISTS
SV_MODULE_INPUTS_MASK
SV_MODULE_INPUTS_OFF
SV_MODULE_OUTPUTS_MASK
SV_MODULE_OUTPUTS_OFF
SV_STYPE_FLOAT32
SV_STYPE_FLOAT64
SV_STYPE_INT16
SV_STYPE_INT32

Functions§

sv_audio_callback
Gets the next piece of SunVox audio.
sv_close_slot
Closes a slot. See sv_open_slot() for more details.
sv_connect_module
Connects the source to the destination. USE LOCK/UNLOCK!
sv_deinit
Deinitializes the library.
sv_disconnect_module
Disconnects the source from the destination. USE LOCK/UNLOCK!
sv_end_of_song
Gets whether the project is stopped (ie. not playing).
sv_get_current_line
Gets the line number of the play cursor.
sv_get_current_line2
Gets the line number of the play in fixed point format: 27.5
sv_get_current_signal_level
Gets the current signal level/amplitude for a given audio channel in the range 0 to 255 inclusive.
sv_get_module_color
sv_get_module_ctl_name
sv_get_module_ctl_value
sv_get_module_flags
sv_get_module_inputs
sv_get_module_name
sv_get_module_outputs
sv_get_module_scope
sv_get_module_scope2
Return value: received number of samples (may be less or equal to samples_to_read).
sv_get_module_xy
sv_get_number_of_module_ctls
sv_get_number_of_modules
Gets the number of modules in the currently loaded project?
sv_get_number_of_patterns
sv_get_pattern_data
How to use sv_get_pattern_data():
sv_get_pattern_lines
sv_get_pattern_tracks
sv_get_pattern_x
sv_get_pattern_y
sv_get_sample_type
Gets the internal sample type of the SunVox engine.
sv_get_song_bpm
Gets the Beats Per Minute of the currently loaded project.
sv_get_song_length_frames
Gets the currently loaded song’s length in audio samples/frames.
sv_get_song_length_lines
Gets the currently loaded song’s length in pattern lines.
sv_get_song_name
Gets the name of the currently loaded project.
sv_get_song_tpl
Gets the Ticks Per Line of the currently loaded project.
sv_get_ticks
Gets the current tick counter (from 0 to 0xFFFFFFFF).
sv_get_ticks_per_second
Gets the number of SunVox ticks per second.
sv_init
Initializes the library.
sv_load
Loads a SunVox project file into the specified slot.
sv_load_from_memory
Loads a SunVox project from file data in memory. TEST
sv_load_module
Loads a module.
sv_lock_slot
Locks a slot.
sv_new_module
Creates a new module. USE LOCK/UNLOCK!
sv_open_slot
Opens a slot.
sv_pattern_mute
USE LOCK/UNLOCK!
sv_play
Starts playing the project from the current play cursor position.
sv_play_from_beginning
Starts playing the project from the beginning.
sv_remove_module
Removes the specified module. USE LOCK/UNLOCK!
sv_rewind
Rewinds the project to the beginning.
sv_sampler_load
Loads a sample to an existing Sampler.
sv_send_event
Causes an event to occur as though it had been played in a pattern.
sv_set_autostop
Enables or disables autostop.
sv_stop
Stops playing the project. The play cursor stays where it is.
sv_unlock_slot
Unlocks a slot. See sv_lock_slot() for more details.
sv_volume
Sets the volume of the project.