Ajouts de musique et irrKlang.

This commit is contained in:
Marc-Eric Martel
2021-10-19 10:27:59 -04:00
parent 167548dfc2
commit df3441dad6
778 changed files with 73920 additions and 13 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,58 @@
using System.Reflection;
using System.Runtime.CompilerServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory which is
// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

View File

@@ -0,0 +1,104 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{DF12AC74-E3B4-473A-A103-741A3FEA8D41}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.01.HelloWorld</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._01.HelloWorld</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET2.0, Version=1.6.0.0, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86" />
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.01.HelloWorld_vs2005", "CSharp.01.HelloWorld_vs2005.csproj", "{DF12AC74-E3B4-473A-A103-741A3FEA8D41}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,179 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{DF12AC74-E3B4-473A-A103-741A3FEA8D41}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.01.HelloWorld</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._01.HelloWorld</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<OldToolsVersion>2.0</OldToolsVersion>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<FileAlignment>4096</FileAlignment>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<Optimize>true</Optimize>
<FileAlignment>4096</FileAlignment>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRuleSets>false</CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET4, Version=1.0.6617.18810, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\bin\dotnet-4\irrKlang.NET4.dll</HintPath>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.0">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4 %28x86 und x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
<Visible>False</Visible>
<ProductName>Windows Installer 3.1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual C# Express 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.01.HelloWorld_vs2010", "CSharp.01.HelloWorld_vs2010.csproj", "{DF12AC74-E3B4-473A-A103-741A3FEA8D41}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.Build.0 = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,35 @@
using System;
using IrrKlang;
namespace CSharp._01.HelloWorld
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
// start the sound engine with default parameters
ISoundEngine engine = new ISoundEngine();
// To play a sound, we only to call play2D(). The second parameter
// tells the engine to play it looped.
engine.Play2D("../../media/getout.ogg", true);
Console.Out.WriteLine("\nHello World");
do
{
Console.Out.WriteLine("Press any key to play some sound, press 'q' to quit.");
// play a single sound
engine.Play2D("../../media/bell.wav");
}
while(_getch() != 'q');
}
// some simple function for reading keys from the console
[System.Runtime.InteropServices.DllImport("msvcrt")]
static extern int _getch();
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,58 @@
using System.Reflection;
using System.Runtime.CompilerServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory which is
// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

View File

