Files
video-v1/vav2/platforms/windows/tests/headless/Vav2PlayerHeadless.vcxproj

140 lines
8.5 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>17.0</VCProjectVersion>
<Keyword>Win32Proj</Keyword>
<ProjectGuid>{E8B13F42-1234-5678-9ABC-123456789ABC}</ProjectGuid>
<RootNamespace>Vav2PlayerHeadless</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
<ProjectName>Vav2PlayerHeadless</ProjectName>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental>
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\Headless\</OutDir>
<IntDir>$(Platform)\$(Configuration)\Headless\</IntDir>
<TargetName>Vav2PlayerHeadless</TargetName>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental>
<OutDir>$(SolutionDir)$(Platform)\$(Configuration)\Headless\</OutDir>
<IntDir>$(Platform)\$(Configuration)\Headless\</IntDir>
<TargetName>Vav2PlayerHeadless</TargetName>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;HEADLESS_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp20</LanguageStandard>
<AdditionalIncludeDirectories>$(ProjectDir)src;$(ProjectDir)..\..\vavcore\include;$(ProjectDir)..\..\..\..\..\include\libwebm;$(ProjectDir)..\..\..\..\..\include\dav1d;$(ProjectDir)..\..\..\..\..\oss\nvidia-video-codec\Interface;$(CUDA_PATH_V13_0)\include</AdditionalIncludeDirectories>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(ProjectDir)..\..\vavcore\lib;$(ProjectDir)..\..\..\..\..\lib\libwebm;$(ProjectDir)..\..\..\..\..\lib\dav1d;$(ProjectDir)..\..\..\..\..\lib\amf;$(ProjectDir)..\..\..\..\..\lib\libvpl;$(ProjectDir)..\..\..\..\..\oss\nvidia-video-codec\Lib\x64;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v13.0\lib\x64</AdditionalLibraryDirectories>
<AdditionalDependencies>VavCore-debug.lib;webm-debug.lib;dav1d-debug.lib;amf-debug.lib;vpld.lib;nvcuvid.lib;cuda.lib;mfplat.lib;mf.lib;mfuuid.lib;d3d11.lib;d3d12.lib;dxgi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<PostBuildEvent>
<Command>echo Copying VavCore Debug DLL for Headless Tests...
copy "$(ProjectDir)..\..\vavcore\lib\VavCore-debug.dll" "$(TargetDir)VavCore-debug.dll"
echo VavCore Debug DLL copy completed.</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;HEADLESS_BUILD;VAVCORE_STATIC_LIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<LanguageStandard>stdcpp20</LanguageStandard>
<AdditionalIncludeDirectories>$(ProjectDir)src;$(ProjectDir)..\..\vavcore\include;$(ProjectDir)..\..\..\..\..\include\libwebm;$(ProjectDir)..\..\..\..\..\include\dav1d;$(ProjectDir)..\..\..\..\..\oss\nvidia-video-codec\Interface;$(CUDA_PATH_V13_0)\include</AdditionalIncludeDirectories>
<PrecompiledHeader>Use</PrecompiledHeader>
<PrecompiledHeaderFile>pch.h</PrecompiledHeaderFile>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(ProjectDir)..\..\vavcore\lib;$(ProjectDir)..\..\..\..\..\lib\libwebm;$(ProjectDir)..\..\..\..\..\lib\dav1d;$(ProjectDir)..\..\..\..\..\lib\amf;$(ProjectDir)..\..\..\..\..\lib\libvpl;$(ProjectDir)..\..\..\..\..\oss\nvidia-video-codec\Lib\x64;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v13.0\lib\x64</AdditionalLibraryDirectories>
<AdditionalDependencies>VavCore.lib;webm.lib;dav1d.lib;amf.lib;vpl.lib;nvcuvid.lib;cuda.lib;mfplat.lib;mf.lib;mfuuid.lib;d3d11.lib;d3d12.lib;dxgi.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
<PostBuildEvent>
<Command>echo Copying VavCore Release DLL for Headless Tests...
copy "$(ProjectDir)..\..\vavcore\lib\VavCore.dll" "$(TargetDir)VavCore.dll"
echo VavCore Release DLL copy completed.</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemGroup>
<!-- VavCore-based Headless Application Files -->
<ClCompile Include="src\VavCoreHeadlessMain.cpp" />
<!-- <ClCompile Include="src\SimpleVavCoreTest.cpp" /> -->
<!-- Original files (disabled for VavCore migration) -->
<!-- <ClCompile Include="src\SimpleHeadlessMain.cpp" /> -->
<!-- <ClCompile Include="src\NVDECTestMain.cpp" /> -->
<!-- <ClCompile Include="src\NVDECDebugTest.cpp" /> -->
<!-- <ClCompile Include="src\SimpleGPUIntegrationTest.cpp" /> -->
<!-- <ClCompile Include="src\GPUVideoTest.cpp" /> -->
<!-- <ClCompile Include="src\HeadlessMain.cpp" /> -->
<!-- <ClCompile Include="src\HeadlessLauncher.cpp" /> -->
<!-- <ClCompile Include="src\HeadlessDecoder.cpp" /> -->
<!-- VavCore-based application only needs VavCore.lib -->
<!-- All decoder and file I/O functionality is provided by VavCore.lib -->
<!-- Original source files removed to avoid conflicts with VavCore API -->
<!-- Phase 3: Simple GPU Renderer (Headless Version) -->
<!-- Additional components can be added here as needed -->
</ItemGroup>
<ItemGroup>
<!-- Headless Headers -->
<ClInclude Include="src\pch.h" />
<ClInclude Include="src\D3D12VideoRenderer_Stub.h" />
<!-- <ClInclude Include="src\HeadlessDecoder.h" /> -->
<!-- VavCore headers only (no need for original source headers) -->
<!-- All necessary types and interfaces are provided through VavCore C API -->
<!-- GPU Rendering Headers -->
<!-- Precompiled Header Creation -->
<ClCompile Include="src\pch.cpp">
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">Create</PrecompiledHeader>
<PrecompiledHeader Condition="'$(Configuration)|$(Platform)'=='Release|x64'">Create</PrecompiledHeader>
<PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">pch.h</PrecompiledHeaderFile>
<PrecompiledHeaderFile Condition="'$(Configuration)|$(Platform)'=='Release|x64'">pch.h</PrecompiledHeaderFile>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\VavCore\VavCore.vcxproj">
<Project>{B8F7E8E0-F8F7-4A8A-9A8A-8A8A8A8A8A8A}</Project>
</ProjectReference>
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
</Project>