wav

package module
v0.0.0-...-5d4e330 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 20, 2017 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const (
	WAVE_FORMAT_UNKNOWN                 = 0x0000 // Unknown Format
	WAVE_FORMAT_PCM                     = 0x0001 // PCM
	WAVE_FORMAT_ADPCM                   = 0x0002 // Microsoft ADPCM Format
	WAVE_FORMAT_IEEE_FLOAT              = 0x0003 // IEEE Float
	WAVE_FORMAT_VSELP                   = 0x0004 // Compaq Computer's VSELP
	WAVE_FORMAT_IBM_CSVD                = 0x0005 // IBM CVSD
	WAVE_FORMAT_ALAW                    = 0x0006 // A-Law
	WAVE_FORMAT_MULAW                   = 0x0007 // Mu-Law
	WAVE_FORMAT_OKI_ADPCM               = 0x0010 // OKI ADPCM
	WAVE_FORMAT_DVI_ADPCM               = 0x0011 // Intel's DVI ADPCM
	WAVE_FORMAT_MEDIASPACE_ADPCM        = 0x0012 // Videologic's MediaSpace ADPCM
	WAVE_FORMAT_SIERRA_ADPCM            = 0x0013 // Sierra ADPCM
	WAVE_FORMAT_G723_ADPCM              = 0x0014 // G.723 ADPCM
	WAVE_FORMAT_DIGISTD                 = 0x0015 // DSP Solution's DIGISTD
	WAVE_FORMAT_DIGIFIX                 = 0x0016 // DSP Solution's DIGIFIX
	WAVE_FORMAT_DIALOGIC_OKI_ADPCM      = 0x0017 // Dialogic OKI ADPCM
	WAVE_FORMAT_MEDIAVISION_ADPCM       = 0x0018 // MediaVision ADPCM
	WAVE_FORMAT_CU_CODEC                = 0x0019 // HP CU
	WAVE_FORMAT_YAMAHA_ADPCM            = 0x0020 // Yamaha ADPCM
	WAVE_FORMAT_SONARC                  = 0x0021 // Speech Compression's Sonarc
	WAVE_FORMAT_TRUESPEECH              = 0x0022 // DSP Group's True Speech
	WAVE_FORMAT_ECHOSC1                 = 0x0023 // Echo Speech's EchoSC1
	WAVE_FORMAT_AUDIOFILE_AF36          = 0x0024 // Audiofile AF36
	WAVE_FORMAT_APTX                    = 0x0025 // APTX
	WAVE_FORMAT_AUDIOFILE_AF10          = 0x0026 // AudioFile AF10
	WAVE_FORMAT_PROSODY_1612            = 0x0027 // Prosody 1612
	WAVE_FORMAT_LRC                     = 0x0028 // LRC
	WAVE_FORMAT_AC2                     = 0x0030 // Dolby AC2
	WAVE_FORMAT_GSM610                  = 0x0031 // GSM610
	WAVE_FORMAT_MSNAUDIO                = 0x0032 // MSNAudio
	WAVE_FORMAT_ANTEX_ADPCME            = 0x0033 // Antex ADPCME
	WAVE_FORMAT_CONTROL_RES_VQLPC       = 0x0034 // Control Res VQLPC
	WAVE_FORMAT_DIGIREAL                = 0x0035 // Digireal
	WAVE_FORMAT_DIGIADPCM               = 0x0036 // DigiADPCM
	WAVE_FORMAT_CONTROL_RES_CR10        = 0x0037 // Control Res CR10
	WAVE_FORMAT_VBXADPCM                = 0x0038 // NMS VBXADPCM
	WAVE_FORMAT_ROLAND_RDAC             = 0x0039 // Roland RDAC
	WAVE_FORMAT_ECHOSC3                 = 0x003A // EchoSC3
	WAVE_FORMAT_ROCKWELL_ADPCM          = 0x003B // Rockwell ADPCM
	WAVE_FORMAT_ROCKWELL_DIGITALK       = 0x003C // Rockwell Digit LK
	WAVE_FORMAT_XEBEC                   = 0x003D // Xebec
	WAVE_FORMAT_G721_ADPCM              = 0x0040 // Antex Electronics G.721
	WAVE_FORMAT_G728_CELP               = 0x0041 // G.728 CELP
	WAVE_FORMAT_MSG723                  = 0x0042 // MSG723
	WAVE_FORMAT_MPEG                    = 0x0050 // MPEG Layer 1,2
	WAVE_FORMAT_RT24                    = 0x0051 // RT24
	WAVE_FORMAT_PAC                     = 0x0051 // PAC
	WAVE_FORMAT_MPEGLAYER3              = 0x0055 // MPEG Layer 3
	WAVE_FORMAT_CIRRUS                  = 0x0059 // Cirrus
	WAVE_FORMAT_ESPCM                   = 0x0061 // ESPCM
	WAVE_FORMAT_VOXWARE                 = 0x0062 // Voxware (obsolete)
	WAVE_FORMAT_CANOPUS_ATRAC           = 0x0063 // Canopus Atrac
	WAVE_FORMAT_G726_ADPCM              = 0x0064 // G.726 ADPCM
	WAVE_FORMAT_G722_ADPCM              = 0x0065 // G.722 ADPCM
	WAVE_FORMAT_DSAT                    = 0x0066 // DSAT
	WAVE_FORMAT_DSAT_DISPLAY            = 0x0067 // DSAT Display
	WAVE_FORMAT_VOXWARE_BYTE_ALIGNED    = 0x0069 // Voxware Byte Aligned (obsolete)
	WAVE_FORMAT_VOXWARE_AC8             = 0x0070 // Voxware AC8 (obsolete)
	WAVE_FORMAT_VOXWARE_AC10            = 0x0071 // Voxware AC10 (obsolete)
	WAVE_FORMAT_VOXWARE_AC16            = 0x0072 // Voxware AC16 (obsolete)
	WAVE_FORMAT_VOXWARE_AC20            = 0x0073 // Voxware AC20 (obsolete)
	WAVE_FORMAT_VOXWARE_RT24            = 0x0074 // Voxware MetaVoice (obsolete)
	WAVE_FORMAT_VOXWARE_RT29            = 0x0075 // Voxware MetaSound (obsolete)
	WAVE_FORMAT_VOXWARE_RT29HW          = 0x0076 // Voxware RT29HW (obsolete)
	WAVE_FORMAT_VOXWARE_VR12            = 0x0077 // Voxware VR12 (obsolete)
	WAVE_FORMAT_VOXWARE_VR18            = 0x0078 // Voxware VR18 (obsolete)
	WAVE_FORMAT_VOXWARE_TQ40            = 0x0079 // Voxware TQ40 (obsolete)
	WAVE_FORMAT_SOFTSOUND               = 0x0080 // Softsound
	WAVE_FORMAT_VOXWARE_TQ60            = 0x0081 // Voxware TQ60 (obsolete)
	WAVE_FORMAT_MSRT24                  = 0x0082 // MSRT24
	WAVE_FORMAT_G729A                   = 0x0083 // G.729A
	WAVE_FORMAT_MVI_MV12                = 0x0084 // MVI MV12
	WAVE_FORMAT_DF_G726                 = 0x0085 // DF G.726
	WAVE_FORMAT_DF_GSM610               = 0x0086 // DF GSM610
	WAVE_FORMAT_ISIAUDIO                = 0x0088 // ISIAudio
	WAVE_FORMAT_ONLIVE                  = 0x0089 // Onlive
	WAVE_FORMAT_SBC24                   = 0x0091 // SBC24
	WAVE_FORMAT_DOLBY_AC3_SPDIF         = 0x0092 // Dolby AC3 SPDIF
	WAVE_FORMAT_ZYXEL_ADPCM             = 0x0097 // ZyXEL ADPCM
	WAVE_FORMAT_PHILIPS_LPCBB           = 0x0098 // Philips LPCBB
	WAVE_FORMAT_PACKED                  = 0x0099 // Packed
	WAVE_FORMAT_RHETOREX_ADPCM          = 0x0100 // Rhetorex ADPCM
	WAVE_FORMAT_IRAT                    = 0x0101 // BeCubed Software's IRAT
	WAVE_FORMAT_VIVO_G723               = 0x0111 // Vivo G.723
	WAVE_FORMAT_VIVO_SIREN              = 0x0112 // Vivo Siren
	WAVE_FORMAT_DIGITAL_G723            = 0x0123 // Digital G.723
	WAVE_FORMAT_CREATIVE_ADPCM          = 0x0200 // Creative ADPCM
	WAVE_FORMAT_CREATIVE_FASTSPEECH8    = 0x0202 // Creative FastSpeech8
	WAVE_FORMAT_CREATIVE_FASTSPEECH10   = 0x0203 // Creative FastSpeech10
	WAVE_FORMAT_QUARTERDECK             = 0x0220 // Quarterdeck
	WAVE_FORMAT_FM_TOWNS_SND            = 0x0300 // FM Towns Snd
	WAVE_FORMAT_BTV_DIGITAL             = 0x0400 // BTV Digital
	WAVE_FORMAT_VME_VMPCM               = 0x0680 // VME VMPCM
	WAVE_FORMAT_OLIGSM                  = 0x1000 // OLIGSM
	WAVE_FORMAT_OLIADPCM                = 0x1001 // OLIADPCM
	WAVE_FORMAT_OLICELP                 = 0x1002 // OLICELP
	WAVE_FORMAT_OLISBC                  = 0x1003 // OLISBC
	WAVE_FORMAT_OLIOPR                  = 0x1004 // OLIOPR
	WAVE_FORMAT_LH_CODEC                = 0x1100 // LH Codec
	WAVE_FORMAT_NORRIS                  = 0x1400 // Norris
	WAVE_FORMAT_SOUNDSPACE_MUSICOMPRESS = 0x1500 // Soundspace Music Compression
	WAVE_FORMAT_DVM                     = 0x2000 // DVM
	WAVE_FORMAT_EXTENSIBLE              = 0xFFFE // SubFormat
	WAVE_FORMAT_DEVELOPMENT             = 0xFFFF // Development
)