@@ -0,0 +1,104 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{49444AE7-02F6-40C2-9348-D2F1A448CC3B}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.02.3DSound</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._02._3DSound</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET2.0, Version=1.6.0.0, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86" />
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.02.3DSound_vs2005", "CSharp.02.3DSound_vs2005.csproj", "{49444AE7-02F6-40C2-9348-D2F1A448CC3B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{49444AE7-02F6-40C2-9348-D2F1A448CC3B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{49444AE7-02F6-40C2-9348-D2F1A448CC3B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{49444AE7-02F6-40C2-9348-D2F1A448CC3B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{49444AE7-02F6-40C2-9348-D2F1A448CC3B}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,179 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{DF12AC74-E3B4-473A-A103-741A3FEA8D41}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.02.3DSound</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._02.3DSound</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<OldToolsVersion>2.0</OldToolsVersion>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<FileAlignment>4096</FileAlignment>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<Optimize>true</Optimize>
<FileAlignment>4096</FileAlignment>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRuleSets>false</CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET4, Version=1.0.6617.18810, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\bin\dotnet-4\irrKlang.NET4.dll</HintPath>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.0">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4 %28x86 und x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
<Visible>False</Visible>
<ProductName>Windows Installer 3.1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual C# Express 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.02.3DSound_vs2010", "CSharp.02.3DSound_vs2010.csproj", "{DF12AC74-E3B4-473A-A103-741A3FEA8D41}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.Build.0 = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,120 @@
using System;
using IrrKlang;
namespace CSharp._02._3DSound
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
// start the sound engine with default parameters
ISoundEngine engine = new ISoundEngine();
// Now play some sound stream as music in 3d space, looped.
// We play it at position (0,0,0) in 3d space
ISound music = engine.Play3D("../../media/ophelia.mp3",
0,0,0, true);
// the following step isn't necessary, but to adjust the distance where
// the 3D sound can be heard, we set some nicer minimum distance
// (the default min distance is 1, for a small object). The minimum
// distance simply is the distance in which the sound gets played
// at maximum volume.
if (music != null)
music.MinDistance = 5.0f;
// Print some help text and start the display loop
Console.Out.Write("\nPlaying streamed sound in 3D.");
Console.Out.Write("\nPress ESCAPE to quit, any other key to play sound at random position.\n\n");
Console.Out.Write("+ = Listener position\n");
Console.Out.Write("o = Playing sound\n");
Random rand = new Random(); // we need random 3d positions
const float radius = 5;
float posOnCircle = 0;
while(true) // endless loop until user exits
{
// Each step we calculate the position of the 3D music.
// For this example, we let the
// music position rotate on a circle:
posOnCircle += 0.04f;
Vector3D pos3d = new Vector3D(radius * (float)Math.Cos(posOnCircle), 0,
radius * (float)Math.Sin(posOnCircle * 0.5f));
// After we know the positions, we need to let irrKlang know about the
// listener position (always position (0,0,0), facing forward in this example)
// and let irrKlang know about our calculated 3D music position
engine.SetListenerPosition(0,0,0, 0,0,1);
if (music != null)
music.Position = pos3d;
// Now print the position of the sound in a nice way to the console
// and also print the play position
string stringForDisplay = " + ";
int charpos = (int)((pos3d.X + radius) / radius * 10.0f);
if (charpos >= 0 && charpos < 20)
{
stringForDisplay = stringForDisplay.Remove(charpos, 1);
stringForDisplay = stringForDisplay.Insert(charpos, "o");
}
uint playPos = 0;
if (music != null)
playPos = music.PlayPosition;
string output = String.Format("\rx:({0}) 3dpos: {1:f} {2:f} {3:f}, playpos:{4}:{5:00} ",
stringForDisplay, pos3d.X, pos3d.Y, pos3d.Z,
playPos/60000, (playPos%60000)/1000);
Console.Write(output);
System.Threading.Thread.Sleep(100);
// Handle user input: Every time the user presses a key in the console,
// play a random sound or exit the application if he pressed ESCAPE.
if (_kbhit()!=0)
{
int key = _getch();
if (key == 27)
break; // user pressed ESCAPE key
else
{
// Play random sound at some random position.
Vector3D pos = new Vector3D(((float)rand.NextDouble() % radius*2.0f) - radius, 0, 0);
string filename;
if (rand.Next()%2 != 0)
filename = "../../media/bell.wav";
else
filename = "../../media/explosion.wav";
engine.Play3D(filename, pos.X, pos.Y, pos.Z);
Console.Write("\nplaying {0} at {1:f} {2:f} {3:f}\n",
filename, pos.X, pos.Y, pos.Z);
}
}
}
}
// simple functions for reading keys from the console
[System.Runtime.InteropServices.DllImport("msvcrt")]
static extern int _kbhit();
[System.Runtime.InteropServices.DllImport("msvcrt")]
static extern int _getch();
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,58 @@
using System.Reflection;
using System.Runtime.CompilerServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory which is
// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

View File

@@ -0,0 +1,104 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{49444AE7-02F6-40C2-9348-D2F67448CC3B}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.03.MemoryPlayback</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._03._MemoryPlayback</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET2.0, Version=1.6.0.0, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86" />
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.03.MemoryPlayback_vs2005", "CSharp.03.MemoryPlayback_vs2005.csproj", "{49444AE7-02F6-40C2-9348-D2F67448CC3B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{49444AE7-02F6-40C2-9348-D2F67448CC3B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{49444AE7-02F6-40C2-9348-D2F67448CC3B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{49444AE7-02F6-40C2-9348-D2F67448CC3B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{49444AE7-02F6-40C2-9348-D2F67448CC3B}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,179 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{DF12AC74-E3B4-473A-A103-741A3FEA8D41}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.03.MemoryPlayback</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._03.MemoryPlayback</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<OldToolsVersion>2.0</OldToolsVersion>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<FileAlignment>4096</FileAlignment>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<Optimize>true</Optimize>
<FileAlignment>4096</FileAlignment>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRuleSets>false</CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET4, Version=1.0.6617.18810, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\bin\dotnet-4\irrKlang.NET4.dll</HintPath>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.0">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4 %28x86 und x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
<Visible>False</Visible>
<ProductName>Windows Installer 3.1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual C# Express 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.03.MemoryPlayback_vs2010", "CSharp.03.MemoryPlayback_vs2010.csproj", "{DF12AC74-E3B4-473A-A103-741A3FEA8D41}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.Build.0 = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,276 @@
// This example will show how to play sounds directly from memory using irrKlang.
// This is useful for embedding sounds directly in executables as well for
// making irrKlang work together with different APIs like advanced decoders or
// middleware.
using System;
using IrrKlang;
namespace CSharp._03._MemoryPlayback
{
class Class1
{
// the following huge array simply represents the plain sound data we
// want to play back. It is just the content of a .wav file from the
// game 'Hell Troopers'. Usually this sound is somewhere provided by
// some external software, but to keep it simple we just use this array as memory.
// test.wav, converted to this array by bin2h tool, available at bin2h.irrlicht3d.org
private static byte[] SoundDataArray = {
0x52,0x49,0x46,0x46,0x54,0xf,0x0,0x0,0x57,0x41,0x56,0x45,0x66,0x6d,0x74,0x20,0x12,
0x0,0x0,0x0,0x1,0x0,0x1,0x0,0x40,0x1f,0x0,0x0,0x40,0x1f,0x0,0x0,0x1,0x0,0x8,
0x0,0x0,0x0,0x66,0x61,0x63,0x74,0x4,0x0,0x0,0x0,0x22,0xf,0x0,0x0,0x64,0x61,0x74,
0x61,0x22,0xf,0x0,0x0,0x7f,0x80,0x7f,0x7f,0x80,0x80,0x80,0x80,0x80,0x7f,0x80,0x80,0x81,
0x80,0x80,0x7e,0x7f,0x7f,0x7f,0x7f,0x80,0x7f,0x81,0x80,0x80,0x80,0x80,0x7e,0x7e,0x7e,0x7e,
0x7e,0x7e,0x80,0x7f,0x7f,0x7f,0x7f,0x7f,0x7f,0x7e,0x7e,0x7e,0x7e,0x7e,0x7f,0x80,0x80,0x7f,
0x80,0x7f,0x80,0x81,0x81,0x80,0x81,0x80,0x80,0x80,0x80,0x80,0x80,0x81,0x81,0x81,0x83,0x84,
0x85,0x86,0x87,0x86,0x87,0x87,0x85,0x83,0x71,0x5a,0x4f,0x6e,0x6d,0x81,0x8a,0x8c,0x8f,0x91,
0x97,0x84,0x76,0x6e,0x5f,0x68,0x77,0x83,0x85,0x89,0x90,0x94,0x95,0x8f,0x7b,0x70,0x6b,0x72,
0x76,0x80,0x83,0x84,0x8c,0x8f,0x90,0x87,0x7f,0x72,0x6f,0x70,0x77,0x7b,0x7d,0x82,0x84,0x85,
0x87,0x86,0x7e,0x79,0x76,0x77,0x79,0x7e,0x80,0x7f,0x85,0x87,0x89,0x85,0x80,0x7c,0x7b,0x7b,
0x7f,0x7f,0x83,0x84,0x88,0x8a,0x88,0x85,0x7d,0x7c,0x7d,0x80,0x83,0x8b,0x94,0x9d,0xa6,0x8d,
0x31,0x50,0x52,0x73,0x92,0x7e,0x8f,0x81,0xbb,0xb8,0x9f,0x87,0x5b,0x45,0x4c,0x5f,0x80,0x7c,
0x8a,0x8f,0x97,0xa7,0xa8,0x95,0x6a,0x5b,0x57,0x63,0x78,0x83,0x84,0x87,0x95,0x9a,0x9a,0x92,
0x81,0x60,0x5f,0x65,0x75,0x7f,0x84,0x83,0x82,0x8e,0x91,0x8c,0x7b,0x73,0x6a,0x70,0x7b,0x86,
0x88,0x87,0x88,0x87,0x89,0x87,0x80,0x75,0x74,0x75,0x7e,0x84,0x86,0x84,0x84,0x84,0x83,0x83,
0x7c,0x78,0x7a,0x7e,0x86,0x90,0x93,0x94,0x93,0x9b,0x87,0x5e,0x3c,0x3b,0x3e,0x49,0x98,0x99,
0x9d,0x9d,0xab,0xa0,0x97,0x8e,0x51,0x3e,0x49,0x58,0x6f,0x99,0xa7,0x9d,0xa0,0xa2,0x95,0x8a,
0x80,0x5a,0x50,0x5d,0x70,0x7e,0x9b,0x9d,0x94,0x8a,0x86,0x84,0x7b,0x71,0x5f,0x5d,0x69,0x88,
0x96,0x99,0x91,0x88,0x7e,0x80,0x81,0x80,0x80,0x82,0x87,0x8f,0x9d,0xa2,0xa7,0xad,0xae,0x31,
0x31,0x47,0x31,0x78,0x87,0xbc,0xab,0xba,0xc1,0xa3,0xb2,0x9d,0x31,0x39,0x31,0x52,0x5f,0x81,
0xb2,0xa4,0xb7,0xab,0x9a,0x9b,0x80,0x6a,0x37,0x3e,0x51,0x6b,0x98,0xb0,0xad,0xaa,0x95,0x8f,
0x7c,0x7e,0x6c,0x53,0x53,0x64,0x77,0x91,0xa4,0xa1,0x97,0x7d,0x70,0x70,0x73,0x71,0x76,0x77,
0x79,0x8b,0x94,0x97,0x90,0x86,0x74,0x6d,0x70,0x79,0x7d,0x86,0x87,0x89,0x92,0x98,0x9c,0x9d,
0xa0,0xa7,0xb3,0xa2,0x31,0x50,0x31,0x57,0x7f,0xb7,0xc0,0xa1,0xc2,0x9f,0xb3,0x65,0x4a,0x66,
0x31,0x33,0x31,0xa0,0xa1,0xc6,0xc0,0xb9,0xa0,0xa5,0x7c,0x71,0x52,0x46,0x31,0x42,0x83,0x8e,
0xc6,0xb7,0xa9,0x78,0x70,0x6d,0x61,0x70,0x6e,0x6d,0x7b,0x82,0x8e,0x96,0x9f,0x93,0x7c,0x7e,
0x79,0x90,0xa2,0xaa,0xb8,0xbd,0x97,0x36,0x31,0x31,0x31,0x47,0x6b,0xa0,0xaa,0xc6,0xbf,0xad,
0xc1,0xb0,0x6d,0x6b,0x31,0x31,0x31,0x6e,0x7e,0xc0,0xc5,0xbc,0xbd,0xaf,0x91,0x7e,0x6e,0x45,
0x36,0x3c,0x54,0x65,0x8f,0xb5,0xbe,0xae,0x97,0x78,0x5a,0x5b,0x5a,0x6e,0x79,0x7e,0x88,0x93,
0x9f,0xa0,0xa0,0x89,0x79,0x77,0x7b,0x84,0xb0,0xbe,0xc2,0xa0,0x43,0x45,0x31,0x31,0x44,0x69,
0xa5,0xaf,0xbd,0x9f,0xa5,0xc6,0x89,0x9d,0x42,0x31,0x31,0x31,0x47,0x64,0xba,0xc7,0xbe,0xc1,
0xa4,0x96,0x8a,0x84,0x63,0x55,0x42,0x36,0x40,0x6b,0x7d,0xae,0xb2,0xb2,0xa7,0x9d,0x95,0x7d,
0x7b,0x60,0x5f,0x62,0x6b,0x80,0x99,0xc4,0xc3,0xc3,0xb5,0x7b,0x41,0x31,0x31,0x31,0x39,0x84,
0xa4,0xbb,0xbd,0xbd,0xc6,0xb0,0xaa,0x6f,0x45,0x31,0x31,0x31,0x31,0x86,0xaa,0xc4,0xc6,0xc3,
0xb6,0xa8,0x85,0x76,0x64,0x3e,0x31,0x31,0x37,0x52,0xa3,0xc3,0xc6,0xc5,0xc1,0xb5,0x85,0x76,
0x65,0x62,0x65,0x79,0x8b,0xa3,0xb3,0x89,0x87,0x3a,0x31,0x37,0x45,0x60,0x87,0x99,0x92,0x9d,
0xb0,0x8c,0xa3,0x87,0x7c,0x73,0x4f,0x45,0x41,0x65,0x75,0x9f,0xb2,0xa7,0xaa,0xa0,0x94,0x83,
0x7b,0x67,0x59,0x5a,0x4f,0x57,0x69,0x91,0xa2,0xbc,0xba,0xaf,0x9d,0x93,0x8a,0x92,0x9d,0xb3,
0x7f,0x5a,0x31,0x31,0x31,0x31,0x60,0xb2,0xc2,0xc4,0xb6,0xbc,0x7b,0x89,0x92,0x6b,0x6a,0x58,
0x33,0x31,0x4d,0x6e,0x84,0xc9,0xc4,0xc4,0xb2,0x98,0x73,0x65,0x5b,0x58,0x56,0x62,0x58,0x66,
0x88,0x9a,0xb8,0xc3,0xc5,0xbe,0xad,0xac,0xa6,0x84,0x6a,0x31,0x31,0x31,0x31,0x31,0x83,0xab,
0xc7,0xc3,0xc6,0xb8,0xa9,0x9b,0x69,0x66,0x55,0x38,0x31,0x31,0x3c,0x4f,0xa2,0xb8,0xc5,0xc3,
0xc5,0xa3,0x87,0x74,0x52,0x53,0x58,0x57,0x5f,0x70,0x7b,0x8f,0xb6,0xc2,0xc4,0xc4,0xc3,0x99,
0x83,0x5a,0x31,0x31,0x31,0x31,0x4a,0x9a,0xb9,0xb8,0xc8,0xc1,0xc3,0xc0,0xb1,0x90,0x6a,0x48,
0x31,0x31,0x31,0x33,0x61,0x9a,0xb8,0xc6,0xc6,0xc4,0xb0,0xa1,0x97,0x7c,0x6e,0x63,0x54,0x53,
0x66,0x7b,0x94,0xc5,0xc6,0xc4,0x97,0x4f,0x31,0x31,0x31,0x31,0x5f,0x7a,0x8a,0xa0,0xaa,0x9d,
0xaf,0xb5,0xb6,0xba,0x8f,0x73,0x52,0x31,0x31,0x3f,0x57,0x69,0x9c,0xa9,0xab,0xac,0xa7,0xa6,
0xa4,0xa5,0x94,0x8a,0x83,0x6e,0x71,0x8a,0xa5,0xaf,0xad,0x99,0x72,0x31,0x31,0x31,0x45,0x69,
0xaa,0xbf,0xc6,0xb3,0x9c,0x85,0x7a,0x74,0x8a,0x86,0x80,0x6e,0x58,0x41,0x41,0x4c,0x73,0x8e,
0xad,0xb0,0xaf,0x94,0x89,0x84,0x81,0x89,0x91,0x95,0x94,0x8b,0x8d,0x99,0xa7,0xb0,0x9a,0x88,
0x68,0x31,0x31,0x31,0x38,0x55,0x94,0xaa,0xb7,0xb4,0xa8,0x9a,0x8a,0x8a,0x8c,0x8c,0x87,0x6f,
0x5e,0x3f,0x3c,0x3e,0x5b,0x70,0x88,0xa8,0xb0,0xb1,0xaa,0xa4,0x99,0x97,0x95,0x9b,0xa0,0xac,
0xac,0xac,0x87,0x6e,0x57,0x31,0x31,0x31,0x3a,0x55,0x8a,0xa0,0xab,0xb5,0xb1,0x9f,0x9c,0x95,
0x8d,0x87,0x78,0x6b,0x5f,0x47,0x42,0x44,0x55,0x64,0x87,0x95,0xa2,0xb0,0xb1,0xae,0xa5,0xa1,
0x9a,0x9b,0x9f,0xa8,0xad,0xaf,0x9e,0x85,0x54,0x39,0x31,0x31,0x31,0x40,0x75,0x92,0xaf,0xb3,
0xb3,0x9d,0x96,0x8e,0x87,0x86,0x81,0x7b,0x72,0x5d,0x50,0x47,0x48,0x52,0x6f,0x80,0x92,0xa6,
0xad,0xa9,0xa5,0x9f,0x97,0x97,0x9a,0xa4,0xa8,0xb0,0xaa,0x9f,0x71,0x5c,0x40,0x31,0x31,0x36,
0x4d,0x66,0x8f,0x95,0x9f,0x98,0x8f,0x8f,0x8a,0x8f,0x90,0x94,0x86,0x7b,0x75,0x57,0x54,0x4e,
0x57,0x5b,0x7e,0x8a,0x9a,0xad,0xb1,0xaf,0xa7,0xa3,0x9a,0x9a,0x9b,0x9d,0x9f,0x9f,0x84,0x77,
0x4f,0x41,0x33,0x31,0x31,0x46,0x63,0x7d,0x94,0xa2,0x98,0x9f,0x92,0x8a,0x84,0x84,0x81,0x82,
0x83,0x7e,0x7c,0x6e,0x6a,0x65,0x6e,0x75,0x86,0xa3,0xb0,0xb9,0xb5,0xac,0x91,0x85,0x7b,0x75,
0x77,0x84,0x8c,0x8b,0x83,0x73,0x66,0x4e,0x4a,0x4f,0x5b,0x66,0x83,0x8b,0x92,0x8e,0x88,0x79,
0x76,0x75,0x7e,0x86,0x91,0x93,0x92,0x86,0x7e,0x76,0x6b,0x6b,0x76,0x80,0x89,0x9a,0x9d,0x9b,
0x90,0x86,0x75,0x71,0x6e,0x74,0x78,0x80,0x8c,0x91,0x8f,0x8b,0x84,0x79,0x75,0x72,0x75,0x78,
0x81,0x84,0x87,0x84,0x82,0x7a,0x78,0x76,0x78,0x7b,0x7e,0x84,0x86,0x86,0x83,0x81,0x7a,0x79,
0x78,0x7a,0x7d,0x83,0x86,0x88,0x88,0x86,0x83,0x7e,0x7c,0x7a,0x7c,0x7e,0x82,0x83,0x84,0x84,
0x83,0x80,0x7e,0x7d,0x7d,0x7d,0x7f,0x81,0x80,0x7f,0x7e,0x7c,0x79,0x78,0x79,0x7c,0x7e,0x7f,
0x81,0x80,0x80,0x7e,0x7d,0x7d,0x7e,0x7e,0x81,0x82,0x82,0x82,0x81,0x80,0x7d,0x7d,0x7e,0x7f,
0x81,0x83,0x83,0x84,0x83,0x81,0x7f,0x7e,0x7d,0x7e,0x7e,0x80,0x81,0x81,0x80,0x7e,0x7e,0x7e,
0x7e,0x7e,0x7f,0x80,0x81,0x80,0x80,0x7e,0x7f,0x7e,0x80,0x7f,0x81,0x82,0x82,0x82,0x81,0x80,
0x7e,0x7d,0x7c,0x7d,0x80,0x81,0x82,0x82,0x81,0x81,0x80,0x80,0x80,0x81,0x80,0x80,0x7f,0x7e,
0x7d,0x7d,0x7c,0x7c,0x7e,0x7f,0x80,0x81,0x81,0x81,0x80,0x80,0x80,0x80,0x80,0x81,0x81,0x81,
0x81,0x80,0x7e,0x7e,0x7d,0x7e,0x7e,0x7e,0x7f,0x7f,0x80,0x80,0x80,0x80,0x81,0x80,0x81,0x80,
0x80,0x80,0x80,0x7f,0x7f,0x7e,0x7e,0x7e,0x7e,0x7e,0x7e,0x7e,0x7f,0x7f,0x80,0x7f,0x80,0x80,
0x80,0x80,0x81,0x81,0x81,0x80,0x7e,0x7e,0x7e,0x7c,0x7c,0x7d,0x7e,0x7e,0x80,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x7e,0x7e,0x7e,0x7e,0x7e,0x7e,0x7e,0x7e,0x7f,0x7f,0x7f,
0x7f,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x81,0x80,0x80,0x80,0x7e,0x7e,0x7d,0x7e,0x7e,
0x7e,0x7f,0x7f,0x7e,0x7e,0x7f,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x7f,0x80,0x7f,
0x7e,0x7f,0x80,0x7f,0x7f,0x7f,0x7f,0x7f,0x80,0x7f,0x80,0x7f,0x80,0x80,0x81,0x80,0x80,0x7f,
0x80,0x7d,0x7e,0x7e,0x7e,0x7e,0x7f,0x80,0x80,0x80,0x80,0x80,0x81,0x80,0x80,0x80,0x7f,0x7f,
0x7f,0x7f,0x7e,0x7f,0x7f,0x80,0x80,0x80,0x80,0x7f,0x7f,0x7e,0x7f,0x80,0x7f,0x80,0x80,0x80,
0x80,0x80,0x80,0x80,0x7e,0x7e,0x7e,0x7e,0x7e,0x7f,0x80,0x80,0x80,0x80,0x80,0x80,0x7f,0x7f,
0x7f,0x7f,0x7e,0x80,0x7f,0x80,0x80,0x80,0x7f,0x80,0x7f,0x7f,0x80,0x7f,0x80,0x80,0x80,0x80,
0x80,0x7f,0x7f,0x7f,0x7f,0x7f,0x80,0x80,0x80,0x7f,0x7f,0x7f,0x7f,0x7f,0x80,0x7f,0x80,0x80,
0x80,0x80,0x80,0x80,0x80,0x80,0x7f,0x7f,0x7e,0x80,0x7f,0x80,0x80,0x80,0x80,0x7f,0x7e,0x7f,
0x7f,0x80,0x80,0x7f,0x80,0x80,0x80,0x80,0x80,0x80,0x7f,0x80,0x80,0x7f,0x7e,0x7f,0x7f,0x7f,
0x7f,0x7f,0x7f,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x7f,0x7e,0x7e,0x7e,0x7f,0x7e,0x7e,
0x7f,0x80,0x7f,0x7f,0x7e,0x7f,0x7f,0x80,0x80,0x7f,0x7f,0x7f,0x80,0x80,0x80,0x7f,0x80,0x80,
0x7f,0x7f,0x7f,0x7e,0x7e,0x80,0x80,0x80,0x80,0x80,0x81,0x80,0x80,0x7f,0x7f,0x7e,0x7e,0x7e,
0x7e,0x80,0x78,0x5f,0x94,0x8a,0x90,0x7c,0x78,0x5b,0xa7,0xaa,0x89,0x68,0x68,0x7f,0xa1,0x95,
0x7b,0x61,0x43,0x97,0xaa,0xae,0x76,0x4e,0x5b,0xac,0x97,0x76,0x4f,0x6e,0x88,0x99,0x90,0x88,
0x31,0x7a,0xbb,0xac,0x86,0x6e,0x6e,0xa9,0x98,0x7c,0x45,0x52,0x71,0xab,0x9e,0x8a,0x7d,0x86,
0x90,0x97,0x8a,0x5f,0x51,0x57,0x8c,0x80,0x83,0x7c,0x8f,0x94,0x99,0x8e,0x85,0x80,0x87,0x85,
0x81,0x7c,0x87,0x87,0x64,0x6a,0x6d,0x75,0x78,0x74,0x87,0x7c,0x92,0x89,0x96,0x89,0x91,0x86,
0x87,0x71,0x7b,0x80,0x67,0x76,0x66,0x6d,0x75,0x7d,0x79,0x83,0x8f,0x93,0x9c,0x8d,0x82,0x7c,
0x7b,0x7f,0x73,0x73,0x79,0x70,0x80,0x7a,0x8c,0x7a,0x84,0x83,0x83,0x84,0x83,0x8c,0x8b,0x79,
0x80,0x89,0x6b,0x79,0x7c,0x81,0x7d,0x81,0x86,0x8f,0x84,0x87,0x91,0x94,0x89,0x7e,0x88,0x91,
0x86,0x87,0x7e,0x81,0x80,0x86,0x78,0x7b,0x81,0x7a,0x70,0x78,0x75,0x6d,0x66,0x6a,0x77,0x78,
0x79,0x7d,0x86,0x8a,0x8e,0x91,0x97,0x91,0x94,0x9d,0x97,0x96,0x9c,0x99,0xa2,0xa4,0xb0,0x6c,
0x47,0x80,0x5d,0x50,0x38,0x62,0x58,0x56,0x6b,0x7b,0x7c,0x7e,0x88,0x75,0x79,0x6a,0x59,0x52,
0x70,0x6d,0x68,0x7f,0xac,0xaf,0xa4,0xc0,0xc3,0xbd,0xb3,0xbd,0xc3,0xbc,0x73,0x67,0x7b,0x52,
0x31,0x31,0x5a,0x4d,0x60,0x87,0x95,0x9e,0xa1,0x99,0x86,0x81,0x76,0x47,0x3e,0x4b,0x3e,0x4a,
0x6d,0x87,0x9a,0xc8,0xc1,0xbb,0xc3,0xc3,0xbf,0xbe,0xc3,0x7e,0x31,0x89,0x38,0x31,0x31,0x51,
0x70,0x77,0xa7,0xad,0xb7,0xb5,0xb6,0x7c,0x71,0x77,0x5a,0x31,0x42,0x46,0x31,0x4a,0x71,0x99,
0x9f,0xc9,0xc1,0xc7,0xc3,0xc5,0xbe,0xb7,0xc4,0x31,0x31,0x45,0x31,0x31,0x31,0x7e,0x84,0xb3,
0xc8,0xbc,0xc1,0xc0,0x93,0x60,0x59,0x4a,0x31,0x31,0x3a,0x47,0x45,0x71,0x8f,0xb9,0xba,0xc2,
0xc3,0xc5,0xc3,0xc3,0xb7,0xbe,0xbf,0x65,0x31,0x68,0x31,0x31,0x31,0xb3,0x8f,0xb5,0xba,0xc5,
0xbf,0xc1,0x8e,0x34,0x52,0x31,0x31,0x31,0x5f,0x5a,0x6a,0x97,0xad,0xc1,0xc6,0xc3,0xc4,0xc3,
0xc3,0xb0,0xb0,0xc0,0x75,0x31,0x6a,0x49,0x31,0x31,0x73,0x95,0xb5,0xcd,0xbf,0xbb,0xbe,0x8e,
0x3f,0x47,0x3f,0x31,0x31,0x3f,0x60,0x7b,0x8c,0xaa,0xb9,0xbe,0xbe,0xc2,0xc3,0xbf,0xae,0xad,
0xbf,0x73,0x31,0x5b,0x33,0x31,0x31,0x7a,0x9d,0xc0,0xc9,0xba,0xba,0xb6,0x79,0x31,0x3f,0x37,
0x31,0x31,0x52,0x76,0x8c,0xac,0xa7,0xb2,0xbb,0xad,0xb1,0xc2,0xc0,0xbd,0xab,0xc3,0x5f,0x31,
0x31,0x39,0x31,0x31,0x8e,0xb2,0xc0,0xc9,0xba,0xb5,0xc2,0xb3,0x31,0x31,0x31,0x31,0x31,0x60,
0x78,0x82,0xab,0xac,0xba,0xb9,0xab,0xb8,0xc5,0xbe,0xbb,0xad,0xc5,0xa7,0x31,0x41,0x59,0x31,
0x31,0x4b,0xa5,0xa8,0xcc,0xbc,0xb6,0xc1,0x95,0x3c,0x31,0x39,0x31,0x31,0x4c,0x85,0x8c,0xad,
0xa5,0xad,0xaf,0xab,0x9c,0xc3,0xc0,0xbf,0xaf,0xc1,0x5d,0x31,0x31,0x31,0x31,0x31,0x8e,0xaa,
0xc6,0xc6,0xba,0xb3,0xc6,0xab,0x31,0x31,0x31,0x31,0x31,0x65,0x81,0x90,0xba,0xa8,0xb2,0xb4,
0xa1,0x9c,0xb6,0xc3,0xb3,0xbb,0xc1,0xa1,0x31,0x5e,0x54,0x31,0x31,0x53,0x9b,0xaa,0xcc,0xb6,
0xb0,0xc0,0x86,0x35,0x39,0x38,0x31,0x35,0x56,0x80,0x99,0xb2,0x9f,0xa8,0xae,0xa5,0x9d,0xc6,
0xc0,0xc2,0xb1,0xc3,0x9d,0x31,0x52,0x31,0x31,0x31,0xa4,0x9d,0xb3,0xbe,0xbe,0xbf,0xc2,0x85,
0x31,0x3a,0x31,0x31,0x33,0x73,0x87,0x9d,0xaf,0xa4,0xb5,0xa5,0x9f,0xb3,0xc2,0xbf,0xb2,0xbe,
0xa3,0x31,0x31,0x5f,0x31,0x31,0x51,0xa2,0xaa,0xcb,0xbe,0xb3,0xc1,0xc3,0x35,0x31,0x3e,0x31,
0x31,0x4d,0x72,0x9b,0xad,0xa9,0xb8,0xc1,0xac,0xa6,0xbe,0xbd,0xb8,0xbb,0xb8,0x6b,0x31,0x6d,
0x31,0x31,0x31,0x7f,0x9b,0xc0,0xc8,0xc3,0xba,0xb1,0x61,0x31,0x3f,0x31,0x31,0x34,0x63,0x8d,
0xaa,0xb5,0xb0,0xbd,0xa5,0x99,0xa4,0xc5,0xb7,0xb2,0xc3,0xa1,0x31,0x5f,0x64,0x31,0x31,0x54,
0x8f,0xa5,0xbf,0xc2,0xbc,0xc3,0x8f,0x3a,0x44,0x3a,0x31,0x31,0x4f,0x81,0x9b,0xad,0xae,0xbe,
0xb6,0xa9,0x9b,0xb9,0xb1,0xa5,0xc8,0xb5,0x31,0x4c,0x9d,0x31,0x31,0x99,0x94,0x84,0xc5,0xb8,
0xbb,0xc7,0xa5,0x31,0x4d,0x54,0x31,0x31,0x40,0x78,0x8f,0xa4,0xb2,0xc1,0xbd,0xac,0xa5,0xb6,
0xa7,0xaf,0xc5,0xb8,0x31,0x62,0xb1,0x31,0x31,0xb2,0x90,0x76,0xc1,0xb3,0xb9,0xca,0x9d,0x31,
0x5d,0x5f,0x31,0x31,0x70,0x76,0x8c,0xaa,0xac,0xbd,0xbb,0xaa,0xac,0xc3,0xaa,0xab,0xc7,0xad,
0x31,0x83,0x31,0x31,0x31,0xbd,0x79,0x83,0xba,0xb3,0xc0,0xc6,0x87,0x31,0x6c,0x52,0x31,0x31,
0x73,0x77,0x91,0xaf,0xb2,0xc5,0xa7,0xa3,0xb1,0xa9,0x9e,0xba,0x91,0x31,0xa8,0x75,0x31,0x31,
0x81,0xb9,0xa4,0xcd,0xb9,0xb2,0xc6,0x6c,0x31,0x6c,0x38,0x31,0x33,0x62,0x74,0x96,0xa8,0xba,
0xc5,0xc1,0xa4,0xa7,0xb2,0xa1,0x94,0xc7,0x89,0x31,0xab,0x6b,0x31,0x31,0x8f,0x68,0xac,0xcd,
0xb6,0xaf,0xc8,0x66,0x31,0x6d,0x36,0x31,0x3c,0x65,0x72,0x94,0xab,0xb8,0xc5,0xbd,0xa8,0xb0,
0xa8,0x8f,0x8a,0xc5,0x91,0x31,0xa5,0x7f,0x31,0x31,0x86,0x71,0xa8,0xcd,0xad,0xad,0xb7,0x69,
0x31,0x75,0x3f,0x31,0x3d,0x65,0x7a,0x8d,0xa8,0xb6,0xc5,0xbf,0xa5,0xaf,0xaa,0x97,0x90,0xc5,
0x8b,0x31,0xab,0x6d,0x31,0x31,0x93,0x69,0xac,0xb1,0xb3,0xb1,0xb5,0x64,0x31,0x70,0x39,0x31,
0x3f,0x6a,0x7b,0x8c,0xa2,0xbd,0xc4,0xa7,0xa1,0xab,0xa9,0x91,0x8c,0xc3,0xa8,0x31,0x90,0x9e,
0x31,0x31,0xbe,0x77,0x8b,0xb6,0xaf,0xb2,0xc0,0x81,0x42,0x77,0x4d,0x31,0x31,0x5d,0x79,0x87,
0xa8,0xbe,0xc3,0xaa,0x9f,0xad,0xa7,0x97,0x91,0xae,0xc8,0x31,0x31,0xb1,0x31,0x31,0x80,0xc2,
0x62,0xcd,0xac,0xaf,0xc5,0xb8,0x31,0x5c,0x83,0x31,0x31,0x6f,0x70,0x6e,0x8a,0xa4,0xc3,0xb8,
0xa3,0xae,0xb7,0xab,0x8a,0x9c,0xb3,0xa2,0x31,0xa2,0xa3,0x31,0x31,0x65,0xc6,0x81,0xcd,0xaf,
0xb8,0xc1,0x7b,0x36,0x5d,0x4a,0x31,0x31,0x64,0x71,0x80,0x8e,0xb8,0xc5,0xb8,0x8f,0xa4,0xb9,
0x87,0x8a,0xa6,0xb7,0xc7,0x31,0x31,0xa8,0x31,0x31,0x6b,0xc3,0x63,0xc8,0xb6,0xb4,0xc1,0xba,
0x49,0x75,0x95,0x31,0x31,0x37,0x69,0x5b,0x8a,0x93,0xae,0xb0,0x92,0xad,0xb2,0xa6,0x86,0x9d,
0xa7,0xbb,0xc4,0x31,0x31,0xc6,0x31,0x31,0x31,0xb3,0x3f,0xc8,0xb5,0xb8,0xc1,0xb3,0x76,0x8d,
0x94,0x31,0x31,0x51,0x4c,0x55,0x79,0x9c,0xa8,0xad,0x91,0x97,0xa9,0x8a,0x79,0xa2,0xa7,0x99,
0xb8,0xc5,0x31,0x31,0x75,0x31,0x31,0x88,0xa1,0x31,0xcb,0xad,0xba,0xc5,0xba,0x62,0x96,0x9c,
0x31,0x31,0x5e,0x46,0x44,0x8c,0x8c,0xa0,0xa5,0xa2,0xa2,0xaa,0x92,0x8e,0x98,0x94,0x8d,0x96,
0xc6,0xb1,0x3e,0x87,0xbb,0x31,0x31,0x4d,0x63,0x50,0xa2,0xad,0xb8,0xbb,0x9a,0x73,0xa3,0x68,
0x31,0x48,0x5b,0x45,0x51,0x7c,0x94,0xa8,0xa7,0xa4,0xac,0x90,0x7e,0x7a,0x96,0x82,0x85,0x9f,
0xb2,0xc0,0x94,0x31,0xbe,0x8f,0x31,0x31,0x71,0x41,0x5d,0xa5,0xb1,0xc1,0xb2,0x87,0x9d,0x94,
0x31,0x3e,0x57,0x45,0x48,0x7b,0x8b,0xa0,0x9f,0x9c,0x9f,0xa0,0x83,0x7b,0x86,0x83,0x79,0x90,
0xa2,0xaf,0xc5,0xac,0x31,0x31,0xa0,0x31,0x31,0x57,0x8c,0x38,0x9a,0xb5,0xb6,0xc9,0xad,0x9c,
0xab,0x65,0x31,0x41,0x4f,0x36,0x4a,0x6f,0x7d,0xa2,0xaa,0xa0,0xba,0xaa,0x86,0x81,0x81,0x6c,
0x6a,0x75,0x93,0x9b,0xac,0xc1,0xc4,0x5a,0x31,0xc2,0x31,0x31,0x37,0x7e,0x3f,0x7d,0xa6,0xb7,
0xc8,0xc1,0xa5,0xad,0xb8,0x3e,0x41,0x54,0x3c,0x31,0x66,0x78,0x82,0x99,0xb0,0xb3,0xb7,0xa0,
0x7f,0x84,0x7b,0x57,0x67,0x7b,0x88,0x97,0xb1,0xc3,0xc3,0xb9,0x6f,0x93,0xa3,0x31,0x31,0x31,
0x37,0x31,0x69,0xb6,0xbf,0xc8,0xc3,0xc2,0xb7,0x84,0x4f,0x50,0x47,0x31,0x31,0x54,0x7a,0x8e,
0x9f,0xb6,0xc5,0xbe,0x9d,0x95,0x6d,0x5c,0x57,0x5d,0x62,0x7d,0x91,0xa0,0xc2,0xc3,0xc4,0xc1,
0x9f,0x45,0xb6,0x69,0x31,0x31,0x3c,0x31,0x48,0xb5,0xbd,0xc2,0xc3,0xc5,0xc4,0xa8,0x64,0x4e,
0x4f,0x33,0x31,0x38,0x5c,0x80,0x97,0xb9,0xc6,0xc3,0xad,0x9c,0x92,0x65,0x47,0x4f,0x51,0x5a,
0x72,0x8a,0xb3,0xbf,0xc3,0xc4,0xc3,0xc3,0x91,0x31,0xb4,0x53,0x31,0x31,0x4c,0x5e,0x55,0xa5,
0xc4,0xc2,0xc8,0xc5,0xc4,0xbe,0x5b,0x3b,0x4c,0x31,0x31,0x3a,0x5f,0x6f,0x98,0xaf,0xc6,0xc3,
0xc1,0xa6,0xa5,0x62,0x4a,0x3b,0x49,0x3e,0x4d,0x79,0x93,0xb3,0xbd,0xc4,0xc3,0xc4,0xc3,0xc2,
0xa4,0x31,0x9a,0x65,0x31,0x31,0x41,0x31,0x4c,0xc6,0xbe,0xbf,0xc2,0xc5,0xc0,0xab,0x6b,0x47,
0x54,0x37,0x31,0x36,0x70,0x6f,0x8f,0xbb,0xc5,0xc5,0xc1,0xb2,0x92,0x80,0x54,0x3f,0x36,0x41,
0x45,0x62,0x94,0xa7,0xb5,0xc5,0xc5,0xc3,0xc3,0xc4,0xb6,0xa2,0x66,0x44,0xb0,0x31,0x31,0x31,
0x5e,0x34,0x7a,0xc7,0xb6,0xc3,0xbf,0xc5,0xaf,0x89,0x47,0x51,0x4f,0x31,0x31,0x4c,0x71,0x7e,
0x9d,0xc0,0xc5,0xbf,0xb7,0xb2,0x7e,0x65,0x5b,0x44,0x3c,0x41,0x51,0x63,0x8f,0x9a,0xaa,0xc3,
0xc3,0xbb,0xbe,0xb8,0xac,0xaf,0xa1,0x66,0x31,0xb8,0x31,0x31,0x31,0x89,0x3c,0x7f,0xb6,0xa4,
0xbc,0xc7,0xbb,0xa4,0x92,0x4d,0x4c,0x5f,0x3c,0x31,0x53,0x71,0x75,0x91,0x9f,0xbd,0xc0,0xb4,
0xaf,0xa6,0x75,0x50,0x5d,0x47,0x38,0x3a,0x69,0x6c,0x87,0xa5,0xaf,0xc0,0xbb,0xb8,0xb3,0xad,
0x9a,0x9a,0xa7,0x8c,0x65,0x45,0x36,0x31,0x39,0x8b,0x71,0x34,0xaf,0xbc,0xb5,0xc0,0xa0,0xa5,
0xa0,0x9a,0x5d,0x6d,0x4a,0x37,0x4e,0x71,0x6d,0x86,0x94,0x9f,0xb1,0xa8,0xa8,0xa7,0x9b,0x77,
0x6b,0x5a,0x61,0x4b,0x38,0x69,0x71,0x7b,0x92,0xad,0xa5,0xaa,0xb6,0xaa,0x9e,0x9a,0x97,0x94,
0xa0,0xa0,0x87,0x31,0xb8,0x31,0x31,0x3f,0x8c,0x36,0x4d,0xb9,0x92,0xc8,0x9a,0xb0,0x99,0xad,
0x63,0x75,0x7b,0x3c,0x4e,0x55,0x73,0x5b,0x87,0x90,0x9f,0xa5,0xa2,0xad,0xa1,0x9b,0x7b,0x7d,
0x70,0x3f,0x57,0x66,0x49,0x61,0x86,0x86,0x8c,0xb3,0xb0,0xa6,0xaa,0xa0,0x92,0x91,0x8c,0x89,
0x96,0x96,0x89,0x31,0xc1,0x79,0x31,0x44,0x72,0x35,0x49,0x89,0x84,0x87,0xbc,0xab,0xb2,0xb0,
0x80,0x6d,0x89,0x74,0x49,0x5c,0x65,0x58,0x66,0x7d,0x8f,0x96,0x97,0xa5,0xa8,0x9f,0x90,0x84,
0x80,0x71,0x4f,0x49,0x71,0x3e,0x52,0x76,0x89,0x81,0xa7,0xb6,0xa4,0xa6,0xa3,0x9f,0x8a,0x89,
0x86,0x8e,0x95,0x93,0x98,0x55,0xaa,0xa2,0x3b,0x54,0x62,0x45,0x39,0x79,0x86,0x70,0x91,0x9a,
0xaf,0xa8,0x93,0x76,0x91,0x84,0x61,0x68,0x69,0x5b,0x5d,0x79,0x7f,0x87,0x8c,0x9a,0xa2,0x9d,
0x98,0x94,0x91,0x81,0x73,0x70,0x6b,0x4f,0x6a,0x55,0x65,0x72,0x87,0x89,0x91,0xa7,0x9d,0xaa,
0x9c,0x95,0x8d,0x89,0x80,0x81,0x8e,0x8f,0x92,0x83,0x65,0xc9,0x31,0x5b,0x5b,0x75,0x3c,0x55,
0x9a,0x6d,0x97,0x80,0xa2,0x95,0x9d,0x81,0x8f,0x94,0x65,0x73,0x71,0x70,0x5d,0x6b,0x78,0x7b,
0x80,0x83,0x94,0x91,0x94,0x8e,0x96,0x90,0x7e,0x7e,0x7b,0x71,0x65,0x5d,0x6c,0x73,0x60,0x74,
0x84,0x86,0x88,0xa4,0x9f,0x95,0x97,0x93,0x8e,0x82,0x7c,0x7d,0x81,0x86,0x94,0x98,0x8c,0x5d,
0xaf,0x3c,0x54,0x61,0x7a,0x4c,0x4f,0x8c,0x7c,0x8e,0x86,0x91,0x92,0x99,0x8d,0x8e,0x94,0x70,
0x72,0x76,0x77,0x66,0x72,0x77,0x77,0x7a,0x80,0x8b,0x8a,0x8e,0x8e,0x91,0x8f,0x84,0x84,0x81,
0x7c,0x72,0x76,0x76,0x6e,0x67,0x79,0x79,0x6e,0x81,0x88,0x87,0x89,0x99,0x93,0x8f,0x91,0x8b,
0x87,0x83,0x7e,0x7d,0x82,0x80,0x8c,0x97,0x68,0x6a,0xa0,0x5a,0x66,0x74,0x79,0x5b,0x71,0x81,
0x73,0x86,0x7e,0x91,0x8e,0x95,0x85,0x8b,0x91,0x7b,0x79,0x7b,0x7a,0x70,0x74,0x77,0x79,0x79,
0x7b,0x89,0x87,0x8a,0x8a,0x8e,0x8e,0x85,0x84,0x81,0x7f,0x79,0x77,0x77,0x76,0x76,0x7a,0x7c,
0x74,0x78,0x84,0x7d,0x7a,0x8d,0x8a,0x81,0x88,0x8c,0x89,0x80,0x84,0x7e,0x7f,0x80,0x7d,0x80,
0x83,0x83,0x84,0x8e,0x8e,0x91,0x73,0x7f,0x7c,0x69,0x6a,0x78,0x73,0x65,0x73,0x7c,0x75,0x7a,
0x7e,0x89,0x89,0x89,0x89,0x8c,0x86,0x80,0x7f,0x81,0x7c,0x76,0x77,0x79,0x77,0x76,0x79,0x80,
0x81,0x81,0x86,0x89,0x86,0x85,0x86,0x86,0x83,0x7e,0x7e,0x7b,0x78,0x76,0x76,0x79,0x79,0x7b,
0x7f,0x80,0x80,0x80,0x86,0x7b,0x80,0x7b,0x76,0x7f,0x7b,0x7d,0x7c,0x85,0x81,0x82,0x87,0x87,
0x84,0x87,0x87,0x85,0x89,0x8e,0x91,0x87,0x75,0x94,0x65,0x62,0x66,0x74,0x65,0x5f,0x84,0x79,
0x80,0x81,0x8c,0x8f,0x8f,0x8a,0x8b,0x8f,0x7b,0x7a,0x7b,0x7a,0x70,0x6d,0x77,0x77,0x75,0x79,
0x80,0x85,0x85,0x87,0x8f,0x8e,0x88,0x86,0x86,0x80,0x7b,0x79,0x77,0x75,0x73,0x74,0x76,0x7b,
0x7b,0x83,0x85,0x86,0x87,0x88,0x89,0x86,0x84,0x80,0x80,0x7c,0x78,0x79,0x79,0x77,0x78,0x7b,
0x7c,0x7d,0x82,0x83,0x85,0x86,0x86,0x86,0x86,0x83,0x81,0x7e,0x7d,0x7b,0x79,0x78,0x79,0x79,
0x79,0x7b,0x7e,0x80,0x80,0x84,0x84,0x86,0x84,0x84,0x83,0x80,0x7e,0x7c,0x7b,0x7b,0x7b,0x7a,
0x7b,0x7c,0x7d,0x7f,0x80,0x81,0x84,0x83,0x83,0x84,0x83,0x81,0x80,0x7e,0x7c,0x7c,0x7b,0x7b,
0x7b,0x7b,0x7c,0x7f,0x80,0x80,0x81,0x82,0x82,0x82,0x81,0x80,0x80,0x80,0x7e,0x7e,0x7c,0x7c,
0x7c,0x7c,0x7e,0x7e,0x7e,0x7e,0x80,0x81,0x81,0x81,0x81,0x81,0x81,0x81,0x80,0x80,0x7f,0x7e,
0x7e,0x7d,0x7c,0x7d,0x7e,0x7e,0x7e,0x7f,0x80,0x80,0x80,0x80,0x81,0x81,0x80,0x80,0x80,0x7f,
0x7e,0x7e,0x7c,0x7c,0x7d,0x7d,0x7e,0x7e,0x80,0x80,0x81,0x81,0x81,0x80,0x80,0x80,0x7f,0x7e,
0x7e,0x7e,0x7e,0x7d,0x7e,0x7e,0x7e,0x7e,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x80,0x7f,
0x7e,0x7f,0x7f,0x7f,0x80,0x7f,0x7f,0x7f,0x80,0x80,0x80,0x80,0x7f,0x7f,0x7e,0x7f,0x7e,0x7f,
0x7f,0x7e,0x7e,0x7f,0x7e,0x7e,0x7e,0x80,0x80,0x7f,0x7f,0x80,0x7f,0x7f,0x7f,0x80,0x80,0x80,
0x80,0x80,0x80,0x7f,0x80,0x80,0x80,0x7f,0x7f,0x80,0x7e,0x7f,0x7e,0x7f,0x7f,0x7f,0x7f,0x7f,
0x7e,0x7f,0x7f,0x7f,0x7f,0x7f,0x7f,0x80,0x80,0x80,0x80,0x80,0x80,0x7e,0x7e,0x7f,0x7e,0x7f,
0x7e,0x7f,0x7e,0x7e,0x7e,0x7f,0x7f,0x7f,0x7f};
// irrKlang 3D sound engine example 03,
// demonstrating playing sounds directly from memory
[STAThread]
static void Main(string[] args)
{
// start the sound engine with default parameters
ISoundEngine engine = new ISoundEngine();
// To make irrKlang know about the memory we want to play, we register
// the memory chunk as a sound source. We specify the name "testsound.wav", so
// we can use the name later for playing back the sound. Note that you
// could also specify a better fitting name like "ok.wav".
// The method AddSoundSourceFromMemory() also returns a pointer to the created sound source,
// it can be used as parameter for play2D() later, if you don't want to
// play sounds via string names.
ISoundSource source = engine.AddSoundSourceFromMemory(SoundDataArray, "testsound.wav");
// now play the sound until user presses 'q'
Console.Out.WriteLine("\nPlaying sounds directly from memory");
Console.Out.WriteLine("Press any key to play some sound, press 'q' to quit.");
do
{
// play the sound we added to memory
engine.Play2D("testsound.wav");
}
while(_getch() != 'q'); // user pressed 'q' key, cancel
}
// some simple function for reading keys from the console
[System.Runtime.InteropServices.DllImport("msvcrt")]
static extern int _getch();
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,58 @@
using System.Reflection;
using System.Runtime.CompilerServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory which is
// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

View File

@@ -0,0 +1,104 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{C1137DD1-D21B-4ED6-AAF8-EDD114582E70}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.04.OverrideFileAccess</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._04._OverrideFileAccess</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET2.0, Version=1.6.0.0, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86" />
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.04.OverrideFileAccess_vs2005", "CSharp.04.OverrideFileAccess_vs2005.csproj", "{C1137DD1-D21B-4ED6-AAF8-EDD114582E70}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Default = Debug|Default
Release|Default = Release|Default
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{C1137DD1-D21B-4ED6-AAF8-EDD114582E70}.Debug|Default.ActiveCfg = Debug|Any CPU
{C1137DD1-D21B-4ED6-AAF8-EDD114582E70}.Debug|Default.Build.0 = Debug|Any CPU
{C1137DD1-D21B-4ED6-AAF8-EDD114582E70}.Release|Default.ActiveCfg = Release|Any CPU
{C1137DD1-D21B-4ED6-AAF8-EDD114582E70}.Release|Default.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,179 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{DF12AC74-E3B4-473A-A103-741A3FEA8D41}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.04.OverrideFileAccess</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._04.OverrideFileAccess</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<OldToolsVersion>2.0</OldToolsVersion>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<FileAlignment>4096</FileAlignment>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<Optimize>true</Optimize>
<FileAlignment>4096</FileAlignment>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRuleSets>false</CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET4, Version=1.0.6617.18810, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\bin\dotnet-4\irrKlang.NET4.dll</HintPath>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.0">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4 %28x86 und x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
<Visible>False</Visible>
<ProductName>Windows Installer 3.1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual C# Express 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.04.OverrideFileAccess_vs2010", "CSharp.04.OverrideFileAccess_vs2010.csproj", "{DF12AC74-E3B4-473A-A103-741A3FEA8D41}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.Build.0 = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,92 @@
// This example will show how to override file access with irrKlang.
// This is useful if you want to read sounds from other sources than
// just files, for example from custom internet streams or
// an own encypted archive format.
using System;
using System.IO;
using IrrKlang;
namespace CSharp._04._OverrideFileAccess
{
class Class1
{
// To start, we need to implement the class IFileFactory, which irrKlang uses
// to open files. The interface consists only of one single method named
// openFile(String filename). In this method, we create return
// our own file access class and return it:
class MyIrrKlangFileFactory : IrrKlang.IFileFactory
{
public System.IO.Stream openFile(String filename)
{
// we simply could return an opened FileStream here, but to demonstrate
// overriding, we return our own filestream implementation
return new MyFileStream(filename);
}
}
// an own implementation of FileStream to overwrite read access to files
public class MyFileStream : System.IO.FileStream
{
public MyFileStream(String filename) : base(filename, FileMode.Open)
{
}
public override int Read(byte[] array, int offset, int count)
{
System.Console.Out.WriteLine("MyFileStream read bytes: " + count);
return base.Read(array, offset, count);
}
public override long Seek(long offset, SeekOrigin origin)
{
System.Console.Out.WriteLine("MyFileStream seeked to: " + offset);
return base.Seek(offset, origin);
}
};
// The main work is done, the only thing missing is to start up the
// sound engine and tell it to use the created FileFactory for file access:
// irrKlang 3D sound engine example 04,
// demonstrating how to override file access of irrKlang
[STAThread]
static void Main(string[] args)
{
// start the sound engine with default parameters
ISoundEngine engine = new ISoundEngine();
// create an instance of the file factory and let
// irrKlang know about it.
MyIrrKlangFileFactory myfactory = new MyIrrKlangFileFactory();
engine.AddFileFactory(myfactory);
// that's it, play some sounds with our overriden
// file access methods:
// now play some sounds until user presses 'q'
Console.Out.WriteLine("\nDemonstrating file access overriding.");
Console.Out.WriteLine("Press any key to play some sound, press ESCAPE to quit.");
_getch();
engine.Play2D("../../media/getout.ogg", true);
do
{
// play some wave sound
engine.Play2D("../../media/bell.wav");
}
while(_getch() != 27); // user pressed eskape key to cancel
}
// some simple function for reading keys from the console
[System.Runtime.InteropServices.DllImport("msvcrt")]
static extern int _getch();
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,58 @@
using System.Reflection;
using System.Runtime.CompilerServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory which is
// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

View File

@@ -0,0 +1,104 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{1ED8B052-E53B-4680-8E7A-41F13DE1B5BB}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.05.Effects</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._05._Effects</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET2.0, Version=1.6.0.0, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86" />
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.05.Effects_vs2005", "CSharp.05.Effects_vs2005.csproj", "{1ED8B052-E53B-4680-8E7A-41F13DE1B5BB}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1ED8B052-E53B-4680-8E7A-41F13DE1B5BB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1ED8B052-E53B-4680-8E7A-41F13DE1B5BB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1ED8B052-E53B-4680-8E7A-41F13DE1B5BB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1ED8B052-E53B-4680-8E7A-41F13DE1B5BB}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,179 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{DF12AC74-E3B4-473A-A103-741A3FEA8D41}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.05.Effects</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<RootNamespace>CSharp._05.Effects</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<OldToolsVersion>2.0</OldToolsVersion>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<FileAlignment>4096</FileAlignment>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<Optimize>true</Optimize>
<FileAlignment>4096</FileAlignment>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRuleSets>false</CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET4, Version=1.0.6617.18810, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\bin\dotnet-4\irrKlang.NET4.dll</HintPath>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Class1.cs">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.0">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4 %28x86 und x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
<Visible>False</Visible>
<ProductName>Windows Installer 3.1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual C# Express 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.05.Effects_vs2010", "CSharp.05.Effects_vs2010.csproj", "{DF12AC74-E3B4-473A-A103-741A3FEA8D41}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Debug|x86.Build.0 = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.ActiveCfg = Release|x86
{DF12AC74-E3B4-473A-A103-741A3FEA8D41}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,106 @@
// This example will show how to use sound effects such as echo, reverb and distortion.
// irrKlang supports the effects Chorus, Compressor, Distortion, Echo, Flanger
// Gargle, 3DL2Reverb, ParamEq and WavesReverb.
using System;
using IrrKlang;
namespace CSharp._05._Effects
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
// start the sound engine with default parameters
ISoundEngine engine = new ISoundEngine();
// we play a .xm file as music here. Note that the last parameter
// named 'enableSoundEffects' has been set to 'true' here. If this
// is not done, sound effects cannot be used with this sound.
// After this, we print some help text and start a loop which reads
// user keyboard input.
ISound music = engine.Play2D("../../media/MF-W-90.XM", false,
false, StreamMode.AutoDetect, true);
// Print some help text and start the display loop
Console.Out.Write("\nSound effects example. Keys:\n");
Console.Out.Write("\nESCAPE: quit\n");
Console.Out.Write("w: enable/disable waves reverb\n");
Console.Out.Write("d: enable/disable distortion\n");
Console.Out.Write("e: enable/disable echo\n");
Console.Out.Write("a: disable all effects\n");
while(true) // endless loop until user exits
{
int key = _getch();
// Handle user input: Every time the user presses a key in the console,
// play a random sound or exit the application if he pressed ESCAPE.
if (key == 27)
break; // user pressed ESCAPE key
else
{
ISoundEffectControl fx = null;
if (music != null)
fx = music.SoundEffectControl;
if (fx == null)
{
// some sound devices do not support sound effects.
Console.Out.Write("This device or sound does not support sound effects.\n");
continue;
}
// here we disable or enable the sound effects of the music depending
// on what key the user pressed. Note that every enableXXXSoundEffect()
// method also accepts a lot of parameters, so it is easily possible
// to influence the details of the effect. If the sound effect is
// already active, it is also possible to simply call the
// enableXXXSoundEffect() method again to just change the effect parameters,
// although we aren't doing this here.
if (key < 'a') // make key lower
key += 'a' - 'A';
switch(key)
{
case 'd':
if (fx.IsDistortionSoundEffectEnabled)
fx.DisableDistortionSoundEffect();
else
fx.EnableDistortionSoundEffect();
break;
case 'e':
if (fx.IsEchoSoundEffectEnabled)
fx.DisableEchoSoundEffect();
else
fx.EnableEchoSoundEffect();
break;
case 'w':
if (fx.IsWavesReverbSoundEffectEnabled)
fx.DisableWavesReverbSoundEffect();
else
fx.EnableWavesReverbSoundEffect();
break;
case 'a':
fx.DisableAllEffects();
break;
}
}
}
}
// simple functions for reading keys from the console
[System.Runtime.InteropServices.DllImport("msvcrt")]
static extern int _kbhit();
[System.Runtime.InteropServices.DllImport("msvcrt")]
static extern int _getch();
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,58 @@
using System.Reflection;
using System.Runtime.CompilerServices;
//
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
//
[assembly: AssemblyTitle("")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("")]
[assembly: AssemblyCopyright("")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
//
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.0.*")]
//
// In order to sign your assembly you must specify a key to use. Refer to the
// Microsoft .NET Framework documentation for more information on assembly signing.
//
// Use the attributes below to control which key is used for signing.
//
// Notes:
// (*) If no key is specified, the assembly is not signed.
// (*) KeyName refers to a key that has been installed in the Crypto Service
// Provider (CSP) on your machine. KeyFile refers to a file which contains
// a key.
// (*) If the KeyFile and the KeyName values are both specified, the
// following processing occurs:
// (1) If the KeyName can be found in the CSP, that key is used.
// (2) If the KeyName does not exist and the KeyFile does exist, the key
// in the KeyFile is installed into the CSP and used.
// (*) In order to create a KeyFile, you can use the sn.exe (Strong Name) utility.
// When specifying the KeyFile, the location of the KeyFile should be
// relative to the project output directory which is
// %Project Directory%\obj\<configuration>. For example, if your KeyFile is
// located in the project directory, you would specify the AssemblyKeyFile
// attribute as [assembly: AssemblyKeyFile("..\\..\\mykey.snk")]
// (*) Delay Signing is an advanced option - see the Microsoft .NET Framework
// documentation for more information on this.
//
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFile("")]
[assembly: AssemblyKeyName("")]

View File

@@ -0,0 +1,114 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{545F9CBC-DA32-4DFE-803C-C396A51E822C}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.Winforms.Musicplayer</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>WinExe</OutputType>
<RootNamespace>CSharp.Winforms.Musicplayer</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET2.0, Version=1.6.0.0, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86" />
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Drawing">
<Name>System.Drawing</Name>
</Reference>
<Reference Include="System.Windows.Forms">
<Name>System.Windows.Forms</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Form1.cs">
<SubType>Form</SubType>
</Compile>
<EmbeddedResource Include="Form1.resx">
<DependentUpon>Form1.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.Winforms.Musicplayer_vs2005", "CSharp.Winforms.Musicplayer_vs2005.csproj", "{545F9CBC-DA32-4DFE-803C-C396A51E822C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{545F9CBC-DA32-4DFE-803C-C396A51E822C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{545F9CBC-DA32-4DFE-803C-C396A51E822C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{545F9CBC-DA32-4DFE-803C-C396A51E822C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{545F9CBC-DA32-4DFE-803C-C396A51E822C}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,189 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{545F9CBC-DA32-4DFE-803C-C396A51E822C}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>App.ico</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>CSharp.Winforms.Musicplayer</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>WinExe</OutputType>
<RootNamespace>CSharp.Winforms.Musicplayer</RootNamespace>
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
<StartupObject>
</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<OldToolsVersion>2.0</OldToolsVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
<TargetFrameworkProfile />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>true</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>full</DebugType>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-2.0\</OutputPath>
<AllowUnsafeBlocks>false</AllowUnsafeBlocks>
<BaseAddress>285212672</BaseAddress>
<CheckForOverflowUnderflow>false</CheckForOverflowUnderflow>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>TRACE</DefineConstants>
<DocumentationFile>
</DocumentationFile>
<DebugSymbols>false</DebugSymbols>
<FileAlignment>4096</FileAlignment>
<NoStdLib>false</NoStdLib>
<NoWarn>
</NoWarn>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>4</WarningLevel>
<DebugType>none</DebugType>
<ErrorReport>prompt</ErrorReport>
<PlatformTarget>x86</PlatformTarget>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<FileAlignment>4096</FileAlignment>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<OutputPath>..\..\bin\dotnet-4\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<BaseAddress>285212672</BaseAddress>
<Optimize>true</Optimize>
<FileAlignment>4096</FileAlignment>
<PlatformTarget>x86</PlatformTarget>
<ErrorReport>prompt</ErrorReport>
<CodeAnalysisIgnoreBuiltInRuleSets>false</CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<CodeAnalysisFailOnMissingRules>false</CodeAnalysisFailOnMissingRules>
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET4, Version=1.0.6617.18810, Culture=neutral, PublicKeyToken=a854741bd80517c7, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\bin\dotnet-4\irrKlang.NET4.dll</HintPath>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Drawing">
<Name>System.Drawing</Name>
</Reference>
<Reference Include="System.Windows.Forms">
<Name>System.Windows.Forms</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="App.ico" />
<Compile Include="AssemblyInfo.cs">
<SubType>Code</SubType>
</Compile>
<Compile Include="Form1.cs">
<SubType>Form</SubType>
</Compile>
<EmbeddedResource Include="Form1.resx">
<DependentUpon>Form1.cs</DependentUpon>
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.0">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4 %28x86 und x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
<Visible>False</Visible>
<ProductName>Windows Installer 3.1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<ItemGroup>
<WCFMetadata Include="Service References\" />
</ItemGroup>
<ItemGroup>
<None Include="app.config" />
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual C# Express 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CSharp.Winforms.Musicplayer_vs2010", "CSharp.Winforms.Musicplayer_vs2010.csproj", "{545F9CBC-DA32-4DFE-803C-C396A51E822C}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{545F9CBC-DA32-4DFE-803C-C396A51E822C}.Debug|x86.ActiveCfg = Debug|x86
{545F9CBC-DA32-4DFE-803C-C396A51E822C}.Debug|x86.Build.0 = Debug|x86
{545F9CBC-DA32-4DFE-803C-C396A51E822C}.Release|x86.ActiveCfg = Release|x86
{545F9CBC-DA32-4DFE-803C-C396A51E822C}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,216 @@
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
namespace CSharp.Winforms.Musicplayer
{
/// <summary>
/// Summary description for Form1.
/// </summary>
public class Form1 : System.Windows.Forms.Form
{
protected IrrKlang.ISoundEngine irrKlangEngine;
protected IrrKlang.ISound currentlyPlayingSound;
private System.Windows.Forms.Button SelectFileButton;
private System.Windows.Forms.Button PauseButton;
private System.Windows.Forms.TrackBar volumeTrackBar;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.TextBox filenameTextBox;
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.Container components = null;
public Form1()
{
//
// Required for Windows Form Designer support
//
InitializeComponent();
// create irrklang sound engine
irrKlangEngine = new IrrKlang.ISoundEngine();
playSelectedFile();
}
/// <summary>
/// Clean up any resources being used.
/// </summary>
protected override void Dispose( bool disposing )
{
if( disposing )
{
if (components != null)
{
components.Dispose();
}
}
base.Dispose( disposing );
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.filenameTextBox = new System.Windows.Forms.TextBox();
this.SelectFileButton = new System.Windows.Forms.Button();
this.PauseButton = new System.Windows.Forms.Button();
this.volumeTrackBar = new System.Windows.Forms.TrackBar();
this.label1 = new System.Windows.Forms.Label();
((System.ComponentModel.ISupportInitialize)(this.volumeTrackBar)).BeginInit();
this.SuspendLayout();
//
// filenameTextBox
//
this.filenameTextBox.Location = new System.Drawing.Point(24, 24);
this.filenameTextBox.Name = "filenameTextBox";
this.filenameTextBox.ReadOnly = true;
this.filenameTextBox.Size = new System.Drawing.Size(280, 20);
this.filenameTextBox.TabIndex = 0;
this.filenameTextBox.Text = "../../media/getout.ogg";
//
// SelectFileButton
//
this.SelectFileButton.Location = new System.Drawing.Point(312, 24);
this.SelectFileButton.Name = "SelectFileButton";
this.SelectFileButton.Size = new System.Drawing.Size(32, 24);
this.SelectFileButton.TabIndex = 1;
this.SelectFileButton.Text = "...";
this.SelectFileButton.Click += new System.EventHandler(this.SelectFileButton_Click);
//
// PauseButton
//
this.PauseButton.Location = new System.Drawing.Point(184, 104);
this.PauseButton.Name = "PauseButton";
this.PauseButton.TabIndex = 2;
this.PauseButton.Text = "Pause";
this.PauseButton.Click += new System.EventHandler(this.PauseButton_Click);
//
// volumeTrackBar
//
this.volumeTrackBar.Location = new System.Drawing.Point(24, 96);
this.volumeTrackBar.Maximum = 100;
this.volumeTrackBar.Name = "volumeTrackBar";
this.volumeTrackBar.Size = new System.Drawing.Size(136, 42);
this.volumeTrackBar.SmallChange = 5;
this.volumeTrackBar.TabIndex = 3;
this.volumeTrackBar.TickFrequency = 10;
this.volumeTrackBar.Scroll += new System.EventHandler(this.volumeTrackBar_Scroll);
//
// label1
//
this.label1.Location = new System.Drawing.Point(24, 72);
this.label1.Name = "label1";
this.label1.Size = new System.Drawing.Size(100, 16);
this.label1.TabIndex = 4;
this.label1.Text = "Volume:";
//
// Form1
//
this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);
this.ClientSize = new System.Drawing.Size(456, 149);
this.Controls.Add(this.label1);
this.Controls.Add(this.volumeTrackBar);
this.Controls.Add(this.PauseButton);
this.Controls.Add(this.SelectFileButton);
this.Controls.Add(this.filenameTextBox);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle;
this.MaximizeBox = false;
this.Name = "Form1";
this.Text = "Simple irrKlang .NET Winforms Example Player";
((System.ComponentModel.ISupportInitialize)(this.volumeTrackBar)).EndInit();
this.ResumeLayout(false);
}
#endregion
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.Run(new Form1());
}
// plays filename selected in edit box
void playSelectedFile()
{
// stop currently playing sound
if (currentlyPlayingSound != null)
currentlyPlayingSound.Stop();
// start new sound
currentlyPlayingSound = irrKlangEngine.Play2D(filenameTextBox.Text, true);
// update controls to display the playing file
UpdatePauseButtonText();
volumeTrackBar.Value = 100;
}
// pauses or unpauses the currently playing sound
private void PauseButton_Click(object sender, System.EventArgs e)
{
if (currentlyPlayingSound != null)
{
currentlyPlayingSound.Paused = !currentlyPlayingSound.Paused;
UpdatePauseButtonText();
}
}
// Updates the text on the pause button
private void UpdatePauseButtonText()
{
if (currentlyPlayingSound != null)
{
if (currentlyPlayingSound.Paused)
PauseButton.Text = "Play";
else
PauseButton.Text = "Pause";
}
else
PauseButton.Text = "";
}
// Sets new volume of currently playing sound
private void volumeTrackBar_Scroll(object sender, System.EventArgs e)
{
if (currentlyPlayingSound != null)
{
currentlyPlayingSound.Volume = volumeTrackBar.Value / 100.0f;
}
}
// selects a new file to play
private void SelectFileButton_Click(object sender, System.EventArgs e)
{
System.Windows.Forms.OpenFileDialog dialog = new
System.Windows.Forms.OpenFileDialog();
dialog.Filter = "All playable files (*.mp3;*.ogg;*.wav;*.mod;*.it;*.xm;*.it;*.s3d)|*.mp3;*.ogg;*.wav;*.mod;*.it;*.xm;*.it;*.s3d";
dialog.FilterIndex = 0;
if (dialog.ShowDialog(this) == System.Windows.Forms.DialogResult.OK)
{
filenameTextBox.Text = dialog.FileName;
playSelectedFile();
}
}
}
}

View File

@@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 1.3
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">1.3</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1">this is my long string</data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
[base64 mime encoded serialized .NET Framework object]
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
[base64 mime encoded string representing a byte array form of the .NET Framework object]
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used forserialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>1.3</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="filenameTextBox.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="filenameTextBox.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="filenameTextBox.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="SelectFileButton.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="SelectFileButton.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="SelectFileButton.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="PauseButton.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="PauseButton.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="PauseButton.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="volumeTrackBar.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="volumeTrackBar.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="volumeTrackBar.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="label1.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="label1.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="label1.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
<data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>(Default)</value>
</data>
<data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>False</value>
</data>
<data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>8, 8</value>
</data>
<data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</data>
<data name="$this.Name">
<value>Form1</value>
</data>
<data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>80</value>
</data>
<data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>True</value>
</data>
<data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>Private</value>
</data>
</root>

View File

@@ -0,0 +1,32 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' General Information about an assembly is controlled through the following
' set of attributes. Change these attribute values to modify the information
' associated with an assembly.
' Review the values of the assembly attributes
<Assembly: AssemblyTitle("")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("")>
<Assembly: AssemblyCopyright("")>
<Assembly: AssemblyTrademark("")>
<Assembly: CLSCompliant(True)>
'The following GUID is for the ID of the typelib if this project is exposed to COM
<Assembly: Guid("E3C004F6-8449-4A5E-A23E-6F307C550731")>
' Version information for an assembly consists of the following four values:
'
' Major Version
' Minor Version
' Build Number
' Revision
'
' You can specify all the values or you can default the Build and Revision Numbers
' by using the '*' as shown below:
<Assembly: AssemblyVersion("1.0.*")>

View File

@@ -0,0 +1,33 @@
Imports IrrKlang
Module Module1
Sub Main()
' start up the engine
Dim engine As New ISoundEngine
' To play a sound, we only to call play2D(). The second parameter
' tells the engine to play it looped.
engine.Play2D("../../media/getout.ogg", True)
Console.Out.WriteLine("")
Console.Out.WriteLine("Hello World")
Do
Console.Out.WriteLine("Press any key to play some sound, press 'q' to quit.")
' play a single sound
engine.Play2D("../../media/bell.wav")
Loop While _getch() <> 113 ' until 'the key "q" is pressed
End Sub
' some simple function for reading keys from the console
<System.Runtime.InteropServices.DllImport("msvcrt")> _
Public Function _getch() As Integer
End Function
End Module

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "VisualBasic.01.HelloWorld", "VisualBasic.01.HelloWorld.vbproj", "{0FBBA5C5-C9EF-4FB6-A202-CF86E2385C66}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0FBBA5C5-C9EF-4FB6-A202-CF86E2385C66}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0FBBA5C5-C9EF-4FB6-A202-CF86E2385C66}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0FBBA5C5-C9EF-4FB6-A202-CF86E2385C66}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0FBBA5C5-C9EF-4FB6-A202-CF86E2385C66}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,108 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{0FBBA5C5-C9EF-4FB6-A202-CF86E2385C66}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>
</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>VisualBasic.01.HelloWorld</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<AssemblyOriginatorKeyMode>None</AssemblyOriginatorKeyMode>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<OptionCompare>Binary</OptionCompare>
<OptionExplicit>On</OptionExplicit>
<OptionStrict>Off</OptionStrict>
<RootNamespace>VisualBasic._01.HelloWorld</RootNamespace>
<StartupObject>VisualBasic._01.HelloWorld.Module1</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<MyType>Console</MyType>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-1.1\</OutputPath>
<DocumentationFile>VisualBasic.01.HelloWorld.xml</DocumentationFile>
<BaseAddress>285212672</BaseAddress>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>
</DefineConstants>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<DebugSymbols>true</DebugSymbols>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>1</WarningLevel>
<NoWarn>42016,42017,42018,42019,42032</NoWarn>
<DebugType>full</DebugType>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-1.1\</OutputPath>
<DocumentationFile>VisualBasic.01.HelloWorld.xml</DocumentationFile>
<BaseAddress>285212672</BaseAddress>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>
</DefineConstants>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<DebugSymbols>false</DebugSymbols>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>1</WarningLevel>
<NoWarn>42016,42017,42018,42019,42032</NoWarn>
<DebugType>none</DebugType>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET">
<Name>irrKlang.NET</Name>
<HintPath>..\..\bin\dotnet-1.1\irrKlang.NET.dll</HintPath>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Data" />
<Import Include="System.Diagnostics" />
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.vb">
<SubType>Code</SubType>
</Compile>
<Compile Include="Module1.vb">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.VisualBasic.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>

View File

@@ -0,0 +1,32 @@
Imports System
Imports System.Reflection
Imports System.Runtime.InteropServices
' General Information about an assembly is controlled through the following
' set of attributes. Change these attribute values to modify the information
' associated with an assembly.
' Review the values of the assembly attributes
<Assembly: AssemblyTitle("")>
<Assembly: AssemblyDescription("")>
<Assembly: AssemblyCompany("")>
<Assembly: AssemblyProduct("")>
<Assembly: AssemblyCopyright("")>
<Assembly: AssemblyTrademark("")>
<Assembly: CLSCompliant(True)>
'The following GUID is for the ID of the typelib if this project is exposed to COM
<Assembly: Guid("38FD6193-1EF1-42FA-A6C8-D843B89BFABE")>
' Version information for an assembly consists of the following four values:
'
' Major Version
' Minor Version
' Build Number
' Revision
'
' You can specify all the values or you can default the Build and Revision Numbers
' by using the '*' as shown below:
<Assembly: AssemblyVersion("1.0.*")>

View File

@@ -0,0 +1,122 @@
Imports IrrKlang
Module Module1
Sub Main()
' start up the engine
Dim engine As New ISoundEngine
' Now play some sound stream as music in 3d space, looped.
' We play it at position (0,0,0) in 3d space
Dim music As ISound = engine.Play3D("../../media/ophelia.mp3", 0, 0, 0, True)
' the following step isn't necessary, but to adjust the distance where
' the 3D sound can be heard, we set some nicer minimum distance
' (the default min distance is 1, for a small object). The minimum
' distance simply is the distance in which the sound gets played
' at maximum volume.
If Not (music Is Nothing) Then
music.MinDistance = 5.0F
End If
' Print some help text and start the display loop
Console.Out.Write(ControlChars.CrLf & "Playing streamed sound in 3D.")
Console.Out.WriteLine(ControlChars.CrLf & "Press ESCAPE to quit, any other key to play sound at random position." & ControlChars.CrLf)
Console.Out.WriteLine("+ = Listener position")
Console.Out.WriteLine("o = Playing sound")
Dim rand As Random = New Random
Dim radius As Single = 5
Dim posOnCircle As Single = 5
While (True) ' endless loop until user exits
' Each step we calculate the position of the 3D music.
' For this example, we let the
' music position rotate on a circle:
posOnCircle += 0.0399999991F
Dim pos3D As Vector3D = New Vector3D(radius * Math.Cos(posOnCircle), 0, _
radius * Math.Sin(posOnCircle * 0.5F))
' After we know the positions, we need to let irrKlang know about the
' listener position (always position (0,0,0), facing forward in this example)
' and let irrKlang know about our calculated 3D music position
engine.SetListenerPosition(0, 0, 0, 0, 0, 1)
If Not (music Is Nothing) Then
music.Position = pos3D
End If
' Now print the position of the sound in a nice way to the console
' and also print the play position
Dim stringForDisplay As String = " + "
Dim charpos As Integer = Math.Floor((CSng(pos3D.X + radius) / radius * 10.0F))
If (charpos >= 0 And charpos < 20) Then
stringForDisplay = stringForDisplay.Remove(charpos, 1)
stringForDisplay = stringForDisplay.Insert(charpos, "o")
End If
Dim playPos As Integer
If Not (music Is Nothing) Then
playPos = Integer.Parse(music.PlayPosition.ToString) ' how to convert UInt32 to Integer in visual basic?
End If
Dim output As String = ControlChars.Cr & String.Format("x:({0}) 3dpos: {1:f} {2:f} {3:f}, playpos:{4}:{5:00} ", _
stringForDisplay, pos3D.X, pos3D.Y, pos3D.Z, _
playPos \ 60000, (playPos Mod 60000) / 1000)
Console.Write(output)
System.Threading.Thread.Sleep(100)
' Handle user input: Every time the user presses a key in the console,
' play a random sound or exit the application if he pressed ESCAPE.
If _kbhit() <> 0 Then
Dim key As Integer = _getch()
If (key = 27) Then
Return ' user pressed ESCAPE key
Else
' Play random sound at some random position.
Dim pos As Vector3D = New Vector3D((rand.NextDouble() Mod radius * 2.0F) - radius, 0, 0)
Dim filename As String
If (rand.Next() Mod 2 <> 0) Then
filename = "../../media/bell.wav"
Else
filename = "../../media/explosion.wav"
End If
engine.Play3D(filename, pos.X, pos.Y, pos.Z)
Console.WriteLine(ControlChars.CrLf & "playing {0} at {1:f} {2:f} {3:f}", _
filename, pos.X, pos.Y, pos.Z)
End If
End If
End While
End Sub
' some simple function for reading keys from the console
<System.Runtime.InteropServices.DllImport("msvcrt")> _
Public Function _getch() As Integer
End Function
<System.Runtime.InteropServices.DllImport("msvcrt")> _
Public Function _kbhit() As Integer
End Function
End Module

View File

@@ -0,0 +1,19 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "VisualBasic.02.3DSound", "VisualBasic.02.3DSound.vbproj", "{C03B0E11-9BB1-4E8E-AF4D-5374AC9E47EE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{C03B0E11-9BB1-4E8E-AF4D-5374AC9E47EE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C03B0E11-9BB1-4E8E-AF4D-5374AC9E47EE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C03B0E11-9BB1-4E8E-AF4D-5374AC9E47EE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C03B0E11-9BB1-4E8E-AF4D-5374AC9E47EE}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,108 @@
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<ProjectType>Local</ProjectType>
<ProductVersion>8.0.50727</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{C03B0E11-9BB1-4E8E-AF4D-5374AC9E47EE}</ProjectGuid>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ApplicationIcon>
</ApplicationIcon>
<AssemblyKeyContainerName>
</AssemblyKeyContainerName>
<AssemblyName>VisualBasic.02.3DSound</AssemblyName>
<AssemblyOriginatorKeyFile>
</AssemblyOriginatorKeyFile>
<AssemblyOriginatorKeyMode>None</AssemblyOriginatorKeyMode>
<DefaultClientScript>JScript</DefaultClientScript>
<DefaultHTMLPageLayout>Grid</DefaultHTMLPageLayout>
<DefaultTargetSchema>IE50</DefaultTargetSchema>
<DelaySign>false</DelaySign>
<OutputType>Exe</OutputType>
<OptionCompare>Binary</OptionCompare>
<OptionExplicit>On</OptionExplicit>
<OptionStrict>Off</OptionStrict>
<RootNamespace>VisualBasic._02._3DSound</RootNamespace>
<StartupObject>VisualBasic._02._3DSound.Module1</StartupObject>
<FileUpgradeFlags>
</FileUpgradeFlags>
<MyType>Console</MyType>
<UpgradeBackupLocation>
</UpgradeBackupLocation>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-1.1\</OutputPath>
<DocumentationFile>VisualBasic.02.3DSound.xml</DocumentationFile>
<BaseAddress>285212672</BaseAddress>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>
</DefineConstants>
<DefineDebug>true</DefineDebug>
<DefineTrace>true</DefineTrace>
<DebugSymbols>true</DebugSymbols>
<Optimize>false</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>1</WarningLevel>
<NoWarn>42016,42017,42018,42019,42032</NoWarn>
<DebugType>full</DebugType>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<OutputPath>..\..\bin\dotnet-1.1\</OutputPath>
<DocumentationFile>VisualBasic.02.3DSound.xml</DocumentationFile>
<BaseAddress>285212672</BaseAddress>
<ConfigurationOverrideFile>
</ConfigurationOverrideFile>
<DefineConstants>
</DefineConstants>
<DefineDebug>false</DefineDebug>
<DefineTrace>true</DefineTrace>
<DebugSymbols>false</DebugSymbols>
<Optimize>true</Optimize>
<RegisterForComInterop>false</RegisterForComInterop>
<RemoveIntegerChecks>false</RemoveIntegerChecks>
<TreatWarningsAsErrors>false</TreatWarningsAsErrors>
<WarningLevel>1</WarningLevel>
<NoWarn>42016,42017,42018,42019,42032</NoWarn>
<DebugType>none</DebugType>
</PropertyGroup>
<ItemGroup>
<Reference Include="irrKlang.NET">
<Name>irrKlang.NET</Name>
<HintPath>..\..\bin\dotnet-1.1\irrKlang.NET.dll</HintPath>
</Reference>
<Reference Include="System">
<Name>System</Name>
</Reference>
<Reference Include="System.Data">
<Name>System.Data</Name>
</Reference>
<Reference Include="System.Xml">
<Name>System.XML</Name>
</Reference>
</ItemGroup>
<ItemGroup>
<Import Include="Microsoft.VisualBasic" />
<Import Include="System" />
<Import Include="System.Collections" />
<Import Include="System.Data" />
<Import Include="System.Diagnostics" />
</ItemGroup>
<ItemGroup>
<Compile Include="AssemblyInfo.vb">
<SubType>Code</SubType>
</Compile>
<Compile Include="Module1.vb">
<SubType>Code</SubType>
</Compile>
</ItemGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.VisualBasic.targets" />
<PropertyGroup>
<PreBuildEvent>
</PreBuildEvent>
<PostBuildEvent>
</PostBuildEvent>
</PropertyGroup>
</Project>