BOOL WINAPI MpqAddWaveFromBuffer_stub(MPQHANDLE hMPQ, LPVOID lpBuffer, DWORD dwLength, LPCSTR lpFileName, DWORD dwFlags, DWORD dwQuality)
{
	LoadSFMpqDll();
	if (hSFMpq) {
		*(FARPROC *)&MpqAddWaveFromBuffer = GetProcAddress(hSFMpq,"MpqAddWaveFromBuffer");
		if (MpqAddWaveFromBuffer) return MpqAddWaveFromBuffer(hMPQ,lpBuffer,dwLength,lpFileName,dwFlags,dwQuality);
	}
	return FALSE;
}
Example #2
0
bool WavBufferToArchive(MPQHANDLE &hMpq, const buffer &buf, const std::string &mpqFilePath, WavQuality wavQuality)
{
    if ( hMpq == nullptr )
        CHKD_ERR("NULL MPQ file specified for writing WAV buffer");
    else
    {
        DWORD dwWavQuality = (DWORD)wavQuality;
        DWORD dataSize = (DWORD)buf.size();
        LPVOID dataPointer = (LPVOID)buf.getPtr(0);
        if ( MpqAddWaveFromBuffer(hMpq, dataPointer, dataSize, mpqFilePath.c_str(), MAFA_COMPRESS | MAFA_REPLACE_EXISTING, dwWavQuality) == TRUE )
            return true;
        else
            CHKD_ERR("Failed to add buffered file to archive");
    }
    return false;
}