483db65eb3
Deploy / deploy (push) Successful in 6m23s
Shot.fps existed, the lookup API returned it, and one button honoured it — Set Start Timecode — while the shot builder ignored it entirely. Comps were created at 24 and every plate conformed to 24. DH2 is a 25 fps show. Its plates carry framesPerSecond 25/1, so comps built at 24 conform every plate to the wrong speed and compute every frame-from-timecode sum against the wrong rate. The builder now takes the rate from the shot record, which is the show's delivery rate and therefore the authority; a plate's own rate is whatever happens to be on disk. Import Renders follows the comp it imports into, and Import EXR follows the shot. Validation gains plate_fps, comparing the render against the timing plate. timecode_fps only compares the render to its manifest and both come from the comp, so a shot built at the wrong rate agrees with itself and passes; the plate is the independent witness. It is a WARN, never a FAIL: sampling DH2 found one plate at 50 fps against a 25 fps show, a deliberate over-crank, so a whole-number multiple is reported as exactly that and anything else as a probable rate mistake. Note this does not fix the data: all 175 DH2 shots still carry fps 24 from the create-time default and need correcting before their comps are rebuilt. Panel 2.4.0, worker 1.4.0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
45 lines
1.8 KiB
XML
45 lines
1.8 KiB
XML
<Project Sdk="Microsoft.NET.Sdk.Worker">
|
|
|
|
<PropertyGroup>
|
|
<TargetFramework>net8.0</TargetFramework>
|
|
<Nullable>enable</Nullable>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<RootNamespace>VFXReviewWorker</RootNamespace>
|
|
<AssemblyName>VFXReviewWorker</AssemblyName>
|
|
<!-- Single self-contained exe for render nodes: dotnet publish -r win-x64 (see README) -->
|
|
<InvariantGlobalization>true</InvariantGlobalization>
|
|
<!--
|
|
The version is a property of the build, not of the machine it lands on:
|
|
it is stamped here and read back from the assembly at runtime, so a
|
|
workstation cannot report a version it is not actually running. Bump on
|
|
every change that gets published. publish.ps1 appends the git SHA via
|
|
SourceRevisionId, giving "1.1.0+feb1c7b".
|
|
-->
|
|
<Version>1.4.0</Version>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="Microsoft.Extensions.Hosting" Version="8.0.1" />
|
|
<PackageReference Include="Microsoft.Extensions.Hosting.WindowsServices" Version="8.0.1" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<InternalsVisibleTo Include="VFXReviewWorker.Tests" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<!--
|
|
Headless AE build script ships beside the exe. CopyToPublishDirectory is
|
|
set explicitly: CopyToOutputDirectory alone governs the build folder, and
|
|
an incremental publish then leaves the script out of a freshly-cleaned
|
|
publish directory. publish.ps1 copies it again and verifies, because the
|
|
exe cannot run a preview job without it.
|
|
-->
|
|
<Content Include="..\scripts\vfxr_build_preview.jsx" Link="scripts\vfxr_build_preview.jsx">
|
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
|
<CopyToPublishDirectory>Always</CopyToPublishDirectory>
|
|
</Content>
|
|
</ItemGroup>
|
|
|
|
</Project>
|