Add missing linear resampler to the option setting list
[openal-soft.git] / alc / buffer_storage.cpp
blob727cb281237836e621039bc6096ab86e947c7022
2 #include "config.h"
4 #include "buffer_storage.h"
6 #include <cstdint>
9 ALuint BytesFromFmt(FmtType type) noexcept
11 switch(type)
13 case FmtUByte: return sizeof(uint8_t);
14 case FmtShort: return sizeof(int16_t);
15 case FmtFloat: return sizeof(float);
16 case FmtDouble: return sizeof(double);
17 case FmtMulaw: return sizeof(uint8_t);
18 case FmtAlaw: return sizeof(uint8_t);
20 return 0;
22 ALuint ChannelsFromFmt(FmtChannels chans, ALuint ambiorder) noexcept
24 switch(chans)
26 case FmtMono: return 1;
27 case FmtStereo: return 2;
28 case FmtRear: return 2;
29 case FmtQuad: return 4;
30 case FmtX51: return 6;
31 case FmtX61: return 7;
32 case FmtX71: return 8;
33 case FmtBFormat2D: return (ambiorder*2) + 1;
34 case FmtBFormat3D: return (ambiorder+1) * (ambiorder+1);
36 return 0;