Unknown
From BASSenc
BASS_Encode_StartACMFile
Sets up an encoder on a channel, using an ACM codec and writing the output to a file.
HENCODE BASS_Encode_StartACMFile(
DWORD handle,
void *form,
DWORD flags,
char *file
);
Parameters
| handle | The channel handle... a HSTREAM, HMUSIC, or HRECORD. | ||||||||||||
| form | ACM codec output format. | ||||||||||||
| flags | A combination of these flags.
| ||||||||||||
| file | The filename to write. |
Return value
The encoder handle is returned if the encoder is successfully started, else 0 is returned. Use BASS_ErrorGetCode to get the error code.Error codes
| BASS_ERROR_HANDLE | handle is not valid. |
| BASS_ERROR_NOTAVAIL | The codec specified in form couldn't be initialized. |
| BASS_ERROR_CREATE | The file could not be created. |
| BASS_ERROR_UNKNOWN | Some other mystery problem! |
Remarks
This function is identical to BASS_Encode_StartACM, except that it writes the encoded data to a file instead of a callback function.Unless the BASS_ENCODE_NOHEAD flag is specified, a WAVE header and the form contents will be written to the file. This is generally required for the file to be playable, but in some cases (eg. MP3) it's not. Standard RIFF WAV files are limited to a little over 4GB in size, so BASSenc will automatically stop encoding at that point. That size limit can be overcome with an RF64 file. When writing an RF64 WAV file, a standard RIFF header will still be written initially, which will only be replaced by an RF64 header at the end if the file size has exceeded the standard limit.