diff --git a/src/OpenAL/Extensions/Silk.NET.OpenAL.Extensions.EXT/Enums/MCBufferFormat.cs b/src/OpenAL/Extensions/Silk.NET.OpenAL.Extensions.EXT/Enums/MCBufferFormat.cs new file mode 100644 index 0000000000..9c39fa106b --- /dev/null +++ b/src/OpenAL/Extensions/Silk.NET.OpenAL.Extensions.EXT/Enums/MCBufferFormat.cs @@ -0,0 +1,77 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +namespace Silk.NET.OpenAL.Extensions.EXT.Enums +{ + /// + /// Defines valid format specifiers for sound samples. This covers the additions from the OpenAL multi-channel buffers + /// extension. + /// + public enum MCBufferFormat + { + /// + /// 4 channels, unsigned 8-bit + /// + Quad8 = 0x1204, + /// + /// 4 channels, signed 16-bit + /// + Quad16 = 0x1205, + /// + /// 4 channels, 32-bit float + /// + Quad32 = 0x1206, + + /// + /// 2 channels, unsigned 8-bit + /// + Rear8 = 0x1207, + /// + /// 2 channels, signed 16-bit + /// + Rear16 = 0x1208, + /// + /// 2 channels, 32-bit float + /// + Rear32 = 0x1209, + + /// + /// 5.1 (6 channels), unsigned 8-bit + /// + S51Chn8 = 0x120A, + /// + /// 5.1 (6 channels), signed 16-bit + /// + S51Chn16 = 0x120B, + /// + /// 5.1 (6 channels), 32-bit float + /// + S51Chn32 = 0x120C, + + /// + /// 6.1 (7 channels), unsigned 8-bit + /// + S61Chn8 = 0x120D, + /// + /// 6.1 (7 channels), signed 16-bit + /// + S61Chn16 = 0x120E, + /// + /// 6.1 (7 channels), 32-bit float + /// + S61Chn32 = 0x120F, + + /// + /// 7.1 (8 channels), unsigned 8-bit + /// + S71Chn8 = 0x1210, + /// + /// 7.1 (8 channels), signed 16-bit + /// + S71Chn16 = 0x1211, + /// + /// 7.1 (8 channels), 32-bit float + /// + S71Chn32 = 0x1212 + } +} diff --git a/src/OpenAL/Extensions/Silk.NET.OpenAL.Extensions.EXT/MCFormats.cs b/src/OpenAL/Extensions/Silk.NET.OpenAL.Extensions.EXT/MCFormats.cs new file mode 100644 index 0000000000..56fd817bce --- /dev/null +++ b/src/OpenAL/Extensions/Silk.NET.OpenAL.Extensions.EXT/MCFormats.cs @@ -0,0 +1,26 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. + +using Silk.NET.Core.Attributes; +using Silk.NET.Core.Contexts; +using Silk.NET.Core.Native; +using Silk.NET.OpenAL.Extensions.EXT.Enums; + +namespace Silk.NET.OpenAL.Extensions.EXT +{ + + /// + /// Exposes the OpenAL multi-channel buffers extension. + /// + [Extension("AL_EXT_MCFORMATS")] + [NativeApi(Prefix = "al")] + public partial class MCFormats : FormatExtensionBase + { + /// + public MCFormats(INativeContext ctx) + : base(ctx) + { + } + } + +}