お世話になります。
 Windows10にMinGWをインストールして、G++を利用して、CPPのソースをコンパイルしようとしているんですが、下記のソースコードをコンパイルすると、エラーが発生します。

#define _USE_MATH_DEFINES
#include <cmath>
#include "beeps.h"

const int sampleRate=44100;
const int amplitude=14000;

int generateBeep(short* buf, const float hz, const int length, const int left, const int right) {
    const int samplesPerCycle=static_cast<int>(sampleRate/hz);
    int totalSamples=static_cast<int>((length/1000.0)/(1.0/sampleRate));
    totalSamples+=samplesPerCycle-(totalSamples%samplesPerCycle);
    if (!buf) { //just return buffer length
        return totalSamples*4;
    }
    const double lpan=(left/100.0)*amplitude, rpan=(right/100.0)*amplitude;
    const double sinFreq=(2.0*M_PI)/(sampleRate/hz); //DON'T use samplesPerCycle here
    for (int sampleNum=0; sampleNum<totalSamples; ++sampleNum) {
        const double sample=min(max(sin((sampleNum%sampleRate)*sinFreq)*2.0,-1.0),1.0);
        buf[sampleNum*2]=static_cast<short>(sample*lpan);
        buf[sampleNum*2+1]=static_cast<short>(sample*rpan);
    }
    return totalSamples*4;
}

 エラー内容は、下記のとおりです。

beeps.cpp:18:75: error: 'max' was not declared in this scope
const double sample=min(max(sin((sampleNum%sampleRate)*sinFreq)*2.0,-1.0),1.0);

beeps.cpp:18:80: error: 'min' was not declared in this scope
const double sample=min(max(sin((sampleNum%sampleRate)*sinFreq)*2.0,-1.0),1.0);

 何かインストールが必要なパッケージ等があるのでしょうか。
 何か解決方法がありましたら、教えていただけると幸いです。
 よろしくお願いいたします。