Sample footage

The capture_20180923 companion package: three two-hour recordings of a real landing hill, one per camera. Optional, but the only way to exercise the whole pipeline — motion detection, triggering, merging, encoding, measurement — with no cameras attached.

What it is and why you would want it

Three synchronised recordings from a capture session on 23 September 2018, one from each of the three hill cameras, each two hours long. They are reference input for the application, not output from it — the practice player reads them back into the feed shared memory exactly as if three live cameras were delivering frames, and everything downstream behaves normally.

That makes them useful for:

Entirely optional

VDM installs and runs without this package. It is a separate download precisely because 5.57 GiB has no business in an installer that most operators will run on a venue laptop over a hotel connection.

Specifications

All three files are identical in format and differ only in camera position and byte size. Every value below was read from the containers directly.

PropertyValue
Resolution1920 × 1080
Frame rate60 fps (exactly 60/1)
CodecH.264
ProfileHigh 4:4:4 Predictive
Pixel formatyuv444p
Frame count432,000 frames each
Duration7,200.000000 s — exactly 2 hours each
AudioNone. Zero audio streams.

4:4:4 decode is not universal

These files use the H.264 High 4:4:4 Predictive profile with a yuv444p pixel format — full chroma resolution, not the 4:2:0 that most consumer H.264 uses. Some hardware decoders and lightweight players cannot handle it and will show a black frame or refuse the file. VLC and any recent FFmpeg-based player handle it fine. If a player rejects the footage, this is why; it is not a corrupt download.

File sizes

FileCameraSize in bytes
capture_20180923_0_432000.mp4Feed 0 — top of the landing hill1,997,000,959
capture_20180923_1_432000.mp4Feed 1 — middle, the trigger camera1,993,842,258
capture_20180923_2_432000.mp4Feed 2 — bottom, landing and outrun1,988,170,694
Total5,979,013,911 bytes — 5.57 GiB, or 5.98 GB decimal

The naming convention is capture_<YYYYMMDD>_<cameraIndex>_<frameCount>.mp4, so the date, the feed index and the length are all readable from the filename.

GiB versus GB

5.57 GiB (binary, what Windows Explorer shows) is the same quantity as 5.98 GB (decimal, what download sizes and drive capacities usually quote). If a figure looks inconsistent with one you saw elsewhere, check which unit is meant before concluding a file is truncated.

Package contents

The package is distributed as loose files — no zip, no split archive. Download all six into a single folder.

FilePurpose
capture_20180923_0_432000.mp4
capture_20180923_1_432000.mp4
capture_20180923_2_432000.mp4
The footage itself, one file per camera.
SHA256SUMS.txtSHA-256 checksums in the standard two-space <hash>  <filename> format, LF line endings, no BOM — compatible with GNU sha256sum.
manifest.jsonMachine-readable metadata: package name and version, per-file specifications and SHA-256 hashes, and the total byte count.
Install-SampleFootage.ps1The installer: verifies checksums and copies the footage into place.
README.mdPackage readme, including the download instructions summarised below.

Downloading

The footage is published alongside the software installer at thehansens.com/tournament/vdm/install/. Download all six files into one folder, using either a browser or the command line.

curl.exe -O -C - https://thehansens.com/tournament/vdm/install/capture_20180923_0_432000.mp4
curl.exe -O -C - https://thehansens.com/tournament/vdm/install/capture_20180923_1_432000.mp4
curl.exe -O -C - https://thehansens.com/tournament/vdm/install/capture_20180923_2_432000.mp4
curl.exe -O https://thehansens.com/tournament/vdm/install/SHA256SUMS.txt
curl.exe -O https://thehansens.com/tournament/vdm/install/manifest.json
curl.exe -O https://thehansens.com/tournament/vdm/install/Install-SampleFootage.ps1

Two things about curl on Windows

Always verify after downloading. A truncated 2 GB file is not obviously truncated — it opens, plays, and simply ends early. See Verifying.

Installing

From the folder containing the downloaded files:

powershell -ExecutionPolicy Bypass -File .\Install-SampleFootage.ps1 -SourcePath .
Install-SampleFootage.ps1
ParameterEffect
-SourcePath <path>The folder holding the downloaded files.
-DestinationPath <path>Where to install the footage. Default C:\VDM\CapturedVideos, matching a default VDM install.
-VerifyOnlyCheck checksums without copying anything.
Exit codes
CodeMeaning
0Everything verified successfully.
1A verification failure or a missing file.
2Fatal — bad arguments, insufficient disk space, or an unreadable source.

