#include <vct.h>
typedef struct
{
VCTSession* session;
u32 numSession;
VCTMode mode;
u8 aid;
void* audioBuffer;
u32 audioBufferSize;
VCTEventCallback callback;
void* userData;
} VCTConfig;
session | An area to store the VCTSession VCTSession Structure. |
numSession | Number of sessions. |
mode | Specifies VoiceChat Library operational mode. |
aid | Enter the AID of terminals. |
audioBuffer | Buffer for audio streaming. Specify the address aligned with 32 bytes. |
audioBufferSize | Size of audioBuffer. |
callback | VoiceChat Library event callback function. |
userData | Data to be delivered to the event callback function. |
VCTConfig is a structure used to initialize VoiceChat Library and to call the VCT_Init
function.
For a session argument, specify the area that can store the VCTSession
structure for numSession. The mode dictates the number of necessary sessions as defined by the following:
Telephone Mode | One (two in case an interruption request is processed) |
Transceiver Mode | One |
Conference Mode | The maximum number of players - 1 (e.g. three for a four-player conference) |
A receiving buffer of audio data specified by audioBuffer and audioBufferSize absorbs network jitters in the audio reception. If this buffer is less than 100ms, audio playback is frequently interrupted. At least 250ms should be reserved to optimize audio playback. audioBufferSize must be integral multiples of VCT_AUDIO_BUFFER_SIZE
.
Each VoiceChat Library packet length is 68ms and uses the following structures:
/* 68ms x 4 = 272ms */
static u8 stAudioBuffer[4 * VCT_AUDIO_BUFFER_SIZE] ATTRIBUTE_ALIGN(32);
config.audioBuffer = stAudioBuffer;
config.audioBufferSize = 4 * VCT_AUDIO_BUFFER_SIZE;
For situations where the number of conversation participants increases (such as Conference Mode), the buffer should be appropriately increased to accommodate the additional players. When four players participate in a conference, the buffer sizes must triple to accommodate the tripled amount of received data.
2006/04/13 A transmitting interval was changed from 64ms to 68ms.
2006/04/10 Descriptions regarding modified initialization parameters and recommended parameters were added.
2006/04/06 A description regarding transmitting interval adjustment was modified.
2006/01/25 First release