Remarks
Loads a sound in RAW format contained inside a memory buffer.
You can manage how loaded sound will be added to the existing editing session through a previous call to the SetLoadingMode method.
You can limit the range of sound data that will be loaded from the given sound file with a previous call to the SetLoadingRange method.
Multi-channel formats are supported natively when the MultiChannelLoadingModeSet method has been invoked with the nMode parameter set to MULTICHAN_DOWNMIX_NONE while in other cases will be converted to stereo during the loading procedure.
In case you should need loading a specific single channel of the raw audio file, use the LoadSoundChannelFromRawMemory method.
A successful call to this method will fire the SoundLoadingStarted event followed by a number of SoundLoadingPerc events and finally by the SoundLoadingDone event.
IMPORTANT TOPIC: remember that the memory buffer containing song data must not be moved by the garbage collector and needs to be available till the call to the CloseSound method.
Syntax
[C++]
short control.LoadSoundFromRawMemory (
const VARIANT FAR& pBuffer,
long nBufferLen,
short nEncodeMode,
short bIsBigEndian,
long nFrequency,
long nChannels
);
|
|
Parameter
|
Description
|
|
|
pBuffer
|
Input buffer containing the original sound
|
nBufferLength
|
Length of the input buffer expressed in bytes
|
nEncodeMode
|
Encode mode used to encode the RAW file.
Supported values are the following:
Mnemonic constant
|
Numeric value
|
Meaning
|
RAW_ENCODE_PCM_U8
|
0
|
RAW PCM 8 bits Unsigned
|
RAW_ENCODE_PCM_S8
|
1
|
RAW PCM 8 bits Signed
|
RAW_ENCODE_PCM_S16
|
2
|
RAW PCM 16 bits Signed
|
RAW_ENCODE_PCM_S24
|
3
|
RAW PCM 24 bits Signed
|
RAW_ENCODE_PCM_S32
|
4
|
RAW PCM 32 bits Signed
|
RAW_ENCODE_FLOAT32
|
5
|
RAW 32 bits floating point
|
RAW_ENCODE_G711_ULAW
|
6
|
RAW G711 U-LAW
|
RAW_ENCODE_G711_ALAW
|
7
|
RAW G711 A-LAW
|
RAW_ENCODE_GSM_610
|
8
|
RAW GSM 6.10
|
RAW_ENCODE_DIALOGIC_VOX
|
9
|
RAW Dialogic ADPCM VOX
|
|
bIsBigEndian
|
Boolean flag that specifies if bits order inside the RAW file are little-endian or big-endian
Supported values are the following:
Mnemonic Value
|
Meaning
|
BOOL_FALSE
|
The RAW file is encoded using little-endian
|
BOOL_TRUE
|
The RAW file is encoded using big-endian
|
|
nFrequency
|
Sample rate of the RAW file (e.g. 44100)
|
nChannels
|
Number of channels of the RAW file: for example, 1 for Mono or 2 for Stereo, 6 for 5.1 formats and so on
|
Return value
Value
|
Meaning
|
|
|
Negative value
|
An error occurred, check the LastError property value in order to see the error code meaning
|
enumErrorCodes.ERR_NOERROR (0)
|
The method call was successful.
|
|