9660cdc21c
Deploy / deploy (push) Successful in 3m23s
Worker 1.7.0 (preview.highQuality, default on) now, after the AE render: - encodes a High quality MP4 from the delivery MOV (full-res H.264 High, CRF 14 capped at 100 Mbps) -> Version.hqFileUrl - uploads the MOV itself -> Version.highResKey/Filename/Size Both best-effort (the preview never fails over them), with a lease keep-alive during the long encode/uploads; the export timeline records what was attached. Player: HQ switch when a High quality source exists; keeps frame, play state, speed and zoom, remembered per browser, falls back to Standard if the file won't load. ProRes itself stays download-only (browser support). Downloads: the client portal's High Res button serves the version's ProRes (client-code filename), falling back to the shot's manual file; staff get a ProRes button on the review page. Housekeeping (lib/render-pipeline/high-res.ts): HQ MP4 + ProRes are kept while a version is latest, client-shared, approved or younger than preview.highResRetentionDays (14); otherwise deleted from storage. Runs per task after finalize and hourly from the reaper; deleting a version or a reslate removes its files. The Standard MP4 is never touched. Also: ProRes/Handles top-bar buttons go icon-only below lg so they don't overlap the version selector. 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.7.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>
|