First pass at getting core and square to compile against VS2015. Not really working yet, and most plugins are broken.

OGG playback seems to work!
This commit is contained in:
casey langen 2016-04-26 14:12:09 -07:00
parent 8b67aff1a9
commit a6b588fcc9
58 changed files with 1712 additions and 304 deletions

15
.gitignore vendored Normal file
View File

@ -0,0 +1,15 @@
**/*.vcxproj.filters
**/*.vcxproj.user
**/*.VC.db
**/*.VC.opendb
**/*.suo
bin
obj
ipch
src/3rdparty/bin
src/3rdparty/obj
src/core/obj
src/square/obj
src/contrib/oggdecoder/obj
src/contrib/waveout/obj
src/contrib/taglib_plugin/obj

View File

@ -1,32 +1,26 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mp3decoder", "src\contrib\mp3decoder\mp3decoder.vcproj", "{293471C3-93F8-4C70-AC2B-9F9211529C3B}"
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 14
VisualStudioVersion = 14.0.25123.0
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mp3decoder", "src\contrib\mp3decoder\mp3decoder.vcxproj", "{293471C3-93F8-4C70-AC2B-9F9211529C3B}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "player", "src\square\player.vcproj", "{C7102EB1-7311-4B36-A7FF-89DD7F077FF9}"
ProjectSection(ProjectDependencies) = postProject
{B2165720-B4B2-4F4B-8888-8C390C3CB4DB} = {B2165720-B4B2-4F4B-8888-8C390C3CB4DB}
{B2165720-B4B2-4F4B-9634-8C390C3CB4DB} = {B2165720-B4B2-4F4B-9634-8C390C3CB4DB}
EndProjectSection
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "square", "src\square\player.vcxproj", "{C7102EB1-7311-4B36-A7FF-89DD7F077FF9}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "oggdecoder", "src\contrib\oggdecoder\oggdecoder.vcproj", "{292974B0-C8B7-41EF-B603-554A2B25CB90}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "oggdecoder", "src\contrib\oggdecoder\oggdecoder.vcxproj", "{292974B0-C8B7-41EF-B603-554A2B25CB90}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "apedecoder", "src\contrib\apedecoder\apedecoder.vcproj", "{A6923E38-7B13-4394-93E6-005CE3E80DA4}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "apedecoder", "src\contrib\apedecoder\apedecoder.vcxproj", "{A6923E38-7B13-4394-93E6-005CE3E80DA4}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aacdecoder", "src\contrib\aacdecoder\aacdecoder.vcproj", "{4993E68D-E97A-4CD2-AC8E-168AE315BAC5}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "aacdecoder", "src\contrib\aacdecoder\aacdecoder.vcxproj", "{4993E68D-E97A-4CD2-AC8E-168AE315BAC5}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cddadecoder", "src\contrib\cddadecoder\cddadecoder.vcproj", "{54764854-5A73-4329-9BAD-9AF22C72D9E2}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "cddadecoder", "src\contrib\cddadecoder\cddadecoder.vcxproj", "{54764854-5A73-4329-9BAD-9AF22C72D9E2}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "3rdparty", "src\3rdparty\3rdparty.vcproj", "{B2165720-B4B2-4F4B-8888-8C390C3CB4DB}"
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "3rdparty", "src\3rdparty\3rdparty.vcxproj", "{B2165720-B4B2-4F4B-8888-8C390C3CB4DB}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core", "src\core\core.vcproj", "{B2165720-B4B2-4F4B-9634-8C390C3CB4DB}"
ProjectSection(ProjectDependencies) = postProject
{B2165720-B4B2-4F4B-8888-8C390C3CB4DB} = {B2165720-B4B2-4F4B-8888-8C390C3CB4DB}
EndProjectSection
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "core", "src\core\core.vcxproj", "{B2165720-B4B2-4F4B-9634-8C390C3CB4DB}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taglib_plugin", "src\contrib\taglib_plugin\taglib_plugin.vcproj", "{7CD00EC4-D090-48BE-9388-FA4857AC332C}"
ProjectSection(ProjectDependencies) = postProject
{B2165720-B4B2-4F4B-9634-8C390C3CB4DB} = {B2165720-B4B2-4F4B-9634-8C390C3CB4DB}
EndProjectSection
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "taglib_plugin", "src\contrib\taglib_plugin\taglib_plugin.vcxproj", "{7CD00EC4-D090-48BE-9388-FA4857AC332C}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "waveout", "src\contrib\waveout\waveout.vcxproj", "{4F10C17A-8AF7-4FAC-A4E2-087AE6E8F9D8}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@ -70,6 +64,10 @@ Global
{7CD00EC4-D090-48BE-9388-FA4857AC332C}.Debug|Win32.Build.0 = Debug|Win32
{7CD00EC4-D090-48BE-9388-FA4857AC332C}.Release|Win32.ActiveCfg = Release|Win32
{7CD00EC4-D090-48BE-9388-FA4857AC332C}.Release|Win32.Build.0 = Release|Win32
{4F10C17A-8AF7-4FAC-A4E2-087AE6E8F9D8}.Debug|Win32.ActiveCfg = Debug|Win32
{4F10C17A-8AF7-4FAC-A4E2-087AE6E8F9D8}.Debug|Win32.Build.0 = Debug|Win32
{4F10C17A-8AF7-4FAC-A4E2-087AE6E8F9D8}.Release|Win32.ActiveCfg = Release|Win32
{4F10C17A-8AF7-4FAC-A4E2-087AE6E8F9D8}.Release|Win32.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

160
src/3rdparty/3rdparty.vcxproj vendored Executable file
View File

@ -0,0 +1,160 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{B2165720-B4B2-4F4B-8888-8C390C3CB4DB}</ProjectGuid>
<RootNamespace>doe</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">bin/$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">obj/$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">bin/$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">obj/$(Configuration)\</IntDir>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>./include/;./include/sqlite/;./include/expat;./include/md5;./include/jpeg-6b;../../../boost_1_60_0/;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;SQLITE_THREADSAFE;COMPILED_FROM_DSP;XML_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<PrecompiledHeaderFile>pch.hpp</PrecompiledHeaderFile>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>Default</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<AdditionalIncludeDirectories>./include/;./include/sqlite/;./include/expat;./include/md5;./include/jpeg-6b;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;SQLITE_THREADSAFE;COMPILED_FROM_DSP;XML_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<PrecompiledHeaderFile>pch.hpp</PrecompiledHeaderFile>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="src\sqlite\sqlite3.c">
<WarningLevel Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Level1</WarningLevel>
</ClCompile>
<ClCompile Include="src\expat\xmlparse.c" />
<ClCompile Include="src\expat\xmlrole.c" />
<ClCompile Include="src\expat\xmltok.c" />
<ClCompile Include="src\expat\xmltok_impl.c" />
<ClCompile Include="src\expat\xmltok_ns.c" />
<ClCompile Include="src\md5\md5.c" />
<ClCompile Include="src\jpeg-6b\jcapimin.c" />
<ClCompile Include="src\jpeg-6b\jcapistd.c" />
<ClCompile Include="src\jpeg-6b\jccoefct.c" />
<ClCompile Include="src\jpeg-6b\jccolor.c" />
<ClCompile Include="src\jpeg-6b\jcdctmgr.c" />
<ClCompile Include="src\jpeg-6b\jchuff.c" />
<ClCompile Include="src\jpeg-6b\jcinit.c" />
<ClCompile Include="src\jpeg-6b\jcmainct.c" />
<ClCompile Include="src\jpeg-6b\jcmarker.c" />
<ClCompile Include="src\jpeg-6b\jcmaster.c" />
<ClCompile Include="src\jpeg-6b\jcomapi.c" />
<ClCompile Include="src\jpeg-6b\jcparam.c" />
<ClCompile Include="src\jpeg-6b\jcphuff.c" />
<ClCompile Include="src\jpeg-6b\jcprepct.c" />
<ClCompile Include="src\jpeg-6b\jcsample.c" />
<ClCompile Include="src\jpeg-6b\jctrans.c" />
<ClCompile Include="src\jpeg-6b\jdapimin.c" />
<ClCompile Include="src\jpeg-6b\jdapistd.c" />
<ClCompile Include="src\jpeg-6b\jdatadst.c" />
<ClCompile Include="src\jpeg-6b\jdatasrc.c" />
<ClCompile Include="src\jpeg-6b\jdcoefct.c" />
<ClCompile Include="src\jpeg-6b\jdcolor.c" />
<ClCompile Include="src\jpeg-6b\jddctmgr.c" />
<ClCompile Include="src\jpeg-6b\jdhuff.c" />
<ClCompile Include="src\jpeg-6b\jdinput.c" />
<ClCompile Include="src\jpeg-6b\jdmainct.c" />
<ClCompile Include="src\jpeg-6b\jdmarker.c" />
<ClCompile Include="src\jpeg-6b\jdmaster.c" />
<ClCompile Include="src\jpeg-6b\jdmerge.c" />
<ClCompile Include="src\jpeg-6b\jdphuff.c" />
<ClCompile Include="src\jpeg-6b\jdpostct.c" />
<ClCompile Include="src\jpeg-6b\jdsample.c" />
<ClCompile Include="src\jpeg-6b\jdtrans.c" />
<ClCompile Include="src\jpeg-6b\jerror.c" />
<ClCompile Include="src\jpeg-6b\jfdctflt.c" />
<ClCompile Include="src\jpeg-6b\jfdctfst.c" />
<ClCompile Include="src\jpeg-6b\jfdctint.c" />
<ClCompile Include="src\jpeg-6b\jidctflt.c" />
<ClCompile Include="src\jpeg-6b\jidctfst.c" />
<ClCompile Include="src\jpeg-6b\jidctint.c" />
<ClCompile Include="src\jpeg-6b\jidctred.c" />
<ClCompile Include="src\jpeg-6b\jmemmgr.c" />
<ClCompile Include="src\jpeg-6b\jmemnobs.c" />
<ClCompile Include="src\jpeg-6b\jpegtran.c" />
<ClCompile Include="src\jpeg-6b\jquant1.c" />
<ClCompile Include="src\jpeg-6b\jquant2.c" />
<ClCompile Include="src\jpeg-6b\jutils.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="include\sqlite\sqlite3.h" />
<ClInclude Include="include\sqlite\sqlite3ext.h" />
<ClInclude Include="include\sigslot\sigslot.h" />
<ClInclude Include="include\expat\ascii.h" />
<ClInclude Include="include\expat\asciitab.h" />
<ClInclude Include="include\expat\expat.h" />
<ClInclude Include="include\expat\expat_external.h" />
<ClInclude Include="include\expat\iasciitab.h" />
<ClInclude Include="include\expat\internal.h" />
<ClInclude Include="include\expat\latin1tab.h" />
<ClInclude Include="include\expat\nametab.h" />
<ClInclude Include="include\expat\utf8tab.h" />
<ClInclude Include="include\expat\winconfig.h" />
<ClInclude Include="include\expat\xmlrole.h" />
<ClInclude Include="include\expat\xmltok.h" />
<ClInclude Include="include\expat\xmltok_impl.h" />
<ClInclude Include="include\md5\md5.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -0,0 +1,204 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{4993E68D-E97A-4CD2-AC8E-168AE315BAC5}</ProjectGuid>
<RootNamespace>aacdecoder</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/obj/$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/obj/$(Configuration)\</IntDir>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../core/audio;../../;../../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;AACDECODER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>../../core/audio;../../;../../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;AACDECODER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClInclude Include="libfaad\analysis.h" />
<ClInclude Include="libfaad\bits.h" />
<ClInclude Include="libfaad\cfft.h" />
<ClInclude Include="libfaad\cfft_tab.h" />
<ClInclude Include="libfaad\common.h" />
<ClInclude Include="libfaad\decoder.h" />
<ClInclude Include="libfaad\drc.h" />
<ClInclude Include="drms.h" />
<ClInclude Include="drmstables.h" />
<ClInclude Include="libfaad\error.h" />
<ClInclude Include="libfaad\filtbank.h" />
<ClInclude Include="libfaad\fixed.h" />
<ClInclude Include="libfaad\codebook\hcb.h" />
<ClInclude Include="libfaad\codebook\hcb_1.h" />
<ClInclude Include="libfaad\codebook\hcb_10.h" />
<ClInclude Include="libfaad\codebook\hcb_11.h" />
<ClInclude Include="libfaad\codebook\hcb_2.h" />
<ClInclude Include="libfaad\codebook\hcb_3.h" />
<ClInclude Include="libfaad\codebook\hcb_4.h" />
<ClInclude Include="libfaad\codebook\hcb_5.h" />
<ClInclude Include="libfaad\codebook\hcb_6.h" />
<ClInclude Include="libfaad\codebook\hcb_7.h" />
<ClInclude Include="libfaad\codebook\hcb_8.h" />
<ClInclude Include="libfaad\codebook\hcb_9.h" />
<ClInclude Include="libfaad\codebook\hcb_sf.h" />
<ClInclude Include="libfaad\huffman.h" />
<ClInclude Include="libfaad\ic_predict.h" />
<ClInclude Include="libfaad\iq_table.h" />
<ClInclude Include="libfaad\is.h" />
<ClInclude Include="libfaad\kbd_win.h" />
<ClInclude Include="libfaad\lt_predict.h" />
<ClInclude Include="libfaad\mdct.h" />
<ClInclude Include="libfaad\mp4.h" />
<ClInclude Include="mp4ff.h" />
<ClInclude Include="mp4ff_int_types.h" />
<ClInclude Include="mp4ffint.h" />
<ClInclude Include="libfaad\ms.h" />
<ClInclude Include="neaacdec.h" />
<ClInclude Include="libfaad\output.h" />
<ClInclude Include="libfaad\pns.h" />
<ClInclude Include="libfaad\pulse.h" />
<ClInclude Include="libfaad\rvlc.h" />
<ClInclude Include="libfaad\sbr_dct.h" />
<ClInclude Include="libfaad\sbr_dec.h" />
<ClInclude Include="libfaad\sbr_e_nf.h" />
<ClInclude Include="libfaad\sbr_fbt.h" />
<ClInclude Include="libfaad\sbr_hfadj.h" />
<ClInclude Include="libfaad\sbr_hfgen.h" />
<ClInclude Include="libfaad\sbr_huff.h" />
<ClInclude Include="libfaad\sbr_noise.h" />
<ClInclude Include="libfaad\sbr_qmf.h" />
<ClInclude Include="libfaad\sbr_qmf_c.h" />
<ClInclude Include="libfaad\sbr_syntax.h" />
<ClInclude Include="libfaad\sbr_tf_grid.h" />
<ClInclude Include="libfaad\sine_win.h" />
<ClInclude Include="libfaad\specrec.h" />
<ClInclude Include="libfaad\ssr.h" />
<ClInclude Include="libfaad\ssr_fb.h" />
<ClInclude Include="libfaad\ssr_ipqf.h" />
<ClInclude Include="libfaad\ssr_win.h" />
<ClInclude Include="libfaad\structs.h" />
<ClInclude Include="libfaad\syntax.h" />
<ClInclude Include="libfaad\tns.h" />
<ClInclude Include="AACSourceSupplier.h" />
<ClInclude Include="m4aAudioSource.h" />
<ClInclude Include="stdafx.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="libfaad\bits.c" />
<ClCompile Include="libfaad\cfft.c" />
<ClCompile Include="libfaad\common.c" />
<ClCompile Include="libfaad\decoder.c" />
<ClCompile Include="libfaad\drc.c" />
<ClCompile Include="drms.c" />
<ClCompile Include="libfaad\error.c" />
<ClCompile Include="libfaad\filtbank.c" />
<ClCompile Include="libfaad\hcr.c" />
<ClCompile Include="libfaad\huffman.c" />
<ClCompile Include="libfaad\ic_predict.c" />
<ClCompile Include="libfaad\is.c" />
<ClCompile Include="libfaad\lt_predict.c" />
<ClCompile Include="libfaad\mdct.c" />
<ClCompile Include="libfaad\mp4.c" />
<ClCompile Include="mp4atom.c" />
<ClCompile Include="mp4ff.c" />
<ClCompile Include="mp4meta.c" />
<ClCompile Include="mp4sample.c" />
<ClCompile Include="mp4tagupdate.c" />
<ClCompile Include="mp4util.c" />
<ClCompile Include="libfaad\ms.c" />
<ClCompile Include="libfaad\output.c" />
<ClCompile Include="libfaad\pns.c" />
<ClCompile Include="libfaad\pulse.c" />
<ClCompile Include="libfaad\rvlc.c" />
<ClCompile Include="libfaad\sbr_dct.c" />
<ClCompile Include="libfaad\sbr_dec.c" />
<ClCompile Include="libfaad\sbr_e_nf.c" />
<ClCompile Include="libfaad\sbr_fbt.c" />
<ClCompile Include="libfaad\sbr_hfadj.c" />
<ClCompile Include="libfaad\sbr_hfgen.c" />
<ClCompile Include="libfaad\sbr_huff.c" />
<ClCompile Include="libfaad\sbr_qmf.c" />
<ClCompile Include="libfaad\sbr_syntax.c" />
<ClCompile Include="libfaad\sbr_tf_grid.c" />
<ClCompile Include="libfaad\specrec.c" />
<ClCompile Include="libfaad\ssr.c" />
<ClCompile Include="libfaad\ssr_fb.c" />
<ClCompile Include="libfaad\ssr_ipqf.c" />
<ClCompile Include="libfaad\syntax.c" />
<ClCompile Include="libfaad\tns.c" />
<ClCompile Include="AACSourceSupplier.cpp" />
<ClCompile Include="accdecoder_plugin.cpp" />
<ClCompile Include="m4aAudioSource.cpp" />
<ClCompile Include="stdafx.cpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -0,0 +1,106 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{A6923E38-7B13-4394-93E6-005CE3E80DA4}</ProjectGuid>
<RootNamespace>apedecoder</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/obj/$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/obj/$(Configuration)\</IntDir>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../;./ape;../../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;APEDECODER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalOptions>/NODEFAULTLIB:LIBCMT %(AdditionalOptions)</AdditionalOptions>
<AdditionalDependencies>MACLib.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>ape;../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>NotSet</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>../../;./ape;../../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;APEDECODER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>MACLib.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>ape;../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="APEDecoder.cpp" />
<ClCompile Include="apedecoder_plugin.cpp" />
<ClCompile Include="APESourceSupplier.cpp" />
<ClCompile Include="stdafx.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="APEDecoder.h" />
<ClInclude Include="APESourceSupplier.h" />
<ClInclude Include="stdafx.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -1,13 +1,13 @@
#pragma once
#include <core/audio/IAudioSource.h>
#include <core/audio/Stream.h>
#include "ntddcdrm.h"
#include "devioctl.h"
using namespace musik::core::audio;
class CDDAAudioSource : public IAudioSource
class CDDAAudioSource : public IDecoder
{
protected:
LONGLONG m_llPosition,

View File

@ -48,7 +48,7 @@ void CDDASourceSupplier::Destroy()
delete this;
}
IAudioSource* CDDASourceSupplier::CreateAudioSource()
IDecoder* CDDASourceSupplier::CreateDecoder()
{
return new CDDAAudioSource();
}

View File

@ -33,16 +33,17 @@
#pragma once
#include <core/Audio/IAudioSource.h>
#include <core/Audio/Stream.h>
#include <core/audio/IDecoderFactory.h>
using namespace musik::core::audio;
class CDDASourceSupplier : public IAudioSourceSupplier
class CDDASourceSupplier : public IDecoderFactory
{
public: CDDASourceSupplier();
public: ~CDDASourceSupplier();
public: IAudioSource* CreateAudioSource();
public: IDecoder* CreateDecoder();
public: void Destroy();
public: bool CanHandle(const utfchar* source) const;
};

View File

@ -0,0 +1,104 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{54764854-5A73-4329-9BAD-9AF22C72D9E2}</ProjectGuid>
<RootNamespace>cddadecoder</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/obj/$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/obj/$(Configuration)\</IntDir>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../;../../3rdparty/include;../../../../boost_1_60_0;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>../../;../../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="CDDAAudioSource.cpp" />
<ClCompile Include="cddadecoder_plugin.cpp" />
<ClCompile Include="CDDASourceSupplier.cpp" />
<ClCompile Include="stdafx.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="CDDAAudioSource.h" />
<ClInclude Include="CDDASourceSupplier.h" />
<ClInclude Include="devioctl.h" />
<ClInclude Include="ntddcdrm.h" />
<ClInclude Include="ntddstor.h" />
<ClInclude Include="stdafx.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -58,7 +58,7 @@ extern "C" __declspec(dllexport) musik::core::IPlugin* GetPlugin()
return new CDDADecoderPlugin();
}
extern "C" __declspec(dllexport) IAudioSourceSupplier* CreateAudioSourceSupplier()
extern "C" __declspec(dllexport) IDecoderFactory* GetDecoderFactory()
{
return new CDDASourceSupplier();
}

View File

@ -0,0 +1,119 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{293471C3-93F8-4C70-AC2B-9F9211529C3B}</ProjectGuid>
<RootNamespace>mp3decoder</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/obj/$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/obj/$(Configuration)\</IntDir>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.;../..;../../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>false</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>.;../..;../../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>shlwapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="BaseDecoder.cpp" />
<ClCompile Include="BitStream.cpp" />
<ClCompile Include="CRC.cpp" />
<ClCompile Include="FrameSplitter.cpp" />
<ClCompile Include="Header.cpp" />
<ClCompile Include="Layer3Decoder.cpp" />
<ClCompile Include="SideInfo.cpp" />
<ClCompile Include="MP3Decoder.cpp" />
<ClCompile Include="mp3decoder_plugin.cpp" />
<ClCompile Include="MP3SourceSupplier.cpp" />
<ClCompile Include="stdafx.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="BaseDecoder.h" />
<ClInclude Include="BitReservoir.H" />
<ClInclude Include="BitStream.h" />
<ClInclude Include="CRC.h" />
<ClInclude Include="Frame.h" />
<ClInclude Include="FrameSplitter.h" />
<ClInclude Include="Header.h" />
<ClInclude Include="IMPEGDecoder.h" />
<ClInclude Include="Layer3Decoder.h" />
<ClInclude Include="resource.h" />
<ClInclude Include="SideInfo.h" />
<ClInclude Include="MP3Decoder.h" />
<ClInclude Include="MP3SourceSupplier.h" />
<ClInclude Include="stdafx.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -0,0 +1,109 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{292974B0-C8B7-41EF-B603-554A2B25CB90}</ProjectGuid>
<RootNamespace>oggdecoder</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">./obj/$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">./obj/$(Configuration)\</IntDir>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>.;../..;../../3rdparty/include;../../../../boost_1_60_0;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;OGGDECODER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalOptions>/NODEFAULTLIB:LIBCMT
%(AdditionalOptions)</AdditionalOptions>
<AdditionalDependencies>legacy_stdio_definitions.lib;libogg.lib;vorbis_static.lib;libvorbisfile.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>./lib;../../3rdparty/lib;../../../../boost_1_60_0/lib32-msvc-14.0;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>.;../..;../../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;OGGDECODER_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>libogg.lib;vorbis_static.lib;libvorbisfile.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>./lib;../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="OGGDecoder.cpp" />
<ClCompile Include="oggdecoder_plugin.cpp" />
<ClCompile Include="OggSourceSupplier.cpp" />
<ClCompile Include="stdafx.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="OGGDecoder.h" />
<ClInclude Include="OggSourceSupplier.h" />
<ClInclude Include="stdafx.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -0,0 +1,237 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{7CD00EC4-D090-48BE-9388-FA4857AC332C}</ProjectGuid>
<RootNamespace>taglib_plugin</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">./obj/$(Configuration)\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">./obj/$(Configuration)\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../../;../../3rdparty/include/;../../../../boost_1_60_0/;taglib-1.5;taglib-1.5/taglib;taglib-1.5/taglib/ape;taglib-1.5/taglib/flac;taglib-1.5/taglib/mpc;taglib-1.5/taglib/mpeg;taglib-1.5/taglib/mpeg/id3v1;taglib-1.5/taglib/mpeg/id3v2;taglib-1.5/taglib/mpeg/id3v2/frames;taglib-1.5/taglib/ogg;taglib-1.5/taglib/ogg/flac;taglib-1.5/taglib/ogg/speex;taglib-1.5/taglib/ogg/vorbis;taglib-1.5/taglib/toolkit;taglib-1.5/taglib/trueaudio;taglib-1.5/taglib/wavpack;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>false</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<BrowseInformation>true</BrowseInformation>
<WarningLevel>TurnOffAllWarnings</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)$(ProjectName).dll</OutputFile>
<AdditionalLibraryDirectories>../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<GenerateMapFile>true</GenerateMapFile>
<MapFileName>$(TargetDir)$(TargetName).map</MapFileName>
<MapExports>true</MapExports>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Speed</FavorSizeOrSpeed>
<AdditionalIncludeDirectories>../../;../../3rdparty/include/;taglib-1.5;taglib-1.5/taglib;taglib-1.5/taglib/ape;taglib-1.5/taglib/flac;taglib-1.5/taglib/mpc;taglib-1.5/taglib/mpeg;taglib-1.5/taglib/mpeg/id3v1;taglib-1.5/taglib/mpeg/id3v2;taglib-1.5/taglib/mpeg/id3v2/frames;taglib-1.5/taglib/ogg;taglib-1.5/taglib/ogg/flac;taglib-1.5/taglib/ogg/speex;taglib-1.5/taglib/ogg/vorbis;taglib-1.5/taglib/toolkit;taglib-1.5/taglib/trueaudio;taglib-1.5/taglib/wavpack;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>
</PrecompiledHeader>
<WarningLevel>TurnOffAllWarnings</WarningLevel>
<DebugInformationFormat>
</DebugInformationFormat>
</ClCompile>
<Link>
<OutputFile>$(OutDir)$(ProjectName).dll</OutputFile>
<AdditionalLibraryDirectories>../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="stdafx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
</PrecompiledHeader>
</ClCompile>
<ClCompile Include="taglib_plugin.cpp" />
<ClCompile Include="TagReaderTaglib.cpp" />
<ClCompile Include="taglib-1.5\taglib\ape\apefooter.cpp" />
<ClCompile Include="taglib-1.5\taglib\ape\apeitem.cpp" />
<ClCompile Include="taglib-1.5\taglib\ape\apetag.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\frames\attachedpictureframe.cpp" />
<ClCompile Include="taglib-1.5\taglib\audioproperties.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\frames\commentsframe.cpp" />
<ClCompile Include="taglib-1.5\taglib\fileref.cpp" />
<ClCompile Include="taglib-1.5\taglib\flac\flacfile.cpp" />
<ClCompile Include="taglib-1.5\taglib\flac\flacproperties.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\frames\generalencapsulatedobjectframe.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v1\id3v1genres.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v1\id3v1tag.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\id3v2extendedheader.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\id3v2footer.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\id3v2frame.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\id3v2framefactory.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\id3v2header.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\id3v2synchdata.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\id3v2tag.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpc\mpcfile.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpc\mpcproperties.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\mpegfile.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\mpegheader.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\mpegproperties.cpp" />
<ClCompile Include="taglib-1.5\taglib\ogg\oggfile.cpp" />
<ClCompile Include="taglib-1.5\taglib\ogg\flac\oggflacfile.cpp" />
<ClCompile Include="taglib-1.5\taglib\ogg\oggpage.cpp" />
<ClCompile Include="taglib-1.5\taglib\ogg\oggpageheader.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\frames\relativevolumeframe.cpp" />
<ClCompile Include="taglib-1.5\taglib\ogg\speex\speexfile.cpp" />
<ClCompile Include="taglib-1.5\taglib\ogg\speex\speexproperties.cpp" />
<ClCompile Include="taglib-1.5\taglib\tag.cpp" />
<ClCompile Include="taglib-1.5\taglib\tagunion.cpp" />
<ClCompile Include="taglib-1.5\taglib\toolkit\tbytevector.cpp" />
<ClCompile Include="taglib-1.5\taglib\toolkit\tbytevectorlist.cpp" />
<ClCompile Include="taglib-1.5\taglib\toolkit\tdebug.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\frames\textidentificationframe.cpp" />
<ClCompile Include="taglib-1.5\taglib\toolkit\tfile.cpp" />
<ClCompile Include="taglib-1.5\taglib\trueaudio\trueaudiofile.cpp" />
<ClCompile Include="taglib-1.5\taglib\trueaudio\trueaudioproperties.cpp" />
<ClCompile Include="taglib-1.5\taglib\toolkit\tstring.cpp" />
<ClCompile Include="taglib-1.5\taglib\toolkit\tstringlist.cpp" />
<ClCompile Include="taglib-1.5\taglib\toolkit\unicode.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\frames\uniquefileidentifierframe.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\frames\unknownframe.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\frames\unsynchronizedlyricsframe.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\id3v2\frames\urllinkframe.cpp" />
<ClCompile Include="taglib-1.5\taglib\ogg\vorbis\vorbisfile.cpp" />
<ClCompile Include="taglib-1.5\taglib\ogg\vorbis\vorbisproperties.cpp" />
<ClCompile Include="taglib-1.5\taglib\wavpack\wavpackfile.cpp" />
<ClCompile Include="taglib-1.5\taglib\wavpack\wavpackproperties.cpp" />
<ClCompile Include="taglib-1.5\taglib\mpeg\xingheader.cpp" />
<ClCompile Include="taglib-1.5\taglib\ogg\xiphcomment.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="stdafx.h" />
<ClInclude Include="TagReaderTaglib.h" />
<ClInclude Include="taglib-1.5\taglib\ape\apefooter.h" />
<ClInclude Include="taglib-1.5\taglib\ape\apeitem.h" />
<ClInclude Include="taglib-1.5\taglib\ape\apetag.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\frames\attachedpictureframe.h" />
<ClInclude Include="taglib-1.5\taglib\audioproperties.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\frames\commentsframe.h" />
<ClInclude Include="taglib-1.5\taglib\fileref.h" />
<ClInclude Include="taglib-1.5\taglib\flac\flacfile.h" />
<ClInclude Include="taglib-1.5\taglib\flac\flacproperties.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\frames\generalencapsulatedobjectframe.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v1\id3v1genres.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v1\id3v1tag.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\id3v2extendedheader.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\id3v2footer.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\id3v2frame.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\id3v2framefactory.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\id3v2header.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\id3v2synchdata.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\id3v2tag.h" />
<ClInclude Include="taglib-1.5\taglib\mpc\mpcfile.h" />
<ClInclude Include="taglib-1.5\taglib\mpc\mpcproperties.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\mpegfile.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\mpegheader.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\mpegproperties.h" />
<ClInclude Include="taglib-1.5\taglib\ogg\oggfile.h" />
<ClInclude Include="taglib-1.5\taglib\ogg\flac\oggflacfile.h" />
<ClInclude Include="taglib-1.5\taglib\ogg\oggpage.h" />
<ClInclude Include="taglib-1.5\taglib\ogg\oggpageheader.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\frames\relativevolumeframe.h" />
<ClInclude Include="taglib-1.5\taglib\ogg\speex\speexfile.h" />
<ClInclude Include="taglib-1.5\taglib\ogg\speex\speexproperties.h" />
<ClInclude Include="taglib-1.5\taglib\tag.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\taglib.h" />
<ClInclude Include="taglib-1.5\taglib\taglib_export.h" />
<ClInclude Include="taglib-1.5\taglib\tagunion.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\tbytevector.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\tbytevectorlist.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\tdebug.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\frames\textidentificationframe.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\tfile.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\tlist.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\tmap.h" />
<ClInclude Include="taglib-1.5\taglib\trueaudio\trueaudiofile.h" />
<ClInclude Include="taglib-1.5\taglib\trueaudio\trueaudioproperties.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\tstring.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\tstringlist.h" />
<ClInclude Include="taglib-1.5\taglib\toolkit\unicode.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\frames\uniquefileidentifierframe.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\frames\unknownframe.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\frames\unsynchronizedlyricsframe.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\id3v2\frames\urllinkframe.h" />
<ClInclude Include="taglib-1.5\taglib\ogg\vorbis\vorbisfile.h" />
<ClInclude Include="taglib-1.5\taglib\ogg\vorbis\vorbisproperties.h" />
<ClInclude Include="taglib-1.5\taglib\wavpack\wavpackfile.h" />
<ClInclude Include="taglib-1.5\taglib\wavpack\wavpackproperties.h" />
<ClInclude Include="taglib-1.5\taglib\mpeg\xingheader.h" />
<ClInclude Include="taglib-1.5\taglib\ogg\xiphcomment.h" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\core\core.vcxproj">
<Project>{b2165720-b4b2-4f4b-9634-8c390c3cb4db}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -0,0 +1,108 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{4F10C17A-8AF7-4FAC-A4E2-087AE6E8F9D8}</ProjectGuid>
<RootNamespace>waveout</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<PlatformToolset>v140</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<PlatformToolset>v140</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>14.0.25123.0</_ProjectFileVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<OutDir>$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir>./obj/$(Configuration)\</IntDir>
<LinkIncremental>true</LinkIncremental>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules />
<CodeAnalysisRuleAssemblies />
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<OutDir>$(SolutionDir)/bin/$(Configuration)/plugins\</OutDir>
<IntDir>./obj/$(Configuration)\</IntDir>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules />
<CodeAnalysisRuleAssemblies />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../..;../../3rdparty/include;../../../../boost_1_60_0;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>false</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../3rdparty/lib;../../../../boost_1_60_0/lib32-msvc-14.0;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<InlineFunctionExpansion>AnySuitable</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<AdditionalIncludeDirectories>../..;../../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat />
</ClCompile>
<Link>
<AdditionalDependencies>winmm.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>../../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Windows</SubSystem>
<OptimizeReferences>true</OptimizeReferences>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<LinkTimeCodeGeneration>UseLinkTimeCodeGeneration</LinkTimeCodeGeneration>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="pch.cpp" />
<ClCompile Include="WaveOut.cpp" />
<ClCompile Include="WaveOutBuffer.cpp" />
<ClCompile Include="waveout_plugin.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="pch.h" />
<ClInclude Include="WaveOut.h" />
<ClInclude Include="WaveOutBuffer.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -148,7 +148,7 @@ bool Indexer::Restarted(){
//////////////////////////////////////////
void Indexer::AddPath(utfstring sPath){
boost::filesystem::utfpath oPath(sPath);
sPath = oPath.string(); // Fix pathname for slash/backslash
sPath = oPath.wstring(); // Fix pathname for slash/backslash
if(sPath.substr(sPath.size()-1,1)!=UTF("/")){
sPath += UTF("/");
}
@ -316,7 +316,7 @@ void Indexer::CountFiles(utfstring &sFolder){
for(boost::filesystem::utfdirectory_iterator oFile(oPath);oFile!=oEndFile;++oFile){
if(is_directory(oFile->status())){
utfstring sDirectory;
sDirectory.assign(oFile->path().string());
sDirectory.assign(oFile->path().wstring());
this->CountFiles(sDirectory);
}else{
boost::mutex::scoped_lock lock(this->progressMutex);
@ -353,9 +353,9 @@ void Indexer::SyncDirectory(utfstring &sFolder,DBINT iParentFolderId,DBINT iPath
}
boost::filesystem::utfpath oPath(sFolder);
sFolder = oPath.string(); // Fix pathname for slash/backslash
sFolder = oPath.wstring(); // Fix pathname for slash/backslash
utfstring sFolderLeaf(oPath.leaf());
utfstring sFolderLeaf(oPath.leaf().wstring());
DBINT iFolderId(0);
// Get this folder ID
@ -406,7 +406,7 @@ void Indexer::SyncDirectory(utfstring &sFolder,DBINT iParentFolderId,DBINT iPath
// It's a directory
utfstring oDirectory;
oDirectory.assign(oFile->path().string());
oDirectory.assign(oFile->path().wstring());
// If this is a directory, recurse down
this->SyncDirectory(oDirectory,iFolderId,iPathId,syncPath);
@ -500,7 +500,7 @@ void Indexer::ThreadLoop(){
if(syncTimeout){
// Sync every "syncTimeout" second
boost::xtime oWaitTime;
boost::xtime_get(&oWaitTime, boost::TIME_UTC);
boost::xtime_get(&oWaitTime, boost::TIME_UTC_);
oWaitTime.sec += syncTimeout;
if(!this->Restarted()){

View File

@ -137,16 +137,15 @@ void IndexerTrack::InitMeta(){
}
}
bool IndexerTrack::CompareDBAndFileInfo(const boost::filesystem::utfpath &file,db::Connection &dbConnection,DBINT currentFolderId){
try{
this->SetValue("path",file.string().c_str());
this->SetValue("path",file.wstring().c_str());
this->SetValue("filename",file.leaf().c_str());
utfstring::size_type lastDot = file.leaf().find_last_of(UTF("."));
size_t lastDot = file.leaf().wstring().find_last_of(UTF("."));
if(lastDot!=utfstring::npos){
this->SetValue("extension",file.leaf().substr(lastDot+1).c_str());
this->SetValue("extension",file.leaf().wstring().substr(lastDot+1).c_str());
}
DBINT fileSize = (DBINT)boost::filesystem::file_size(file);

View File

@ -33,11 +33,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Library/Base.h>
@ -146,7 +143,7 @@ utfstring Library::Base::GetLibraryDirectory(){
boost::filesystem::create_directories(oFolder);
}
directory = oFolder.string();
directory = oFolder.wstring();
return directory;
}
@ -325,7 +322,7 @@ bool Library::Base::AddQuery( const Query::Base &query,unsigned int options ){
// To be on the safe side, lets check every second
boost::xtime waitingTime;
boost::xtime_get(&waitingTime, boost::TIME_UTC);
boost::xtime_get(&waitingTime, boost::TIME_UTC_);
waitingTime.sec += 1;
this->waitCondition.timed_wait(lock,waitingTime);
}

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Library/LocalDB.h>
#include <core/Query/Base.h>

View File

@ -34,11 +34,8 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Common.h>
#include <core/Library/Remote.h>
#include <core/Query/Base.h>

View File

@ -86,7 +86,7 @@ void PluginFactory::LoadPlugins(){
for(boost::filesystem::utfdirectory_iterator oFile(oDir);oFile!=oEndFile;++oFile){
if(boost::filesystem::is_regular(oFile->status())){
// This is a file
utfstring sFile(oFile->path().string());
utfstring sFile(oFile->path().wstring());
#ifdef WIN32
if(sFile.substr(sFile.size()-4)==UTF(".dll")){ // And a DLL

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Query/Base.h>
#include <core/Library/Base.h>

View File

@ -33,11 +33,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Query/Factory.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Query/ListBase.h>
#include <core/Library/Base.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Query/ListSelection.h>
#include <core/Library/Base.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Query/SortTracks.h>
#include <core/Library/Base.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Query/SortTracksWithData.h>
#include <core/Library/Base.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/Common.h>
#include <core/Query/TrackMetadata.h>

View File

@ -30,11 +30,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/audio/Buffer.h>

View File

@ -30,11 +30,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/audio/Player.h>
#include <core/PluginFactory.h>
@ -144,8 +141,8 @@ int Player::State(){
void Player::ThreadLoop(){
// First start the stream
this->stream = Stream::Create();
if(this->stream->OpenStream(this->url)){
this->stream = Stream::Create();
if (this->stream->OpenStream(this->url)) {
{
boost::mutex::scoped_lock lock(this->mutex);
// Set the volume in the output
@ -153,16 +150,16 @@ void Player::ThreadLoop(){
}
// If it's not started, lets precache
bool keepPrecaching(true);
while(this->State()==Precache && keepPrecaching){
keepPrecaching = this->PreBuffer();
bool keepPrecaching = true;
while(this->State() == Precache && keepPrecaching) {
keepPrecaching = this->PreBuffer();
boost::thread::yield();
}
// Lets wait until we are not precaching anymore
{
boost::mutex::scoped_lock lock(this->mutex);
while(this->state==Precache){
while (this->state==Precache) {
this->waitCondition.wait(lock);
}
}
@ -172,14 +169,14 @@ void Player::ThreadLoop(){
// Player should be started or quit by now
bool finished(false);
while(!finished && !this->Exited()){
if(this->setPosition!=-1){
if(this->setPosition != -1) {
// Set a new position
this->output->ClearBuffers();
this->stream->SetPosition(this->setPosition);
{
boost::mutex::scoped_lock lock(this->mutex);
this->bufferQueue.clear();
// this->lockedBuffers.clear();
this->setPosition = -1;
this->totalBufferSize = 0;
}
@ -190,23 +187,20 @@ void Player::ThreadLoop(){
// Get a buffer, either from the bufferQueue, or from the stream
BufferPtr buffer;
if(!this->BufferQueueEmpty()){
if (!this->BufferQueueEmpty()) {
boost::mutex::scoped_lock lock(this->mutex);
buffer = this->bufferQueue.front();
}else{
buffer = this->bufferQueue.front();
}
else {
buffer = this->stream->NextBuffer();
if(buffer){
if(buffer) {
boost::mutex::scoped_lock lock(this->mutex);
this->bufferQueue.push_back(buffer);
this->totalBufferSize += buffer->Bytes();
}
else {
}
}
if(buffer){
if(buffer) {
{
// Add the buffer to locked buffers so the output do not have time to play and
// try to release the buffer before we have to add it.
@ -215,92 +209,87 @@ void Player::ThreadLoop(){
}
// Try to play the buffer
if(!this->output->PlayBuffer(buffer.get(),this)){
if(!this->output->PlayBuffer(buffer.get(),this)) {
{
// We didn't manage to play the buffer, remove it from the locked buffer queue
boost::mutex::scoped_lock lock(this->mutex);
this->lockedBuffers.pop_back();
}
if(!this->PreBuffer()){
#ifdef _DEBUG
std::cerr << "!this->PreBuffer" << std::endl;
#endif
if(!this->PreBuffer()) {
// Wait for buffersize to become smaller
boost::mutex::scoped_lock lock(this->mutex);
if(this->totalBufferSize>this->maxBufferSize){
if(this->totalBufferSize>this->maxBufferSize) {
this->waitCondition.wait(lock);
}
}
}else{
}
else{
// Buffer send to output
boost::mutex::scoped_lock lock(this->mutex);
if(!this->bufferQueue.empty()){
if(!this->bufferQueue.empty()) {
this->bufferQueue.pop_front();
// Set currentPosition
if(this->lockedBuffers.size()==1){
this->currentPosition = buffer->Position();
if(this->lockedBuffers.size() == 1){
this->currentPosition = buffer->Position();
}
}
}
}else{
}
else{
// We have no more to decode
finished = true;
finished = true;
}
}
// TODO: call a signal to notify that player is almost done
if(!this->Exited()){
if(!this->Exited()) {
this->PlaybackAlmostEnded(this);
}
// We need to wait for all the lockedBuffers to be released
bool buffersEmpty=false;
do{
do {
this->output->ReleaseBuffers();
{
boost::mutex::scoped_lock lock(this->mutex);
buffersEmpty = this->lockedBuffers.empty();
if(!buffersEmpty && this->state!=Player::Quit){
buffersEmpty = this->lockedBuffers.empty();
if(!buffersEmpty && this->state!=Player::Quit) {
this->waitCondition.wait(lock);
}
}
}while(!buffersEmpty && !this->Exited());
} while(!buffersEmpty && !this->Exited());
}else{
}
else {
// Unable to open stream
this->PlaybackError(this);
}
{
boost::mutex::scoped_lock lock(this->mutex);
this->state = Player::Quit;
this->state = Player::Quit;
}
this->PlaybackEnded(this);
this->output->ReleaseBuffers();
this->output.reset();
this->stream.reset();
}
bool Player::BufferQueueEmpty(){
bool Player::BufferQueueEmpty() {
boost::mutex::scoped_lock lock(this->mutex);
return this->bufferQueue.empty();
}
bool Player::PreBuffer(){
// But not if buffer is full
if(this->totalBufferSize>this->maxBufferSize){
if(this->totalBufferSize>this->maxBufferSize) {
return false;
}else{
}
else{
BufferPtr newBuffer = this->stream->NextBuffer();
if(newBuffer){
if(newBuffer) {
boost::mutex::scoped_lock lock(this->mutex);
this->bufferQueue.push_back(newBuffer);
this->totalBufferSize += newBuffer->Bytes();
@ -310,23 +299,23 @@ bool Player::PreBuffer(){
}
}
bool Player::Exited(){
bool Player::Exited() {
boost::mutex::scoped_lock lock(this->mutex);
return this->state==Player::Quit;
}
void Player::ReleaseBuffer(IBuffer *buffer){
void Player::ReleaseBuffer(IBuffer *buffer) {
boost::mutex::scoped_lock lock(this->mutex);
// Remove the buffer from lockedBuffers
for(BufferList::iterator foundBuffer=this->lockedBuffers.begin();foundBuffer!=this->lockedBuffers.end();++foundBuffer){
if(foundBuffer->get()==buffer){
#ifdef _DEBUG
std::cerr << "Found buffer to delete in locked buffer list" << std::endl;
#endif
for (BufferList::iterator foundBuffer = this->lockedBuffers.begin(); foundBuffer != this->lockedBuffers.end(); ++foundBuffer) {
if (foundBuffer->get() == buffer) {
this->totalBufferSize -= buffer->Bytes();
if( this->stream ){
if(this->stream ) {
this->stream->DeleteBuffer(*foundBuffer);
}
this->lockedBuffers.erase(foundBuffer);
// Calculate current position from front locked buffer
@ -339,11 +328,12 @@ void Player::ReleaseBuffer(IBuffer *buffer){
return;
}
}
// We should never reach this point
//throw "Releasing nonexisting buffer";
}
void Player::Notify(){
void Player::Notify() {
this->waitCondition.notify_all();
}

View File

@ -30,11 +30,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/audio/Stream.h>
#include <core/audio/IDecoderFactory.h>

View File

@ -30,12 +30,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <iostream>
#include <core/audio/Transport.h>

View File

@ -74,7 +74,7 @@ typedef unsigned int DBTIME;
#include <string>
#ifdef _MSC_VER
#if WIN32
//////////////////////////////////////////
///\brief

View File

@ -42,8 +42,8 @@
#ifdef UTF_WIDECHAR
namespace boost{
namespace filesystem{
typedef boost::filesystem::wpath utfpath;
typedef wdirectory_iterator utfdirectory_iterator;
typedef boost::filesystem::path utfpath;
typedef boost::filesystem::directory_iterator utfdirectory_iterator;
}
}
#else

255
src/core/core.vcxproj Executable file
View File

@ -0,0 +1,255 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{B2165720-B4B2-4F4B-9634-8C390C3CB4DB}</ProjectGuid>
<RootNamespace>core</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/bin/$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">obj/$(Configuration)\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">bin/$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">obj/$(Configuration)\</IntDir>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>./;../;../3rdparty/include/;../3rdparty/include/jpeg-6b;../../../boost_1_60_0;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_CRT_SECURE_NO_DEPRECATE;XML_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.hpp</PrecompiledHeaderFile>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>Default</InlineFunctionExpansion>
<IntrinsicFunctions>true</IntrinsicFunctions>
<FavorSizeOrSpeed>Neither</FavorSizeOrSpeed>
<AdditionalIncludeDirectories>./;../;../3rdparty/include/;../3rdparty/include/jpeg-6b;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_CRT_SECURE_NO_DEPRECATE;XML_STATIC;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.hpp</PrecompiledHeaderFile>
</ClCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="pch.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
</ClCompile>
<ClCompile Include="PlaybackQueue.cpp" />
<ClCompile Include="Common.cpp" />
<ClCompile Include="Crypt.cpp" />
<ClCompile Include="Image.cpp" />
<ClCompile Include="MessageQueue.cpp" />
<ClCompile Include="Preferences.cpp" />
<ClCompile Include="ThreadHelper.cpp" />
<ClCompile Include="tracklist\Base.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)2.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)2.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)2.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)2.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="tracklist\LibraryList.cpp" />
<ClCompile Include="tracklist\MultiLibraryList.cpp" />
<ClCompile Include="Indexer.cpp" />
<ClCompile Include="LibraryFactory.cpp" />
<ClCompile Include="Query\Base.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="Query\Factory.cpp" />
<ClCompile Include="Query\ListBase.cpp" />
<ClCompile Include="Query\ListSelection.cpp" />
<ClCompile Include="Query\SortTracks.cpp" />
<ClCompile Include="Query\SortTracksWithData.cpp" />
<ClCompile Include="Query\TrackMetadata.cpp" />
<ClCompile Include="Library\Base.cpp" />
<ClCompile Include="Library\LocalDB.cpp" />
<ClCompile Include="Library\Remote.cpp" />
<ClCompile Include="db\CachedStatement.cpp" />
<ClCompile Include="db\Connection.cpp" />
<ClCompile Include="db\ScopedTransaction.cpp" />
<ClCompile Include="db\Statement.cpp" />
<ClCompile Include="MetadataValue.cpp" />
<ClCompile Include="MetaKey.cpp" />
<ClCompile Include="NonLibraryTrackHelper.cpp" />
<ClCompile Include="PluginFactory.cpp" />
<ClCompile Include="audio\Buffer.cpp" />
<ClCompile Include="audio\Player.cpp" />
<ClCompile Include="audio\Stream.cpp" />
<ClCompile Include="audio\Transport.cpp" />
<ClCompile Include="server\Connection.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="Server.cpp" />
<ClCompile Include="server\User.cpp" />
<ClCompile Include="server\UserSession.cpp" />
<ClCompile Include="xml\Node.cpp" />
<ClCompile Include="xml\Parser.cpp" />
<ClCompile Include="xml\ParserNode.cpp" />
<ClCompile Include="xml\Socket.cpp" />
<ClCompile Include="xml\Writer.cpp" />
<ClCompile Include="xml\WriterNode.cpp" />
<ClCompile Include="http\RequestParser.cpp" />
<ClCompile Include="http\Responder.cpp" />
<ClCompile Include="http\Server.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="http\TrackSender.cpp" />
<ClCompile Include="filestreams\Factory.cpp">
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.obj</ObjectFileName>
<XMLDocumentationFileName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)%(Filename)1.xdc</XMLDocumentationFileName>
</ClCompile>
<ClCompile Include="filestreams\LocalFileStream.cpp" />
<ClCompile Include="GenericTrack.cpp" />
<ClCompile Include="IndexerTrack.cpp" />
<ClCompile Include="LibraryTrack.cpp" />
<ClCompile Include="Track.cpp" />
<ClCompile Include="TrackFactory.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="pch.hpp" />
<ClInclude Include="PlaybackQueue.h" />
<ClInclude Include="Common.h" />
<ClInclude Include="config.h" />
<ClInclude Include="config_filesystem.h" />
<ClInclude Include="config_format.h" />
<ClInclude Include="Crypt.h" />
<ClInclude Include="Image.h" />
<ClInclude Include="MessageQueue.h" />
<ClInclude Include="Preferences.h" />
<ClInclude Include="ThreadHelper.h" />
<ClInclude Include="tracklist\Base.h" />
<ClInclude Include="tracklist\LibraryList.h" />
<ClInclude Include="tracklist\MultiLibraryList.h" />
<ClInclude Include="Indexer.h" />
<ClInclude Include="LibraryFactory.h" />
<ClInclude Include="Query\Base.h" />
<ClInclude Include="Query\Factory.h" />
<ClInclude Include="Query\ListBase.h" />
<ClInclude Include="Query\ListSelection.h" />
<ClInclude Include="Query\SortTracks.h" />
<ClInclude Include="Query\SortTracksWithData.h" />
<ClInclude Include="Query\TrackMetadata.h" />
<ClInclude Include="Library\Base.h" />
<ClInclude Include="Library\LocalDB.h" />
<ClInclude Include="Library\Remote.h" />
<ClInclude Include="db\CachedStatement.h" />
<ClInclude Include="db\Connection.h" />
<ClInclude Include="db\dbconfig.h" />
<ClInclude Include="db\ScopedTransaction.h" />
<ClInclude Include="db\Statement.h" />
<ClInclude Include="MetadataValue.h" />
<ClInclude Include="MetaKey.h" />
<ClInclude Include="NonLibraryTrackHelper.h" />
<ClInclude Include="Plugin\IMetaDataReader.h" />
<ClInclude Include="Plugin\IMetaDataWriter.h" />
<ClInclude Include="IPlugin.h" />
<ClInclude Include="PluginFactory.h" />
<ClInclude Include="audio\Buffer.h" />
<ClInclude Include="audio\IAnalyzer.h" />
<ClInclude Include="audio\IBuffer.h" />
<ClInclude Include="audio\IDecoder.h" />
<ClInclude Include="audio\IDecoderFactory.h" />
<ClInclude Include="audio\IDSP.h" />
<ClInclude Include="audio\IOutput.h" />
<ClInclude Include="audio\IPlayer.h" />
<ClInclude Include="audio\Player.h" />
<ClInclude Include="audio\Stream.h" />
<ClInclude Include="audio\Transport.h" />
<ClInclude Include="server\Connection.h" />
<ClInclude Include="Server.h" />
<ClInclude Include="server\User.h" />
<ClInclude Include="server\UserSession.h" />
<ClInclude Include="xml\IReadSupplier.h" />
<ClInclude Include="xml\IWriteSupplier.h" />
<ClInclude Include="xml\Node.h" />
<ClInclude Include="xml\Parser.h" />
<ClInclude Include="xml\ParserNode.h" />
<ClInclude Include="xml\Reader.h" />
<ClInclude Include="xml\Socket.h" />
<ClInclude Include="xml\Writer.h" />
<ClInclude Include="xml\WriterNode.h" />
<ClInclude Include="http\IRequestParser.h" />
<ClInclude Include="http\IRequestPlugin.h" />
<ClInclude Include="http\IResponder.h" />
<ClInclude Include="http\RequestParser.h" />
<ClInclude Include="http\Responder.h" />
<ClInclude Include="http\Server.h" />
<ClInclude Include="http\TrackSender.h" />
<ClInclude Include="filestreams\Factory.h" />
<ClInclude Include="filestreams\IFileStream.h" />
<ClInclude Include="filestreams\IFileStreamFactory.h" />
<ClInclude Include="filestreams\LocalFileStream.h" />
<ClInclude Include="GenericTrack.h" />
<ClInclude Include="IndexerTrack.h" />
<ClInclude Include="ITrack.h" />
<ClInclude Include="LibraryTrack.h" />
<ClInclude Include="Track.h" />
<ClInclude Include="TrackFactory.h" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\3rdparty\3rdparty.vcxproj">
<Project>{b2165720-b4b2-4f4b-8888-8c390c3cb4db}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>

View File

@ -36,11 +36,7 @@
//#pragma once --- Unneccessary
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/db/CachedStatement.h>
#include <core/db/Statement.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/db/Connection.h>
#include <boost/lexical_cast.hpp>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/db/ScopedTransaction.h>
#include <core/db/Connection.h>

View File

@ -34,13 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
//#pragma once --- Unneccessary
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/db/Statement.h>
#include <core/db/Connection.h>

View File

@ -33,11 +33,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/filestreams/Factory.h>
#include <core/config_filesystem.h>

View File

@ -33,11 +33,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/filestreams/LocalFileStream.h>
#include <core/config.h>
@ -45,6 +42,7 @@
#include <core/config_filesystem.h>
//////////////////////////////////////////////////////////////////////////////
#ifdef UTF_WIDECHAR
#define UTFFopen _wfopen
typedef fpos_t stdioPositionType;
@ -52,103 +50,98 @@ typedef fpos_t stdioPositionType;
#define UTFFopen fopen
typedef fpos_t stdioPositionType;
#endif
//////////////////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
using namespace musik::core::filestreams;
//////////////////////////////////////////////////////////////////////////////
LocalFileStream::LocalFileStream()
:file(NULL)
,filesize(-1)
: file(NULL)
, filesize(-1)
{
}
LocalFileStream::~LocalFileStream(){
LocalFileStream::~LocalFileStream() {
this->Close();
}
bool LocalFileStream::Open(const utfchar *filename,unsigned int options){
if(filename==NULL){
if(filename == NULL) {
return false;
}
try{
try {
boost::filesystem::utfpath file(filename);
if (!boost::filesystem::exists(file)) {
std::cerr << "File not found" << std::endl;
}
if (!boost::filesystem::is_regular(file)) {
std::cerr << "File not a regular file" << std::endl;
}
this->filesize = (long)boost::filesystem::file_size(file);
this->extension = file.extension();
this->extension = file.extension().wstring();
this->file = UTFFopen(filename,UTF("rb"));
this->fd = new boost::iostreams::file_descriptor(file);
this->fileStream = new boost::iostreams::stream<boost::iostreams::file_descriptor>(*this->fd);
this->fileStream->exceptions(std::ios_base::eofbit | std::ios_base::failbit | std::ios_base::badbit);
this->fileStream->exceptions ( std::ios_base::eofbit | std::ios_base::failbit | std::ios_base::badbit );
return this->file!=NULL;
}
catch(...){
catch(...) {
return false;
}
}
bool LocalFileStream::Close(){
if(this->file){
if(fclose(this->file)==0){
bool LocalFileStream::Close() {
if (this->file) {
if (fclose(this->file) == 0) {
this->file = NULL;
delete this->fd;
delete this->fileStream;
delete this->fd;
delete this->fileStream;
return true;
}
}
return false;
}
void LocalFileStream::Destroy(){
void LocalFileStream::Destroy() {
delete this;
}
PositionType LocalFileStream::Read(void* buffer,PositionType readBytes){
//return (PositionType)fread(buffer,1,readBytes,this->file);
PositionType LocalFileStream::Read(void* buffer,PositionType readBytes) {
try {
this->fileStream->read((char*)buffer, readBytes);
this->fileStream->read((char*) buffer, readBytes);
}
catch (std::ios_base::failure) {
if(this->fileStream->eof()) {
//EOF reached
return sizeof(buffer);
}
else {
std::cerr << "Error reading from file" << std::endl;
}
return 0;
catch (std::ios_base::failure){
if(!this->fileStream->eof()) {
std::cerr << "Error reading from file" << std::endl;
return 0;
}
}
return readBytes;
return this->fileStream->gcount();
}
bool LocalFileStream::SetPosition(PositionType position){
bool LocalFileStream::SetPosition(PositionType position) {
/*stdioPositionType newPosition = (stdioPositionType)position;
return fsetpos(this->file,&newPosition)==0;*/
try {
this->fileStream->seekp(position);
this->fileStream->seekg(position);
this->fileStream->clear();
this->fileStream->seekg(position);
}
catch (std::ios_base::failure) {
catch (std::ios_base::failure ex) {
return false;
}
return true;
}
PositionType LocalFileStream::Position(){
PositionType LocalFileStream::Position() {
/*stdioPositionType currentPosition(0);
if(fgetpos(this->file,&currentPosition)==0){
return (PositionType)currentPosition;
@ -157,16 +150,15 @@ PositionType LocalFileStream::Position(){
return this->fileStream->tellg();
}
bool LocalFileStream::Eof(){
bool LocalFileStream::Eof() {
//return feof(this->file)!=0;
return this->fileStream->eof();
}
long LocalFileStream::Filesize(){
long LocalFileStream::Filesize() {
return this->filesize;
}
const utfchar* LocalFileStream::Type(){
const utfchar* LocalFileStream::Type() {
return this->extension.c_str();
}
}

View File

@ -34,12 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/http/RequestParser.h>
#include <boost/algorithm/string.hpp>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/http/Responder.h>
#include <core/http/Server.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/http/Server.h>
#include <core/http/Responder.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/http/TrackSender.h>
#include <core/Common.h>

View File

@ -35,17 +35,18 @@
//////////////////////////////////////////////////////////////////////////////
// Precompiled headers
#pragma once
#ifdef WIN32
//#pragma warning (disable : 4996 4018 4482)
//#pragma warning (disable : 4996 4018 4482)
#include <core/config.h>
#include <core/config.h>
#include <sigslot/sigslot.h>
#include <boost/shared_ptr.hpp>
#include <boost/iostreams/stream.hpp>
#include <sigslot/sigslot.h>
#include <boost/shared_ptr.hpp>
#include <boost/iostreams/stream.hpp>
#include <core/db/Connection.h>
#include <core/db/Statement.h>
#include <core/db/CachedStatement.h>
#include <core/db/Connection.h>
#include <core/db/Statement.h>
#include <core/db/CachedStatement.h>
#endif

View File

@ -33,11 +33,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/server/Connection.h>
#include <core/Common.h>
@ -271,7 +268,7 @@ void Connection::WriteThread(){
{
boost::mutex::scoped_lock lock(this->libraryMutex);
boost::xtime waitTime;
boost::xtime_get(&waitTime, boost::TIME_UTC);
boost::xtime_get(&waitTime, boost::TIME_UTC_);
waitTime.sec += 30;
if(!this->userSession){

View File

@ -33,13 +33,10 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include "pch.hpp"
#include <core/server/User.h>
//////////////////////////////////////////////////////////////////////////////
using namespace musik::core::server;

View File

@ -33,11 +33,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/server/UserSession.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/tracklist/Base.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/tracklist/LibraryList.h>
#include <core/LibraryTrack.h>

View File

@ -34,11 +34,7 @@
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/tracklist/MultiLibraryList.h>
#include <core/LibraryTrack.h>

View File

@ -33,11 +33,7 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include "Node.h"
#include <core/xml/Parser.h>

View File

@ -33,11 +33,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/xml/Parser.h>
#include <core/xml/ParserNode.h>

View File

@ -33,11 +33,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/xml/ParserNode.h>
#include <core/xml/Parser.h>

View File

@ -33,11 +33,8 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/xml/Socket.h>

View File

@ -33,11 +33,7 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
#include <core/xml/Writer.h>
#include <core/xml/WriterNode.h>

View File

@ -33,14 +33,14 @@
// POSSIBILITY OF SUCH DAMAGE.
//
//////////////////////////////////////////////////////////////////////////////
#ifdef WIN32
#include "pch.hpp"
#else
#include <core/pch.hpp>
#endif
//#ifdef WIN32
#include "pch.hpp"
//#else
// #include <core/pch.hpp>
//#endif
#include <core/xml/WriterNode.h>
#include <core/xml/Writer.h>
#include "WriterNode.h"
#include "Writer.h"
using namespace musik::core::xml;

133
src/square/player.vcxproj Executable file
View File

@ -0,0 +1,133 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectName>square</ProjectName>
<ProjectGuid>{C7102EB1-7311-4B36-A7FF-89DD7F077FF9}</ProjectGuid>
<RootNamespace>square</RootNamespace>
<Keyword>Win32Proj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<WholeProgramOptimization>true</WholeProgramOptimization>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<UseOfAtl>false</UseOfAtl>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v140</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)/bin/$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">obj/$(Configuration)\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/bin/$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)/obj/$(Configuration)\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>../;../3rdparty/include;../../../boost_1_60_0;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>EditAndContinue</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>../3rdparty/lib;../../../boost_1_60_0/lib32-msvc-14.0;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<ImportLibrary>../../bin/$(Configuration)/mC2.lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
<PostBuildEvent>
<Command>copy "$(SolutionDir)\src\3rdparty\vld\*.*" "$(TargetDir)" </Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<AdditionalIncludeDirectories>../;../3rdparty/include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<AdditionalLibraryDirectories>../3rdparty/lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<IgnoreSpecificDefaultLibraries>%(IgnoreSpecificDefaultLibraries)</IgnoreSpecificDefaultLibraries>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Console</SubSystem>
<OptimizeReferences>
</OptimizeReferences>
<EnableCOMDATFolding>
</EnableCOMDATFolding>
<ImportLibrary>
</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="ConsoleUI.cpp" />
<ClCompile Include="DummyAudioEventHandler.cpp" />
<ClCompile Include="player.cpp" />
<ClCompile Include="stdafx.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">Create</PrecompiledHeader>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="config.h" />
<ClInclude Include="ConsoleUI.h" />
<ClInclude Include="DummyAudioEventHandler.h" />
<ClInclude Include="stdafx.h" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\3rdparty\3rdparty.vcxproj">
<Project>{b2165720-b4b2-4f4b-8888-8c390c3cb4db}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
<ProjectReference Include="..\core\core.vcxproj">
<Project>{b2165720-b4b2-4f4b-9634-8c390c3cb4db}</Project>
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>