protected override bool GetLiveFrameInternal(TimeSpan timeout, out BaseDataHeader header, out byte[] data) { header = null; data = null; if (_currentSpeakerData != null && _currentSpeakerHeader != null) { header = _currentSpeakerHeader.Clone(); data = _currentSpeakerData; _currentSpeakerData = null; return(true); } return(false); }
protected override bool GetLiveFrameInternal(TimeSpan timeout, out BaseDataHeader header, out byte[] data) { header = null; data = null; byte[] frame = _demoConnectionManager.GetLiveFrame(Channel, false); if (frame == null) { return(false); } _currentAudioHeader.Length = (ulong)frame.Length; _currentAudioHeader.Timestamp = DateTime.UtcNow; _currentAudioHeader.SequenceNumber++; _currentAudioHeader.SampleCount = frame.Length / 2; // Assume 16 bits per sample header = _currentAudioHeader.Clone(); data = frame; return(true); }
protected override bool GetLiveFrameInternal(TimeSpan timeout, out BaseDataHeader header, out byte[] data) { header = null; data = null; byte[] frame = null; // TODO: Implement request for fetching frame data from device if (frame == null) { return(false); } _currentAudioHeader.Length = (ulong)frame.Length; _currentAudioHeader.Timestamp = DateTime.UtcNow; _currentAudioHeader.SequenceNumber++; _currentAudioHeader.SampleCount = frame.Length / 2; // Assume 16 bits per sample header = _currentAudioHeader.Clone(); data = frame; return(true); }