ladybird/Userland/Libraries/LibAudio/SampleFormats.cpp
kleines Filmröllchen 5d01db3493 LibAudio: Split Buffer.{h, cpp} into three files
The Buffer files had contained both the ResampleHelper and the
sample format utilities. Because the Buffer class (and its file) is
going to be deleted soon, this commit separates those two things into
their own files.
2022-02-26 17:57:55 +01:00

36 lines
713 B
C++

/*
* Copyright (c) 2022, kleines Filmröllchen <filmroellchen@serenityos.org>.
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#include "SampleFormats.h"
namespace Audio {
u16 pcm_bits_per_sample(PcmSampleFormat format)
{
switch (format) {
case Uint8:
return 8;
case Int16:
return 16;
case Int24:
return 24;
case Int32:
case Float32:
return 32;
case Float64:
return 64;
default:
VERIFY_NOT_REACHED();
}
}
String sample_format_name(PcmSampleFormat format)
{
bool is_float = format == Float32 || format == Float64;
return String::formatted("PCM {}bit {}", pcm_bits_per_sample(format), is_float ? "Float" : "LE");
}
}