// ReSharper disable InconsistentNaming
namespace Bmp.Core.FFMpeg.CsCorePorts;
//Copied from NAudio (including a few modifications)
///
/// Defines all known encoding types. Primary used in the class. See
/// .
///
public enum AudioEncoding : short
{
/// WAVE_FORMAT_UNKNOWN, Microsoft Corporation
Unknown = 0x0000,
/// WAVE_FORMAT_PCM Microsoft Corporation
Pcm = 0x0001,
/// WAVE_FORMAT_ADPCM Microsoft Corporation
Adpcm = 0x0002,
/// WAVE_FORMAT_IEEE_FLOAT Microsoft Corporation
IeeeFloat = 0x0003,
/// WAVE_FORMAT_VSELP Compaq Computer Corp.
Vselp = 0x0004,
/// WAVE_FORMAT_IBM_CVSD IBM Corporation
IbmCvsd = 0x0005,
/// WAVE_FORMAT_ALAW Microsoft Corporation
ALaw = 0x0006,
/// WAVE_FORMAT_MULAW Microsoft Corporation
MuLaw = 0x0007,
/// WAVE_FORMAT_DTS Microsoft Corporation
Dts = 0x0008,
/// WAVE_FORMAT_DRM Microsoft Corporation
Drm = 0x0009,
/// WAVE_FORMAT_WMAVOICE9
WmaVoice9 = 0x000A,
/// WAVE_FORMAT_OKI_ADPCM OKI
OkiAdpcm = 0x0010,
/// WAVE_FORMAT_DVI_ADPCM Intel Corporation
DviAdpcm = 0x0011,
/// WAVE_FORMAT_IMA_ADPCM Intel Corporation
ImaAdpcm = DviAdpcm,
/// WAVE_FORMAT_MEDIASPACE_ADPCM Videologic
MediaspaceAdpcm = 0x0012,
/// WAVE_FORMAT_SIERRA_ADPCM Sierra Semiconductor Corp
SierraAdpcm = 0x0013,
/// WAVE_FORMAT_G723_ADPCM Antex Electronics Corporation
G723Adpcm = 0x0014,
/// WAVE_FORMAT_DIGISTD DSP Solutions, Inc.
DigiStd = 0x0015,
/// WAVE_FORMAT_DIGIFIX DSP Solutions, Inc.
DigiFix = 0x0016,
/// WAVE_FORMAT_DIALOGIC_OKI_ADPCM Dialogic Corporation
DialogicOkiAdpcm = 0x0017,
/// WAVE_FORMAT_MEDIAVISION_ADPCM Media Vision, Inc.
MediaVisionAdpcm = 0x0018,
/// WAVE_FORMAT_CU_CODEC Hewlett-Packard Company
CUCodec = 0x0019,
/// WAVE_FORMAT_YAMAHA_ADPCM Yamaha Corporation of America
YamahaAdpcm = 0x0020,
/// WAVE_FORMAT_SONARC Speech Compression
SonarC = 0x0021,
/// WAVE_FORMAT_DSPGROUP_TRUESPEECH DSP Group, Inc
DspGroupTrueSpeech = 0x0022,
/// WAVE_FORMAT_ECHOSC1 Echo Speech Corporation
EchoSpeechCorporation1 = 0x0023,
/// WAVE_FORMAT_AUDIOFILE_AF36, Virtual Music, Inc.
AudioFileAf36 = 0x0024,
/// WAVE_FORMAT_APTX Audio Processing Technology
Aptx = 0x0025,
/// WAVE_FORMAT_AUDIOFILE_AF10, Virtual Music, Inc.
AudioFileAf10 = 0x0026,
/// WAVE_FORMAT_PROSODY_1612, Aculab plc
Prosody1612 = 0x0027,
/// WAVE_FORMAT_LRC, Merging Technologies S.A.
Lrc = 0x0028,
/// WAVE_FORMAT_DOLBY_AC2, Dolby Laboratories
DolbyAc2 = 0x0030,
/// WAVE_FORMAT_GSM610, Microsoft Corporation
Gsm610 = 0x0031,
/// WAVE_FORMAT_MSNAUDIO, Microsoft Corporation
MsnAudio = 0x0032,
/// WAVE_FORMAT_ANTEX_ADPCME, Antex Electronics Corporation
AntexAdpcme = 0x0033,
/// WAVE_FORMAT_CONTROL_RES_VQLPC, Control Resources Limited
ControlResVqlpc = 0x0034,
/// WAVE_FORMAT_DIGIREAL, DSP Solutions, Inc.
DigiReal = 0x0035,
/// WAVE_FORMAT_DIGIADPCM, DSP Solutions, Inc.
DigiAdpcm = 0x0036,
/// WAVE_FORMAT_CONTROL_RES_CR10, Control Resources Limited
ControlResCr10 = 0x0037,
/// WAVE_FORMAT_NMS_VBXADPCM
WAVE_FORMAT_NMS_VBXADPCM = 0x0038, // Natural MicroSystems
/// WAVE_FORMAT_CS_IMAADPCM
WAVE_FORMAT_CS_IMAADPCM = 0x0039, // Crystal Semiconductor IMA ADPCM
/// WAVE_FORMAT_ECHOSC3
WAVE_FORMAT_ECHOSC3 = 0x003A, // Echo Speech Corporation
/// WAVE_FORMAT_ROCKWELL_ADPCM
WAVE_FORMAT_ROCKWELL_ADPCM = 0x003B, // Rockwell International
/// WAVE_FORMAT_ROCKWELL_DIGITALK
WAVE_FORMAT_ROCKWELL_DIGITALK = 0x003C, // Rockwell International
/// WAVE_FORMAT_XEBEC
WAVE_FORMAT_XEBEC = 0x003D, // Xebec Multimedia Solutions Limited
/// WAVE_FORMAT_G721_ADPCM
WAVE_FORMAT_G721_ADPCM = 0x0040, // Antex Electronics Corporation
/// WAVE_FORMAT_G728_CELP
WAVE_FORMAT_G728_CELP = 0x0041, // Antex Electronics Corporation
/// WAVE_FORMAT_MSG723
WAVE_FORMAT_MSG723 = 0x0042, // Microsoft Corporation
/// WAVE_FORMAT_MPEG, Microsoft Corporation
Mpeg = 0x0050,
/// WAVE_FORMAT_RT24
WAVE_FORMAT_RT24 = 0x0052, // InSoft, Inc.
/// WAVE_FORMAT_PAC
WAVE_FORMAT_PAC = 0x0053, // InSoft, Inc.
/// WAVE_FORMAT_MPEGLAYER3, ISO/MPEG Layer3 Format Tag
MpegLayer3 = 0x0055,
/// WAVE_FORMAT_LUCENT_G723
WAVE_FORMAT_LUCENT_G723 = 0x0059, // Lucent Technologies
/// WAVE_FORMAT_CIRRUS
WAVE_FORMAT_CIRRUS = 0x0060, // Cirrus Logic
/// WAVE_FORMAT_ESPCM
WAVE_FORMAT_ESPCM = 0x0061, // ESS Technology
/// WAVE_FORMAT_VOXWARE
WAVE_FORMAT_VOXWARE = 0x0062, // Voxware Inc
/// WAVE_FORMAT_CANOPUS_ATRAC
WAVE_FORMAT_CANOPUS_ATRAC = 0x0063, // Canopus, co., Ltd.
/// WAVE_FORMAT_G726_ADPCM
WAVE_FORMAT_G726_ADPCM = 0x0064, // APICOM
/// WAVE_FORMAT_G722_ADPCM
WAVE_FORMAT_G722_ADPCM = 0x0065, // APICOM
/// WAVE_FORMAT_DSAT_DISPLAY
WAVE_FORMAT_DSAT_DISPLAY = 0x0067, // Microsoft Corporation
/// WAVE_FORMAT_VOXWARE_BYTE_ALIGNED
WAVE_FORMAT_VOXWARE_BYTE_ALIGNED = 0x0069, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_AC8
WAVE_FORMAT_VOXWARE_AC8 = 0x0070, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_AC10
WAVE_FORMAT_VOXWARE_AC10 = 0x0071, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_AC16
WAVE_FORMAT_VOXWARE_AC16 = 0x0072, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_AC20
WAVE_FORMAT_VOXWARE_AC20 = 0x0073, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_RT24
WAVE_FORMAT_VOXWARE_RT24 = 0x0074, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_RT29
WAVE_FORMAT_VOXWARE_RT29 = 0x0075, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_RT29HW
WAVE_FORMAT_VOXWARE_RT29HW = 0x0076, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_VR12
WAVE_FORMAT_VOXWARE_VR12 = 0x0077, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_VR18
WAVE_FORMAT_VOXWARE_VR18 = 0x0078, // Voxware Inc
/// WAVE_FORMAT_VOXWARE_TQ40
WAVE_FORMAT_VOXWARE_TQ40 = 0x0079, // Voxware Inc
/// WAVE_FORMAT_SOFTSOUND
WAVE_FORMAT_SOFTSOUND = 0x0080, // Softsound, Ltd.
/// WAVE_FORMAT_VOXWARE_TQ60
WAVE_FORMAT_VOXWARE_TQ60 = 0x0081, // Voxware Inc
/// WAVE_FORMAT_MSRT24
WAVE_FORMAT_MSRT24 = 0x0082, // Microsoft Corporation
/// WAVE_FORMAT_G729A
WAVE_FORMAT_G729A = 0x0083, // AT&T Labs, Inc.
/// WAVE_FORMAT_MVI_MVI2
WAVE_FORMAT_MVI_MVI2 = 0x0084, // Motion Pixels
/// WAVE_FORMAT_DF_G726
WAVE_FORMAT_DF_G726 = 0x0085, // DataFusion Systems (Pty) (Ltd)
/// WAVE_FORMAT_DF_GSM610
WAVE_FORMAT_DF_GSM610 = 0x0086, // DataFusion Systems (Pty) (Ltd)
/// WAVE_FORMAT_ISIAUDIO
WAVE_FORMAT_ISIAUDIO = 0x0088, // Iterated Systems, Inc.
/// WAVE_FORMAT_ONLIVE
WAVE_FORMAT_ONLIVE = 0x0089, // OnLive! Technologies, Inc.
/// WAVE_FORMAT_SBC24
WAVE_FORMAT_SBC24 = 0x0091, // Siemens Business Communications Sys
/// WAVE_FORMAT_DOLBY_AC3_SPDIF
WAVE_FORMAT_DOLBY_AC3_SPDIF = 0x0092, // Sonic Foundry
/// WAVE_FORMAT_MEDIASONIC_G723
WAVE_FORMAT_MEDIASONIC_G723 = 0x0093, // MediaSonic
/// WAVE_FORMAT_PROSODY_8KBPS
WAVE_FORMAT_PROSODY_8KBPS = 0x0094, // Aculab plc
/// WAVE_FORMAT_ZYXEL_ADPCM
WAVE_FORMAT_ZYXEL_ADPCM = 0x0097, // ZyXEL Communications, Inc.
/// WAVE_FORMAT_PHILIPS_LPCBB
WAVE_FORMAT_PHILIPS_LPCBB = 0x0098, // Philips Speech Processing
/// WAVE_FORMAT_PACKED
WAVE_FORMAT_PACKED = 0x0099, // Studer Professional Audio AG
/// WAVE_FORMAT_MALDEN_PHONYTALK
WAVE_FORMAT_MALDEN_PHONYTALK = 0x00A0, // Malden Electronics Ltd.
/// WAVE_FORMAT_GSM
Gsm = 0x00A1,
/// WAVE_FORMAT_G729
G729 = 0x00A2,
/// WAVE_FORMAT_G723
G723 = 0x00A3,
/// WAVE_FORMAT_ACELP
Acelp = 0x00A4,
///
/// WAVE_FORMAT_RAW_AAC1
///
RawAac = 0x00FF,
/// WAVE_FORMAT_RHETOREX_ADPCM
WAVE_FORMAT_RHETOREX_ADPCM = 0x0100, // Rhetorex Inc.
/// WAVE_FORMAT_IRAT
WAVE_FORMAT_IRAT = 0x0101, // BeCubed Software Inc.
/// WAVE_FORMAT_VIVO_G723
WAVE_FORMAT_VIVO_G723 = 0x0111, // Vivo Software
/// WAVE_FORMAT_VIVO_SIREN
WAVE_FORMAT_VIVO_SIREN = 0x0112, // Vivo Software
/// WAVE_FORMAT_DIGITAL_G723
WAVE_FORMAT_DIGITAL_G723 = 0x0123, // Digital Equipment Corporation
/// WAVE_FORMAT_SANYO_LD_ADPCM
WAVE_FORMAT_SANYO_LD_ADPCM = 0x0125, // Sanyo Electric Co., Ltd.
/// WAVE_FORMAT_SIPROLAB_ACEPLNET
WAVE_FORMAT_SIPROLAB_ACEPLNET = 0x0130, // Sipro Lab Telecom Inc.
/// WAVE_FORMAT_SIPROLAB_ACELP4800
WAVE_FORMAT_SIPROLAB_ACELP4800 = 0x0131, // Sipro Lab Telecom Inc.
/// WAVE_FORMAT_SIPROLAB_ACELP8V3
WAVE_FORMAT_SIPROLAB_ACELP8V3 = 0x0132, // Sipro Lab Telecom Inc.
/// WAVE_FORMAT_SIPROLAB_G729
WAVE_FORMAT_SIPROLAB_G729 = 0x0133, // Sipro Lab Telecom Inc.
/// WAVE_FORMAT_SIPROLAB_G729A
WAVE_FORMAT_SIPROLAB_G729A = 0x0134, // Sipro Lab Telecom Inc.
/// WAVE_FORMAT_SIPROLAB_KELVIN
WAVE_FORMAT_SIPROLAB_KELVIN = 0x0135, // Sipro Lab Telecom Inc.
/// WAVE_FORMAT_G726ADPCM
WAVE_FORMAT_G726ADPCM = 0x0140, // Dictaphone Corporation
/// WAVE_FORMAT_QUALCOMM_PUREVOICE
WAVE_FORMAT_QUALCOMM_PUREVOICE = 0x0150, // Qualcomm, Inc.
/// WAVE_FORMAT_QUALCOMM_HALFRATE
WAVE_FORMAT_QUALCOMM_HALFRATE = 0x0151, // Qualcomm, Inc.
/// WAVE_FORMAT_TUBGSM
WAVE_FORMAT_TUBGSM = 0x0155, // Ring Zero Systems, Inc.
/// WAVE_FORMAT_MSAUDIO1
WAVE_FORMAT_MSAUDIO1 = 0x0160, // Microsoft Corporation
///
/// Windows Media Audio, WAVE_FORMAT_WMAUDIO2, Microsoft Corporation
///
WindowsMediaAudio = 0x0161,
///
/// Windows Media Audio Professional WAVE_FORMAT_WMAUDIO3, Microsoft Corporation
///
WindowsMediaAudioProfessional = 0x0162,
///
/// Windows Media Audio Lossless, WAVE_FORMAT_WMAUDIO_LOSSLESS
///
WindowsMediaAudioLosseless = 0x0163,
///
/// Windows Media Audio Professional over SPDIF WAVE_FORMAT_WMASPDIF (0x0164)
///
WindowsMediaAudioSpdif = 0x0164,
/// WAVE_FORMAT_UNISYS_NAP_ADPCM
WAVE_FORMAT_UNISYS_NAP_ADPCM = 0x0170, // Unisys Corp.
/// WAVE_FORMAT_UNISYS_NAP_ULAW
WAVE_FORMAT_UNISYS_NAP_ULAW = 0x0171, // Unisys Corp.
/// WAVE_FORMAT_UNISYS_NAP_ALAW
WAVE_FORMAT_UNISYS_NAP_ALAW = 0x0172, // Unisys Corp.
/// WAVE_FORMAT_UNISYS_NAP_16K
WAVE_FORMAT_UNISYS_NAP_16K = 0x0173, // Unisys Corp.
/// WAVE_FORMAT_CREATIVE_ADPCM
WAVE_FORMAT_CREATIVE_ADPCM = 0x0200, // Creative Labs, Inc
/// WAVE_FORMAT_CREATIVE_FASTSPEECH8
WAVE_FORMAT_CREATIVE_FASTSPEECH8 = 0x0202, // Creative Labs, Inc
/// WAVE_FORMAT_CREATIVE_FASTSPEECH10
WAVE_FORMAT_CREATIVE_FASTSPEECH10 = 0x0203, // Creative Labs, Inc
/// WAVE_FORMAT_UHER_ADPCM
WAVE_FORMAT_UHER_ADPCM = 0x0210, // UHER informatic GmbH
/// WAVE_FORMAT_QUARTERDECK
WAVE_FORMAT_QUARTERDECK = 0x0220, // Quarterdeck Corporation
/// WAVE_FORMAT_ILINK_VC
WAVE_FORMAT_ILINK_VC = 0x0230, // I-link Worldwide
/// WAVE_FORMAT_RAW_SPORT
WAVE_FORMAT_RAW_SPORT = 0x0240, // Aureal Semiconductor
/// WAVE_FORMAT_ESST_AC3
WAVE_FORMAT_ESST_AC3 = 0x0241, // ESS Technology, Inc.
/// WAVE_FORMAT_IPI_HSX
WAVE_FORMAT_IPI_HSX = 0x0250, // Interactive Products, Inc.
/// WAVE_FORMAT_IPI_RPELP
WAVE_FORMAT_IPI_RPELP = 0x0251, // Interactive Products, Inc.
/// WAVE_FORMAT_CS2
WAVE_FORMAT_CS2 = 0x0260, // Consistent Software
/// WAVE_FORMAT_SONY_SCX
WAVE_FORMAT_SONY_SCX = 0x0270, // Sony Corp.
/// WAVE_FORMAT_FM_TOWNS_SND
WAVE_FORMAT_FM_TOWNS_SND = 0x0300, // Fujitsu Corp.
/// WAVE_FORMAT_BTV_DIGITAL
WAVE_FORMAT_BTV_DIGITAL = 0x0400, // Brooktree Corporation
/// WAVE_FORMAT_QDESIGN_MUSIC
WAVE_FORMAT_QDESIGN_MUSIC = 0x0450, // QDesign Corporation
/// WAVE_FORMAT_VME_VMPCM
WAVE_FORMAT_VME_VMPCM = 0x0680, // AT&T Labs, Inc.
/// WAVE_FORMAT_TPC
WAVE_FORMAT_TPC = 0x0681, // AT&T Labs, Inc.
/// WAVE_FORMAT_OLIGSM
WAVE_FORMAT_OLIGSM = 0x1000, // Ing C. Olivetti & C., S.p.A.
/// WAVE_FORMAT_OLIADPCM
WAVE_FORMAT_OLIADPCM = 0x1001, // Ing C. Olivetti & C., S.p.A.
/// WAVE_FORMAT_OLICELP
WAVE_FORMAT_OLICELP = 0x1002, // Ing C. Olivetti & C., S.p.A.
/// WAVE_FORMAT_OLISBC
WAVE_FORMAT_OLISBC = 0x1003, // Ing C. Olivetti & C., S.p.A.
/// WAVE_FORMAT_OLIOPR
WAVE_FORMAT_OLIOPR = 0x1004, // Ing C. Olivetti & C., S.p.A.
/// WAVE_FORMAT_LH_CODEC
WAVE_FORMAT_LH_CODEC = 0x1100, // Lernout & Hauspie
/// WAVE_FORMAT_NORRIS
WAVE_FORMAT_NORRIS = 0x1400, // Norris Communications, Inc.
/// WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS
WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS = 0x1500, // AT&T Labs, Inc.
///
/// Advanced Audio Coding (AAC) audio in Audio Data Transport Stream (ADTS) format.
/// The format block is a WAVEFORMATEX structure with wFormatTag equal to WAVE_FORMAT_MPEG_ADTS_AAC.
///
///
/// The WAVEFORMATEX structure specifies the core AAC-LC sample rate and number of channels,
/// prior to applying spectral band replication (SBR) or parametric stereo (PS) tools, if present.
/// No additional data is required after the WAVEFORMATEX structure.
///
/// http://msdn.microsoft.com/en-us/library/dd317599%28VS.85%29.aspx
MPEG_ADTS_AAC = 0x1600,
/// MPEG_RAW_AAC
/// Source wmCodec.h
MPEG_RAW_AAC = 0x1601,
///
/// MPEG-4 audio transport stream with a synchronization layer (LOAS) and a multiplex layer (LATM).
/// The format block is a WAVEFORMATEX structure with wFormatTag equal to WAVE_FORMAT_MPEG_LOAS.
/// See .
///
///
/// The WAVEFORMATEX structure specifies the core AAC-LC sample rate and number of channels,
/// prior to applying spectral SBR or PS tools, if present.
/// No additional data is required after the WAVEFORMATEX structure.
///
MPEG_LOAS = 0x1602,
/// NOKIA_MPEG_ADTS_AAC
/// Source wmCodec.h
NOKIA_MPEG_ADTS_AAC = 0x1608,
/// NOKIA_MPEG_RAW_AAC
/// Source wmCodec.h
NOKIA_MPEG_RAW_AAC = 0x1609,
/// VODAFONE_MPEG_ADTS_AAC
/// Source wmCodec.h
VODAFONE_MPEG_ADTS_AAC = 0x160A,
/// VODAFONE_MPEG_RAW_AAC
/// Source wmCodec.h
VODAFONE_MPEG_RAW_AAC = 0x160B,
///
/// High-Efficiency Advanced Audio Coding (HE-AAC) stream.
/// The format block is an HEAACWAVEFORMAT structure. See .
///
MPEG_HEAAC = 0x1610,
/// WAVE_FORMAT_DVM
WAVE_FORMAT_DVM = 0x2000, // FAST Multimedia AG
// others - not from MS headers
/// WAVE_FORMAT_VORBIS1 "Og" Original stream compatible
Vorbis1 = 0x674f,
/// WAVE_FORMAT_VORBIS2 "Pg" Have independent header
Vorbis2 = 0x6750,
/// WAVE_FORMAT_VORBIS3 "Qg" Have no codebook header
Vorbis3 = 0x6751,
/// WAVE_FORMAT_VORBIS1P "og" Original stream compatible
Vorbis1P = 0x676f,
/// WAVE_FORMAT_VORBIS2P "pg" Have independent headere
Vorbis2P = 0x6770,
/// WAVE_FORMAT_VORBIS3P "qg" Have no codebook header
Vorbis3P = 0x6771,
///
/// Raw AAC1
///
WAVE_FORMAT_RAW_AAC1 = 0x00FF,
///
/// Windows Media Audio Voice (WMA Voice)
///
WAVE_FORMAT_WMAVOICE9 = 0x000A,
/// Extensible
Extensible = unchecked((short)0xFFFE), // Microsoft
/// WAVE_FORMAT_DEVELOPMENT
WAVE_FORMAT_DEVELOPMENT = unchecked((short)0xFFFF),
///
/// FLAC
///
WAVE_FORMAT_FLAC = unchecked((short)0xF1AC)
}
// ReSharper restore InconsistentNaming