Native
NAME
OpenMPT::Bindings::Native - Raw NativeCall declarations for libopenmpt
DESCRIPTION
Provides is export subroutines for every function exported by
libopenmpt.so. These are thin FFI wrappers ā most users will want
the OOP interface in OpenMPT::Bindings::Module instead.
FUNCTION GROUPS
Library info
openmpt_get_library_version() returns uint32
openmpt_get_core_version() returns uint32
openmpt_get_string(Str $key) returns Pointer[uint8] (free)
openmpt_get_supported_extensions() returns Pointer[uint8] (free)
openmpt_is_extension_supported(Str) returns int32
openmpt_free_string(Pointer[uint8])
Error utilities
openmpt_error_is_transient(int32 $error) returns int32
openmpt_error_string(int32 $error) returns Pointer[uint8] (const, do not free)
File probing
openmpt_probe_file_header_get_recommended_size() returns size_t
openmpt_probe_file_header(...) returns int32
openmpt_probe_file_header_without_filesize(...) returns int32
Module creation/destruction
openmpt_module_create_from_memory2(...) returns Pointer[void]
openmpt_module_destroy(Pointer[void])
Per-module log/error
openmpt_module_set_log_func(Pointer[void], &, Pointer[void])
openmpt_module_set_error_func(Pointer[void], &, Pointer[void])
openmpt_module_error_get_last(Pointer[void]) returns int32
openmpt_module_error_get_last_message(Pointer[void]) returns Pointer[uint8] (free)
openmpt_module_error_set_last(Pointer[void], int32)
openmpt_module_error_clear(Pointer[void])
Playback control
openmpt_module_select_subsong(Pointer[void], int32) returns int32
openmpt_module_get_selected_subsong(Pointer[void]) returns int32
openmpt_module_set_repeat_count(Pointer[void], int32) returns int32
openmpt_module_get_repeat_count(Pointer[void]) returns int32
Position / duration
openmpt_module_get_duration_seconds(Pointer[void]) returns num64
openmpt_module_set_position_seconds(Pointer[void], num64) returns num64
openmpt_module_get_position_seconds(Pointer[void]) returns num64
openmpt_module_set_position_order_row(Pointer[void], int32, int32) returns num64
openmpt_module_get_time_at_position(Pointer[void], int32, int32) returns num64
Render parameters
openmpt_module_get_render_param(Pointer[void], int32, Pointer[int32]) returns int32
openmpt_module_set_render_param(Pointer[void], int32, int32) returns int32
Audio rendering ā float
openmpt_module_read_float_mono(Pointer[void], int32, size_t, CArray[num32]) returns size_t
openmpt_module_read_float_stereo(Pointer[void], int32, size_t, CArray[num32], CArray[num32]) returns size_t
openmpt_module_read_float_quad(Pointer[void], int32, size_t, CArray[num32], CArray[num32], CArray[num32], CArray[num32]) returns size_t
openmpt_module_read_interleaved_float_stereo(Pointer[void], int32, size_t, CArray[num32]) returns size_t
openmpt_module_read_interleaved_float_quad(Pointer[void], int32, size_t, CArray[num32]) returns size_t
Audio rendering ā int16
openmpt_module_read_mono(Pointer[void], int32, size_t, CArray[int16]) returns size_t
openmpt_module_read_stereo(Pointer[void], int32, size_t, CArray[int16], CArray[int16]) returns size_t
openmpt_module_read_quad(Pointer[void], int32, size_t, CArray[int16], CArray[int16], CArray[int16], CArray[int16]) returns size_t
openmpt_module_read_interleaved_stereo(Pointer[void], int32, size_t, CArray[int16]) returns size_t
openmpt_module_read_interleaved_quad(Pointer[void], int32, size_t, CArray[int16]) returns size_t
Metadata
openmpt_module_get_metadata(Pointer[void], Str $key) returns Pointer[uint8] (free)
openmpt_module_get_metadata_keys(Pointer[void]) returns Pointer[uint8] (free)
Module info ā counts
openmpt_module_get_num_subsongs(Pointer[void]) returns int32
openmpt_module_get_num_channels(Pointer[void]) returns int32
openmpt_module_get_num_orders(Pointer[void]) returns int32
openmpt_module_get_num_patterns(Pointer[void]) returns int32
openmpt_module_get_num_instruments(Pointer[void]) returns int32
openmpt_module_get_num_samples(Pointer[void]) returns int32
openmpt_module_get_restart_order(Pointer[void], int32) returns int32
openmpt_module_get_restart_row(Pointer[void], int32) returns int32
Module info ā names (must free)
openmpt_module_get_subsong_name(Pointer[void], int32) returns Pointer[uint8] (free)
openmpt_module_get_channel_name(Pointer[void], int32) returns Pointer[uint8] (free)
openmpt_module_get_order_name(Pointer[void], int32) returns Pointer[uint8] (free)
openmpt_module_get_pattern_name(Pointer[void], int32) returns Pointer[uint8] (free)
openmpt_module_get_instrument_name(Pointer[void], int32) returns Pointer[uint8] (free)
openmpt_module_get_sample_name(Pointer[void], int32) returns Pointer[uint8] (free)
Playback status
openmpt_module_get_current_estimated_bpm(Pointer[void]) returns num64
openmpt_module_get_current_speed(Pointer[void]) returns int32
openmpt_module_get_current_tempo(Pointer[void]) returns int32 (deprecated)
openmpt_module_get_current_tempo2(Pointer[void]) returns num64
openmpt_module_get_current_order(Pointer[void]) returns int32
openmpt_module_get_current_pattern(Pointer[void]) returns int32
openmpt_module_get_current_row(Pointer[void]) returns int32
openmpt_module_get_current_playing_channels(Pointer[void]) returns int32
openmpt_module_get_current_channel_vu_mono(Pointer[void], int32) returns num32
openmpt_module_get_current_channel_vu_left(Pointer[void], int32) returns num32
openmpt_module_get_current_channel_vu_right(Pointer[void], int32) returns num32
openmpt_module_get_current_channel_vu_rear_left(Pointer[void], int32) returns num32
openmpt_module_get_current_channel_vu_rear_right(Pointer[void], int32) returns num32
Pattern / order access
openmpt_module_get_order_pattern(Pointer[void], int32) returns int32
openmpt_module_is_order_skip_entry(Pointer[void], int32) returns int32
openmpt_module_is_order_stop_entry(Pointer[void], int32) returns int32
openmpt_module_is_pattern_skip_item(Pointer[void], int32) returns int32
openmpt_module_is_pattern_stop_item(Pointer[void], int32) returns int32
openmpt_module_get_pattern_num_rows(Pointer[void], int32) returns int32
openmpt_module_get_pattern_rows_per_beat(Pointer[void], int32) returns int32
openmpt_module_get_pattern_rows_per_measure(Pointer[void], int32) returns int32
openmpt_module_get_pattern_row_channel_command(Pointer[void], int32, int32, int32, int32) returns uint8
openmpt_module_format_pattern_row_channel_command(Pointer[void], int32, int32, int32, int32) returns Pointer[uint8] (free)
openmpt_module_highlight_pattern_row_channel_command(Pointer[void], int32, int32, int32, int32) returns Pointer[uint8] (free)
openmpt_module_format_pattern_row_channel(Pointer[void], int32, int32, int32, size_t, int32) returns Pointer[uint8] (free)
openmpt_module_highlight_pattern_row_channel(Pointer[void], int32, int32, int32, size_t, int32) returns Pointer[uint8] (free)
CTL interface
openmpt_module_get_ctls(Pointer[void]) returns Pointer[uint8] (free)
openmpt_module_ctl_get_boolean(Pointer[void], Str) returns int32
openmpt_module_ctl_get_integer(Pointer[void], Str) returns int64
openmpt_module_ctl_get_floatingpoint(Pointer[void], Str) returns num64
openmpt_module_ctl_get_text(Pointer[void], Str) returns Pointer[uint8] (free)
openmpt_module_ctl_set_boolean(Pointer[void], Str, int32) returns int32
openmpt_module_ctl_set_integer(Pointer[void], Str, int64) returns int32
openmpt_module_ctl_set_floatingpoint(Pointer[void], Str, num64) returns int32
openmpt_module_ctl_set_text(Pointer[void], Str, Str) returns int32
NOTES
Functions marked (free) return allocated strings that must be freed
with openmpt_free_string. The exception is openmpt_error_string
which returns a const char* ā do not free its result.
SEE ALSO
OpenMPT::Bindings::Module ā OOP wrapper around these subroutines
https://lib.openmpt.org/ ā libopenmpt project