audio: make system own master gain semantics
This commit is contained in:
@@ -23,16 +23,6 @@ namespace {
|
||||
|
||||
#ifdef _WIN32
|
||||
|
||||
TEST(WaveOutBackend, MasterVolumeIsClampedToValidRange) {
|
||||
WaveOut::WaveOutBackend backend;
|
||||
|
||||
backend.SetMasterVolume(1.5f);
|
||||
EXPECT_FLOAT_EQ(backend.GetMasterVolume(), 1.0f);
|
||||
|
||||
backend.SetMasterVolume(-0.5f);
|
||||
EXPECT_FLOAT_EQ(backend.GetMasterVolume(), 0.0f);
|
||||
}
|
||||
|
||||
TEST(WaveOutBackend, ProcessAudioCopiesOnlyRequestedSamplesIntoPendingMixBuffer) {
|
||||
WaveOut::WaveOutBackend backend;
|
||||
backend.m_pendingMixBuffer.assign(8, 1.0f);
|
||||
@@ -71,24 +61,17 @@ TEST(WaveOutBackend, SetDeviceRejectsHotSwitchAfterOpen) {
|
||||
backend.m_hWaveOut = nullptr;
|
||||
}
|
||||
|
||||
TEST(WaveOutBackend, FillPcm16BufferAppliesVolumeClampAndMute) {
|
||||
TEST(WaveOutBackend, FillPcm16BufferClampsSamplesToPcm16Range) {
|
||||
std::vector<float> input = {-2.0f, -0.5f, 0.5f, 2.0f};
|
||||
std::vector<int16_t> output(4, 123);
|
||||
|
||||
WaveOut::WaveOutBackend::FillPcm16Buffer(output, input, 0.5f, false);
|
||||
WaveOut::WaveOutBackend::FillPcm16Buffer(output, input);
|
||||
|
||||
ASSERT_EQ(output.size(), 4u);
|
||||
EXPECT_EQ(output[0], -32767);
|
||||
EXPECT_EQ(output[1], -8191);
|
||||
EXPECT_EQ(output[2], 8191);
|
||||
EXPECT_EQ(output[1], -16383);
|
||||
EXPECT_EQ(output[2], 16383);
|
||||
EXPECT_EQ(output[3], 32767);
|
||||
|
||||
WaveOut::WaveOutBackend::FillPcm16Buffer(output, input, 1.0f, true);
|
||||
|
||||
EXPECT_EQ(output[0], 0);
|
||||
EXPECT_EQ(output[1], 0);
|
||||
EXPECT_EQ(output[2], 0);
|
||||
EXPECT_EQ(output[3], 0);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user