Windows WAVE File Encoding Tags

Variables

View Source
var (
	ErrFileFormat = errors.New("wav: invalid file format")

	ErrAudioFormat   = errors.New("wav: invalid AudioFormat")
	ErrChannels      = errors.New("wav: invalid Channels")
	ErrSampleRate    = errors.New("wav: invalid SampleRate")
	ErrBitsPerSample = errors.New("wav: invalid BitsPerSample")

	ErrFileReaderClosed = errors.New("wav: FileReader is closed or not created")
	ErrFileWriterClosed = errors.New("wav: FileWriter is closed or not created")
)

Functions

This section is empty.

Types

type Config

type Config struct {
	AudioFormat   int // тип формата (1 - PCM; 6 - A-law, 7 - Mu-law)
	Channels      int // количество каналов (1 - моно; 2 - стeрео)
	SampleRate    int // частота дискретизации (8000, ...)
	BitsPerSample int // [8, 16, 24, 32]
}

func (*Config) BytesPerBlock

func (c *Config) BytesPerBlock() int

func (*Config) BytesPerSec

func (c *Config) BytesPerSec() int

type FileReader

type FileReader struct {
	// contains filtered or unexported fields
}

func NewFileReader

func NewFileReader(fileName string) (*FileReader, error)

func (*FileReader) Close

func (fr *FileReader) Close() error

func (*FileReader) Config

func (fr *FileReader) Config() Config

func (*FileReader) Read

func (fr *FileReader) Read(data []byte) (n int, err error)

type FileWriter

type FileWriter struct {
	// contains filtered or unexported fields
}

func NewFileWriter

func NewFileWriter(filename string, config Config) (*FileWriter, error)

func (*FileWriter) Close

func (fw *FileWriter) Close() error

func (*FileWriter) Write

func (fw *FileWriter) Write(data []byte) (n int, err error)

Directories

Path Synopsis
examples

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL