diff options
11 files changed, 258 insertions, 7 deletions
@@ -5,4 +5,8 @@ build build -.DS_Store
\ No newline at end of file +.DS_Store +/maximilianTestWindowsVS2010/Debug +/maximilianTestWindowsVS2010/ipch +/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/Debug + diff --git a/RtAudio.cpp b/RtAudio.cpp index 4a3966b..ecea3ea 100644 --- a/RtAudio.cpp +++ b/RtAudio.cpp @@ -3662,10 +3662,14 @@ unsigned int RtApiDs :: getDeviceCount( void ) // Clean out any devices that may have disappeared.
std::vector< int > indices;
- for ( unsigned int i=0; i<dsDevices.size(); i++ )
+ for ( unsigned int i=0; i<dsDevices.size(); i++ ) {
if ( dsDevices[i].found == false ) indices.push_back( i );
- for ( unsigned int nErased=0, unsigned int i=0; i<indices.size(); i++, nErased++ ) {
- dsDevices.erase( dsDevices.begin()-nErased );
+ }
+
+ unsigned int nErased=0;
+ for (unsigned int i=0; i<indices.size(); i++ ) {
+ dsDevices.erase( dsDevices.begin()-nErased );
+ nErased++;
}
return dsDevices.size();
diff --git a/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.sln b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.sln new file mode 100644 index 0000000..9a258d6 --- /dev/null +++ b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.sln @@ -0,0 +1,20 @@ + +Microsoft Visual Studio Solution File, Format Version 11.00 +# Visual Studio 2010 +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "maximilianTestWindowsVS2010", "maximilianTestWindowsVS2010\maximilianTestWindowsVS2010.vcxproj", "{599B9B87-ABE8-4096-A0E7-A68775D8A284}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Win32 = Debug|Win32 + Release|Win32 = Release|Win32 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {599B9B87-ABE8-4096-A0E7-A68775D8A284}.Debug|Win32.ActiveCfg = Debug|Win32 + {599B9B87-ABE8-4096-A0E7-A68775D8A284}.Debug|Win32.Build.0 = Debug|Win32 + {599B9B87-ABE8-4096-A0E7-A68775D8A284}.Release|Win32.ActiveCfg = Release|Win32 + {599B9B87-ABE8-4096-A0E7-A68775D8A284}.Release|Win32.Build.0 = Release|Win32 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.suo b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.suo Binary files differnew file mode 100644 index 0000000..04a3cf3 --- /dev/null +++ b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.suo diff --git a/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/ReadMe.txt b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/ReadMe.txt new file mode 100644 index 0000000..f41a328 --- /dev/null +++ b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/ReadMe.txt @@ -0,0 +1,40 @@ +======================================================================== + CONSOLE APPLICATION : maximilianTestWindowsVS2010 Project Overview +======================================================================== + +AppWizard has created this maximilianTestWindowsVS2010 application for you. + +This file contains a summary of what you will find in each of the files that +make up your maximilianTestWindowsVS2010 application. + + +maximilianTestWindowsVS2010.vcxproj + This is the main project file for VC++ projects generated using an Application Wizard. + It contains information about the version of Visual C++ that generated the file, and + information about the platforms, configurations, and project features selected with the + Application Wizard. + +maximilianTestWindowsVS2010.vcxproj.filters + This is the filters file for VC++ projects generated using an Application Wizard. + It contains information about the association between the files in your project + and the filters. This association is used in the IDE to show grouping of files with + similar extensions under a specific node (for e.g. ".cpp" files are associated with the + "Source Files" filter). + +maximilianTestWindowsVS2010.cpp + This is the main application source file. + +///////////////////////////////////////////////////////////////////////////// +Other standard files: + +StdAfx.h, StdAfx.cpp + These files are used to build a precompiled header (PCH) file + named maximilianTestWindowsVS2010.pch and a precompiled types file named StdAfx.obj. + +///////////////////////////////////////////////////////////////////////////// +Other notes: + +AppWizard uses "TODO:" comments to indicate parts of the source code you +should add to or customize. + +///////////////////////////////////////////////////////////////////////////// diff --git a/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.vcxproj b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.vcxproj new file mode 100644 index 0000000..54a6575 --- /dev/null +++ b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.vcxproj @@ -0,0 +1,96 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup Label="ProjectConfigurations"> + <ProjectConfiguration Include="Debug|Win32"> + <Configuration>Debug</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + <ProjectConfiguration Include="Release|Win32"> + <Configuration>Release</Configuration> + <Platform>Win32</Platform> + </ProjectConfiguration> + </ItemGroup> + <PropertyGroup Label="Globals"> + <ProjectGuid>{599B9B87-ABE8-4096-A0E7-A68775D8A284}</ProjectGuid> + <Keyword>Win32Proj</Keyword> + <RootNamespace>maximilianTestWindowsVS2010</RootNamespace> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> + <ConfigurationType>Application</ConfigurationType> + <UseDebugLibraries>true</UseDebugLibraries> + <CharacterSet>Unicode</CharacterSet> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration"> + <ConfigurationType>Application</ConfigurationType> + <UseDebugLibraries>false</UseDebugLibraries> + <WholeProgramOptimization>true</WholeProgramOptimization> + <CharacterSet>Unicode</CharacterSet> + </PropertyGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> + <ImportGroup Label="ExtensionSettings"> + </ImportGroup> + <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + </ImportGroup> + <ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" /> + </ImportGroup> + <PropertyGroup Label="UserMacros" /> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <LinkIncremental>true</LinkIncremental> + </PropertyGroup> + <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <LinkIncremental>false</LinkIncremental> + </PropertyGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> + <ClCompile> + <PrecompiledHeader>NotUsing</PrecompiledHeader> + <WarningLevel>Level3</WarningLevel> + <Optimization>Disabled</Optimization> + <PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;__WINDOWS_DS__;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <AdditionalDependencies>DSound.lib;%(AdditionalDependencies)</AdditionalDependencies> + </Link> + </ItemDefinitionGroup> + <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> + <ClCompile> + <WarningLevel>Level3</WarningLevel> + <PrecompiledHeader>Use</PrecompiledHeader> + <Optimization>MaxSpeed</Optimization> + <FunctionLevelLinking>true</FunctionLevelLinking> + <IntrinsicFunctions>true</IntrinsicFunctions> + <PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions> + </ClCompile> + <Link> + <SubSystem>Console</SubSystem> + <GenerateDebugInformation>true</GenerateDebugInformation> + <EnableCOMDATFolding>true</EnableCOMDATFolding> + <OptimizeReferences>true</OptimizeReferences> + </Link> + </ItemDefinitionGroup> + <ItemGroup> + <None Include="ReadMe.txt" /> + </ItemGroup> + <ItemGroup> + <ClInclude Include="..\..\..\..\Program Files (x86)\Microsoft DirectX SDK (February 2010)\Include\dsound.h" /> + <ClInclude Include="..\..\maximilian.h" /> + <ClInclude Include="..\..\player.h" /> + <ClInclude Include="..\..\RtAudio.h" /> + <ClInclude Include="..\..\RtError.h" /> + <ClInclude Include="stdafx.h" /> + <ClInclude Include="targetver.h" /> + </ItemGroup> + <ItemGroup> + <ClCompile Include="..\..\main.cpp" /> + <ClCompile Include="..\..\maximilian.cpp" /> + <ClCompile Include="..\..\player.cpp" /> + <ClCompile Include="..\..\RtAudio.cpp" /> + </ItemGroup> + <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> + <ImportGroup Label="ExtensionTargets"> + </ImportGroup> +</Project>
\ No newline at end of file diff --git a/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.vcxproj.filters b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.vcxproj.filters new file mode 100644 index 0000000..6f24e7e --- /dev/null +++ b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.vcxproj.filters @@ -0,0 +1,57 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> + <ItemGroup> + <Filter Include="Source Files"> + <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> + <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions> + </Filter> + <Filter Include="Header Files"> + <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> + <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions> + </Filter> + <Filter Include="Resource Files"> + <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier> + <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions> + </Filter> + </ItemGroup> + <ItemGroup> + <None Include="ReadMe.txt" /> + </ItemGroup> + <ItemGroup> + <ClInclude Include="stdafx.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="targetver.h"> + <Filter>Header Files</Filter> + </ClInclude> + <ClInclude Include="..\..\maximilian.h"> + <Filter>Source Files</Filter> + </ClInclude> + <ClInclude Include="..\..\player.h"> + <Filter>Source Files</Filter> + </ClInclude> + <ClInclude Include="..\..\RtAudio.h"> + <Filter>Source Files</Filter> + </ClInclude> + <ClInclude Include="..\..\RtError.h"> + <Filter>Source Files</Filter> + </ClInclude> + <ClInclude Include="..\..\..\..\Program Files (x86)\Microsoft DirectX SDK (February 2010)\Include\dsound.h"> + <Filter>Header Files</Filter> + </ClInclude> + </ItemGroup> + <ItemGroup> + <ClCompile Include="..\..\main.cpp"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="..\..\maximilian.cpp"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="..\..\player.cpp"> + <Filter>Source Files</Filter> + </ClCompile> + <ClCompile Include="..\..\RtAudio.cpp"> + <Filter>Source Files</Filter> + </ClCompile> + </ItemGroup> +</Project>
\ No newline at end of file diff --git a/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.vcxproj.user b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.vcxproj.user new file mode 100644 index 0000000..ace9a86 --- /dev/null +++ b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010.vcxproj.user @@ -0,0 +1,3 @@ +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> +</Project>
\ No newline at end of file diff --git a/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/stdafx.h b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/stdafx.h new file mode 100644 index 0000000..b005a83 --- /dev/null +++ b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/stdafx.h @@ -0,0 +1,15 @@ +// stdafx.h : include file for standard system include files, +// or project specific include files that are used frequently, but +// are changed infrequently +// + +#pragma once + +#include "targetver.h" + +#include <stdio.h> +#include <tchar.h> + + + +// TODO: reference additional headers your program requires here diff --git a/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/targetver.h b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/targetver.h new file mode 100644 index 0000000..87c0086 --- /dev/null +++ b/maximilianTestWindowsVS2010/maximilianTestWindowsVS2010/targetver.h @@ -0,0 +1,8 @@ +#pragma once + +// Including SDKDDKVer.h defines the highest available Windows platform. + +// If you wish to build your application for a previous Windows platform, include WinSDKVer.h and +// set the _WIN32_WINNT macro to the platform you wish to support before including SDKDDKVer.h. + +#include <SDKDDKVer.h> @@ -16,6 +16,7 @@ #include "portaudio.h" //#include "pa_mac_core.h" #elif defined(MAXIMILIAN_RT_AUDIO) +#include <dsound.h> #include "RtAudio.h" #endif @@ -109,9 +110,11 @@ int main() std::cout << "PortAudio error: "<< Pa_GetErrorText( err ) << std::endl; #elif defined(MAXIMILIAN_RT_AUDIO) - RtAudio dac; + RtAudio dac(RtAudio::WINDOWS_DS); if ( dac.getDeviceCount() < 1 ) { std::cout << "\nNo audio devices found!\n"; + char input; + std::cin.get( input ); exit( 0 ); } @@ -121,11 +124,12 @@ int main() parameters.firstChannel = 0; unsigned int sampleRate = maxiSettings::sampleRate; unsigned int bufferFrames = maxiSettings::bufferSize; - double data[parameters.nChannels]; + //double data[maxiSettings::channels]; + vector<double> data(maxiSettings::channels,0); try { dac.openStream( ¶meters, NULL, RTAUDIO_FLOAT64, - sampleRate, &bufferFrames, &routing, (void *)&data); + sampleRate, &bufferFrames, &routing, (void *)&(data[0])); dac.startStream(); } |