Requires 6.5 GB free on the destination volume

The installer checks free space and aborts before copying anything if the volume is short, exiting with code 2. That headroom is 5.57 GiB of footage plus working room. Note that this is on top of the space VDM itself needs for recordings — see Prerequisites.

Verifying

The simplest check, which also confirms the files landed where they should:

powershell -ExecutionPolicy Bypass -File .\Install-SampleFootage.ps1 -VerifyOnly -DestinationPath C:\VDM\CapturedVideos

To verify by hand with the standard tools instead:

sha256sum -c SHA256SUMS.txt

on Linux or macOS (or shasum -a 256 -c SHA256SUMS.txt), or for a single file on Windows:

Get-FileHash capture_20180923_0_432000.mp4 -Algorithm SHA256

Compare hashes case-insensitively

Get-FileHash prints the hash in uppercase; SHA256SUMS.txt stores it in lowercase. They match — the case difference is cosmetic. Do not conclude a file is corrupt because the two strings do not compare equal as text.

A quick sanity check that does not require hashing 6 GB: compare the byte sizes against the table above. A partial download will nearly always show a different size.

Using it with VDM

The footage is played into the pipeline by practice_player.exe, which reads the files and writes frames into the feed shared memory at 60 fps — from everything downstream's point of view, indistinguishable from live cameras.

  1. Launch VDM.exe.
  2. Open Tools → Select Practice Files… and browse to the three installed .mp4 files, assigning each to its matching feed — _0_ to feed 0, _1_ to feed 1, _2_ to feed 2. This writes *practice_video_path[0..2].
  3. Preview tab → Launch Practice. Four processes spawn: practice_player.exe plus three motion.exe.
  4. Watch the title bar. The cap and m counters should climb, and movies commit automatically as jumpers are detected.
  5. Stop All to finish — twice, since the first click in practice mode deliberately leaves the motion processes running.

Full workflow detail is in User guide § practice mode.

These filenames are the legacy default

When *practice_video_path[0..2] is left empty, the practice player falls back to a legacy file-naming convention, and capture_20180923_<F>_432000.mp4 is that convention's default set — which is why these particular files carry these particular names. Setting the paths explicitly through Tools → Select Practice Files… is the reliable approach and works regardless of where you installed them. verify on target hardware — confirm on your install whether the fallback finds them at C:\VDM\CapturedVideos or expects them beside the executables.

What to expect

Each file is a full two hours, so a run through the whole thing is a long session. For a quick install check you do not need to watch it out: confirm that frames flow, that motion fires, that a clip is committed to the archive directory, and that it opens in the viewer with grid lines drawn.

Bear in mind that grid-line calibration in your settings.txt is tied to a specific camera rig. Distances measured against this 2018 footage will only be meaningful if the calibration in your configuration corresponds to the rig that recorded it. For an install check what matters is that the pipeline runs, not that the numbers are correct.

Problems

SymptomLikely causeFix
Installer exits with code 2 immediately Bad arguments, an unreadable source path, or less than 6.5 GB free on the destination volume. Read the message it prints. Check free space on the destination volume first — that is the usual cause.
Installer exits with code 1 A checksum mismatch or a missing file — most often a download that was interrupted. Re-download the offending file with curl.exe -O -C - to resume, then verify again.
Hashes look different but the file seems fine Get-FileHash outputs uppercase; the checksum file stores lowercase. Compare case-insensitively, or use -VerifyOnly, which handles this.
A player shows a black frame or refuses the file The player cannot decode H.264 High 4:4:4 Predictive. Use VLC or another FFmpeg-based player. The file is not corrupt — verify its checksum if you want to be certain.
Practice mode starts but no frames flow The practice file paths are not set, or point somewhere the files are not. Set them explicitly via Tools → Select Practice Files… rather than relying on the legacy naming fallback.
Frames flow but no movies are ever committed Motion detection is disabled, or the motion regions do not match this footage's framing. Check feed_motion_on[N]=1, then see Troubleshooting § motion detection. Remember the regions in your configuration were set for your cameras, not for this 2018 rig.
The download keeps failing part-way Connection dropouts on a 2 GB transfer. Re-run the same curl.exe -O -C - command; it resumes from where it stopped rather than restarting.