SOUND4 IMPACT FM.CL Library [2.0.0]
Loading...
Searching...
No Matches
Enumerations | Functions
Audio managing (any audio)

Process audio in any format and size. More...

Enumerations

enum  impactfm_SampleFormat {
  INVALID_FORMAT =0 , S16_LE , S16_BE , S24_LE ,
  S24_BE , S32_LE , S32_BE , F32_LE ,
  F32_BE , S16_NATIVE =S16_LE , S24_NATIVE =S24_LE , S32_NATIVE =S32_LE ,
  F32_NATIVE =F32_LE
}
 

Functions

const char * impactfm_GetFormatName (const enum impactfm_SampleFormat fmt)
 
enum impactfm_SampleFormat impactfm_GetFormatFromName (const char *name)
 
unsigned int impactfm_GetBytesFromFormat (const enum impactfm_SampleFormat fmt)
 
unsigned int impactfm_GetMaxPacketFrame (struct impactfm_CInstance *instance)
 
unsigned int impactfm_AddAudio (struct impactfm_CInstance *instance, const uint8_t *payload, unsigned int nFrame, enum impactfm_SampleFormat fmt)
 
unsigned int impactfm_AddPadAudio (struct impactfm_CInstance *instance)
 
unsigned int impactfm_GetOutputCount (struct impactfm_CInstance *instance)
 
unsigned int impactfm_GetAudio (struct impactfm_CInstance *instance, uint8_t *payload, unsigned int max_nFrame, enum impactfm_SampleFormat fmt)
 

Detailed Description

This allows various payload size and formats, at the expense of internal conversions. This can be useful when receiving audio from network.

Remarks
It is more optimized to use Direct processing.

Enumeration Type Documentation

◆ impactfm_SampleFormat

Supported formats for audio I/O

Enumerator
INVALID_FORMAT 

Invalid.

S16_LE 

16-bit signed integer, little-endian

S16_BE 

16-bit signed integer, big-endian

S24_LE 

24-bit signed integer, little-endian

S24_BE 

24-bit signed integer, big-endian

S32_LE 

32-bit signed integer, little-endian

S32_BE 

32-bit signed integer, big-endian

F32_LE 

32-bit floating-point, little-endian

F32_BE 

32-bit floating-point, big-endian

S16_NATIVE 

16-bit signed integer, native

S24_NATIVE 

24-bit signed integer, native

S32_NATIVE 

32-bit signed integer, native

F32_NATIVE 

32-bit floating-point, native

Definition at line 880 of file sound4.impactfm.cl.h.

Function Documentation

◆ impactfm_AddAudio()

unsigned int impactfm_AddAudio ( struct impactfm_CInstance *  instance,
const uint8_t *  payload,
unsigned int  nFrame,
enum impactfm_SampleFormat  fmt 
)

Convert and process the payload.

Parameters
instancethe processing instance
payloadthe binary raw audio buffer
nFramethe number of frames in the payload
fmtthe format of the payload
Returns
number of unprocessed frames (if can not store output) if non zero, consume output and restart where it stopped

◆ impactfm_AddPadAudio()

unsigned int impactfm_AddPadAudio ( struct impactfm_CInstance *  instance)

Add silence to finish the current audio chunk and process it

Parameters
instancethe processing instance
Returns
number of added silence frame

◆ impactfm_GetAudio()

unsigned int impactfm_GetAudio ( struct impactfm_CInstance *  instance,
uint8_t *  payload,
unsigned int  max_nFrame,
enum impactfm_SampleFormat  fmt 
)

Consume the output

Parameters
instancethe processing instance
payloadthe binary raw audio buffer to store output
max_nFramethe maximum number of frames that can be stored in the payload
fmtthe wanted format of the payload
Returns
number of frames put in the buffer

◆ impactfm_GetBytesFromFormat()

unsigned int impactfm_GetBytesFromFormat ( const enum impactfm_SampleFormat  fmt)

Get the format byte size

Parameters
fmtthe format
Returns
the number of bytes used by this format for a single channel audio sample

◆ impactfm_GetFormatFromName()

enum impactfm_SampleFormat impactfm_GetFormatFromName ( const char *  name)

Convert string to format

Parameters
namethe format string
Returns
the matching format, or INVALID_FORMAT if invalid.

◆ impactfm_GetFormatName()

const char * impactfm_GetFormatName ( const enum impactfm_SampleFormat  fmt)

Convert format to string

Parameters
fmtthe format
Returns
the string name of the format

◆ impactfm_GetMaxPacketFrame()

unsigned int impactfm_GetMaxPacketFrame ( struct impactfm_CInstance *  instance)

Maximum packet size (in frames) that can be queued at output.

Parameters
instanceThe process instance
Returns
Maximum packet size (in frames) that can be queued at output.

◆ impactfm_GetOutputCount()

unsigned int impactfm_GetOutputCount ( struct impactfm_CInstance *  instance)

Get the available output size

Parameters
instancethe processing instance
Returns
number of available frames at output