From 8ffcdad009e4d410f92fabc4e322a76a0be3a69d Mon Sep 17 00:00:00 2001 From: Daniel Rugerio <50124185+darugeri@users.noreply.github.com> Date: Fri, 28 Jun 2019 16:08:54 -0700 Subject: Update audio samples (#387) * Update SysVAD public sample. * Add WaveTest public sample. --- audio/tests/wavetest/PreComp.h | 154 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 154 insertions(+) create mode 100644 audio/tests/wavetest/PreComp.h (limited to 'audio/tests/wavetest/PreComp.h') diff --git a/audio/tests/wavetest/PreComp.h b/audio/tests/wavetest/PreComp.h new file mode 100644 index 00000000..2044d6b1 --- /dev/null +++ b/audio/tests/wavetest/PreComp.h @@ -0,0 +1,154 @@ +// ------------------------------------------------------------------------------ +// +// Copyright (C) Microsoft. All rights reserved. +// +// File Name: +// +// PreComp.h +// +// Abstract: +// +// Precompiled common headers +// +// ------------------------------------------------------------------------------- + +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +// ------------------------------------------------------------------------------ +// Log +#define LOG(log, ...) BasicLogPrintf( log, XMSG, 1, __VA_ARGS__ ) +#define SKIP(log, ...) BasicLogPrintf( log, XSKIP, 1, __VA_ARGS__ ) +#define WARN(log, ...) BasicLogPrintf( log, XWARN, 1, __VA_ARGS__ ) +#define BLOCK(log, ...) BasicLogPrintf( log, XBLOCK, 1, __VA_ARGS__ ) +#define ERR(log, ...) BasicLogPrintf( log, XFAIL, 1, __VA_ARGS__ ) + +// ------------------------------------------------------------------------------ +// Data flow +enum STACKWISE_DATAFLOW { render, capture }; + +// ------------------------------------------------------------------------------ +// Structs used to hold results of format records +typedef struct +{ + WAVEFORMATEXTENSIBLE wfxEx; + UINT32 fundamentalPeriodInFrames; + UINT32 defaultPeriodInFrames; + UINT32 minPeriodInFrames; + UINT32 maxPeriodInFrames; + UINT32 maxPeriodInFramesExtended; +} FORMAT_RECORD, *PFORMAT_RECORD; + +// ---------------------------------------------------------- +// Parameters for test sine tone +#define TEST_AMPLITUDE 1.0f +#define TEST_FREQUENCY 200.0f + +// ---------------------------------------------------------- +// Predefined format list for offload streaming +#define COUNT_FORMATS 4 + +static WAVEFORMATEXTENSIBLE ListofFormats[COUNT_FORMATS] = +{ + // 1 + { + // Format + { + WAVE_FORMAT_EXTENSIBLE, // wFormatTag + 2, // nChannels + 44100, // nSamplesPerSec + 176400, // nAvgBytesPerSec + 4, // nBlockAlign + 16, // wBitsPerSample + 22 // cbSize + }, + // Samples + { + 16 // wValidBitsPerSample + }, + KSAUDIO_SPEAKER_STEREO, // dwChannelMask + KSDATAFORMAT_SUBTYPE_PCM // SubFormat + }, + // 2 + { + // Format + { + WAVE_FORMAT_EXTENSIBLE, // wFormatTag + 2, // nChannels + 48000, // nSamplesPerSec + 192000, // nAvgBytesPerSec + 4, // nBlockAlign + 16, // wBitsPerSample + 22 // cbSize + }, + // Samples + { + 16 // wValidBitsPerSample + }, + KSAUDIO_SPEAKER_STEREO, // dwChannelMask + KSDATAFORMAT_SUBTYPE_PCM // SubFormat + }, + // 3 + { + // Format + { + WAVE_FORMAT_EXTENSIBLE, // wFormatTag + 2, // nChannels + 88200, // nSamplesPerSec + 352800, // nAvgBytesPerSec + 4, // nBlockAlign + 16, // wBitsPerSample + 22 // cbSize + }, + // Samples + { + 16 // wValidBitsPerSample + }, + KSAUDIO_SPEAKER_STEREO, // dwChannelMask + KSDATAFORMAT_SUBTYPE_PCM // SubFormat + }, + // 4 + { + // Format + { + WAVE_FORMAT_EXTENSIBLE, // wFormatTag + 2, // nChannels + 96000, // nSamplesPerSec + 384000, // nAvgBytesPerSec + 4, // nBlockAlign + 16, // wBitsPerSample + 22 // cbSize + }, + // Samples + { + 16 // wValidBitsPerSample + }, + KSAUDIO_SPEAKER_STEREO, // dwChannelMask + KSDATAFORMAT_SUBTYPE_PCM // SubFormat + }, +}; \ No newline at end of file -- cgit v1.3.1