Go to the documentation of this file. 1 #define MINIAUDIO_IMPLEMENTATION
2 #include "../miniaudio.h"
31 printf(
"No input file.");
44 printf(
"Failed to initialize device.");
58 printf(
"Failed to initialize node graph.");
71 printf(
"Failed to initialize decoder.");
80 printf(
"Failed to initialize data source node.");
108 printf(
"Failed to initialize loop node.");
121 printf(
"Failed to initialize splitter node.");
173 printf(
"Press Enter to quit...");
void ma_device_uninit(ma_device *pDevice)
ma_result ma_device_start(ma_device *pDevice)
ma_data_source_node g_dataSourceNode
ma_result ma_decoder_uninit(ma_decoder *pDecoder)
MA_API ma_result ma_splitter_node_init(ma_node_graph *pNodeGraph, const ma_splitter_node_config *pConfig, const ma_allocation_callbacks *pAllocationCallbacks, ma_splitter_node *pSplitterNode)
ma_decoder_config ma_decoder_config_init(ma_format outputFormat, ma_uint32 outputChannels, ma_uint32 outputSampleRate)
MA_API ma_result ma_node_graph_read_pcm_frames(ma_node_graph *pNodeGraph, void *pFramesOut, ma_uint32 frameCount, ma_uint32 *pFramesRead)
@ ma_device_type_playback
ma_device_callback_proc dataCallback
MA_API ma_splitter_node_config ma_splitter_node_config_init(ma_uint32 channels)
MA_API ma_node_graph_config ma_node_graph_config_init(ma_uint32 channels)
void data_callback(ma_device *pDevice, void *pFramesOut, const void *pFramesIn, ma_uint32 frameCount)
MA_API ma_result ma_node_set_output_bus_volume(ma_node *pNode, ma_uint32 outputBusIndex, float volume)
MA_API ma_data_source_node_config ma_data_source_node_config_init(ma_data_source *pDataSource, ma_bool32 looping)
ma_splitter_node g_loopNode
MA_API ma_node * ma_node_graph_get_endpoint(ma_node_graph *pNodeGraph)
int main(int argc, char **argv)
MA_API ma_result ma_node_graph_init(const ma_node_graph_config *pConfig, const ma_allocation_callbacks *pAllocationCallbacks, ma_node_graph *pNodeGraph)
MA_API ma_result ma_data_source_node_init(ma_node_graph *pNodeGraph, const ma_data_source_node_config *pConfig, const ma_allocation_callbacks *pAllocationCallbacks, ma_data_source_node *pDataSourceNode)
MA_API void ma_data_source_node_uninit(ma_data_source_node *pDataSourceNode, const ma_allocation_callbacks *pAllocationCallbacks)
ma_device_config ma_device_config_init(ma_device_type deviceType)
MA_API ma_result ma_node_attach_output_bus(ma_node *pNode, ma_uint32 outputBusIndex, ma_node *pOtherNode, ma_uint32 otherNodeInputBusIndex)
ma_result ma_decoder_init_file(const char *pFilePath, const ma_decoder_config *pConfig, ma_decoder *pDecoder)
ma_node_graph g_nodeGraph
ma_result ma_device_init(ma_context *pContext, const ma_device_config *pConfig, ma_device *pDevice)
ma_splitter_node g_splitterNode
MA_API void ma_node_graph_uninit(ma_node_graph *pNodeGraph, const ma_allocation_callbacks *pAllocationCallbacks)
struct ma_device_config::@97 playback
struct ma_device::@115 playback