KallistiOS git master
Independent SDK for the Sega Dreamcast
Loading...
Searching...
No Matches
sip.h File Reference

Definitions for using the Sound Input Peripheral. More...

#include <sys/cdefs.h>
#include <sys/types.h>
#include <dc/maple.h>

Go to the source code of this file.

Data Structures

struct  sip_state_t
 SIP status structure. More...
 

Macros

#define SIP_SUBCOMMAND_GET_SAMPLES   0x01
 Get recorded samples from the microphone device.
 
#define SIP_SUBCOMMAND_BASIC_CTRL   0x02
 Start and stop sampling.
 
#define SIP_MIN_GAIN   0x00
 Minimum microphone gain.
 
#define SIP_DEFAULT_GAIN   0x0F
 Default microphone gain.
 
#define SIP_MAX_GAIN   0x1F
 Maximum microphone gain.
 
#define SIP_SAMPLE_16BIT_SIGNED   0x00
 Record 16-bit signed integer samples.
 
#define SIP_SAMPLE_8BIT_ULAW   0x01
 Record 8-bit ulaw samples.
 
#define SIP_SAMPLE_11KHZ   0x00
 Record samples at 11.025kHz.
 
#define SIP_SAMPLE_8KHZ   0x01
 Record samples at 8kHz.
 

Typedefs

typedef void(* sip_sample_cb) (maple_device_t *dev, uint8 *samples, size_t len)
 Type for a microphone sample callback.
 

Functions

int sip_set_gain (maple_device_t *dev, unsigned int g)
 Set the microphone's gain value.
 
int sip_set_sample_type (maple_device_t *dev, unsigned int type)
 Set the sample type to be recorded by the microphone.
 
int sip_set_frequency (maple_device_t *dev, unsigned int freq)
 Set the sample frequency to be recorded by the microphone.
 
int sip_start_sampling (maple_device_t *dev, sip_sample_cb cb, int block)
 Start sampling on a microphone.
 
int sip_stop_sampling (maple_device_t *dev, int block)
 Stop sampling on a microphone.
 

Detailed Description

Definitions for using the Sound Input Peripheral.

This file contains the definitions needed to access the Maple microphone type device (the Seaman mic). Many thanks go out to ZeZu who pointed me toward what some of the commands actually do in the original version of this driver.

As a note, the device itself is actually referred to by the system as the Sound Input Peripheral, so hence why this driver is named as it is.

Author
Lawrence Sebald