Example #1
0
        public void Clear()
        {
            TrackId      = 0;
            pan          = 0;
            vol          = 0;
            VolFadeDest  = 0;
            VolFadeStep  = 0;
            VolFadeDelay = 0;
            VolFadeUsed  = false;
//            SoundId = 0;
            SoundName      = null;
            Used           = false;
            ToBeRemoved    = false;
            SouStreamUsed  = false;
            SndDataExtComp = false;
            SoundPriority  = 0;
            RegionOffset   = 0;
            DataOffset     = 0;
            CurRegion      = 0;
            CurHookId      = 0;
            VolGroupId     = 0;
            SoundType      = 0;
            FeedSize       = 0;
            DataMod12Bit   = 0;
            MixerFlags     = AudioFlags.None;

            SoundDesc     = null;
            MixChanHandle = new SoundHandle();
            Stream        = null;
        }
Example #2
0
        private ProgramAudio ConvertAudioFlags(AudioFlags input)
        {
            switch (input)
            {
            case AudioFlags.AUD_STEREO:
                return(ProgramAudio.Stereo);

            case AudioFlags.AUD_DOLBY:
                return(ProgramAudio.Dolby);
            }
            return(ProgramAudio.Mono);
        }
Example #3
0
        public void QueuePCM(byte[] buffer, int bufferSize)
        {
            AudioFlags flags = AudioFlags.None;

            if (_audioInfo.is16Bits)
            {
                flags |= AudioFlags.Is16Bits;
            }
            if (_audioInfo.isStereo)
            {
                flags |= AudioFlags.Stereo;
            }

            _audioStream.QueueBuffer(buffer, bufferSize, true, flags);
        }
Example #4
0
        public RawStream(AudioFlags flags, int rate, bool disposeStream, Stream stream)
        {
            _is16Bit       = flags.HasFlag(AudioFlags.Is16Bits);
            _isLE          = flags.HasFlag(AudioFlags.LittleEndian);
            _isUnsigned    = flags.HasFlag(AudioFlags.Unsigned);
            _rate          = rate;
            _isStereo      = flags.HasFlag(AudioFlags.Stereo);
            _playtime      = new Timestamp(0, rate);
            _stream        = stream;
            _disposeStream = disposeStream;

            // Setup our buffer for readBuffer
            _buffer = new byte[SampleBufferLength * (_is16Bit ? 2 : 1)];

            // Calculate the total playtime of the stream
            _playtime = new Timestamp(0, (int)_stream.Length / (_isStereo ? 2 : 1) / (_is16Bit ? 2 : 1), rate);
        }
Example #5
0
        public RawStream(AudioFlags flags, int rate, bool disposeStream, Stream stream)
        {
            _is16Bit = flags.HasFlag(AudioFlags.Is16Bits);
            _isLE = flags.HasFlag(AudioFlags.LittleEndian);
            _isUnsigned = flags.HasFlag(AudioFlags.Unsigned);
            _rate = rate;
            _isStereo = flags.HasFlag(AudioFlags.Stereo);
            _playtime = new Timestamp(0, rate);
            _stream = stream;
            _disposeStream = disposeStream;

            // Setup our buffer for readBuffer
            _buffer = new byte[SampleBufferLength * (_is16Bit ? 2 : 1)];

            // Calculate the total playtime of the stream
            _playtime = new Timestamp(0, (int)_stream.Length / (_isStereo ? 2 : 1) / (_is16Bit ? 2 : 1), rate);
        }
Example #6
0
 /// <summary>
 /// Sets an audio flag to modify subsequent sounds.
 /// </summary>
 /// <param name="flag"></param>
 /// <param name="toggle"></param>
 public static void SetAudioFlag(AudioFlags flag, bool toggle)
 {
     Function.Call(Hash.SET_AUDIO_FLAG, _audioFlags[(int)flag], toggle);
 }
Example #7
0
 /// <summary>
 /// Sets an audio flag to modify subsequent sounds.
 /// </summary>
 /// <param name="flag"></param>
 /// <param name="toggle"></param>
 public static void SetAudioFlag(AudioFlags flag, bool toggle)
 {
     Function.Call(Hash.SET_AUDIO_FLAG, flag.ToString(), toggle);
 }
Example #8
0
        public void Clear()
        {
            TrackId = 0;
            pan = 0;
            vol = 0;
            VolFadeDest = 0;
            VolFadeStep = 0;
            VolFadeDelay = 0;
            VolFadeUsed = false;
//            SoundId = 0;
            SoundName = null;
            Used = false;
            ToBeRemoved = false;
            SouStreamUsed = false;
            SndDataExtComp = false;
            SoundPriority = 0;
            RegionOffset = 0;
            DataOffset = 0;
            CurRegion = 0;
            CurHookId = 0;
            VolGroupId = 0;
            SoundType = 0;
            FeedSize = 0;
            DataMod12Bit = 0;
            MixerFlags = AudioFlags.None;

            SoundDesc = null;
            MixChanHandle = new SoundHandle();
            Stream = null;
        }
Example #9
0
        public void QueueBuffer(byte[] data, int size, bool disposeAfterUse, AudioFlags flags)
        {
            var stream = new RawStream(flags, Rate, disposeAfterUse, new MemoryStream(data, 0, size));

            QueueAudioStream(stream, true);
        }
Example #10
0
 public void QueueBuffer(byte[] data, int size, bool disposeAfterUse, AudioFlags flags)
 {
     var stream = new RawStream(flags, Rate, disposeAfterUse, new MemoryStream(data, 0, size));
     QueueAudioStream(stream, true);
 }
Example #11
0
 public AudioPreset(float volume, float minDistance, AudioFlags flags)
 {
     Volume          = volume;
     MinimumDistance = minDistance;
     Flags           = flags;
 }