Spaces:
Running
Running
Drop HRTF claim from audio description (it's stereo, not HRTF)
Browse filesAudio is per-player stereo mixed from each agent's position and
orientation, not true HRTF β adjust README + home page accordingly.
- README.md +2 -2
- src/routes/+page.svelte +1 -1
- src/routes/+page.ts +4 -1
README.md
CHANGED
|
@@ -35,7 +35,7 @@ This dataset turns those demos into rendered, frame-accurate, fully-annotated tr
|
|
| 35 |
- **Behaviour cloning / VLA policies.** `(frame, audio) β action` for vision-conditioned action models.
|
| 36 |
- **Inverse Dynamics Models (IDM).** `(frame_t, frame_{t+k}) β action` to recover actions from unlabelled video β the workhorse for VPT-style pre-training.
|
| 37 |
- **Forward dynamics / world models.** `(frame, action) β frame_{t+1}` with all 10 player POVs of the same world state available as supervision.
|
| 38 |
-
- **Spatial-audio conditioning.**
|
| 39 |
- **Multi-agent training.** All 10 perspectives of the same round are kept aligned tick-for-tick β useful for collaborative policies, opponent modelling, and multi-player world models.
|
| 40 |
|
| 41 |
## What's recorded
|
|
@@ -43,7 +43,7 @@ This dataset turns those demos into rendered, frame-accurate, fully-annotated tr
|
|
| 43 |
For every chunk (β€ 1 minute, one player POV):
|
| 44 |
|
| 45 |
- **Video** β 1280Γ720 @ 32 fps, near-lossless H.264. One stream per player; ten POVs per round all tick-aligned.
|
| 46 |
-
- **Audio** β per-player stereo
|
| 47 |
- **Inputs** β every tick: keyboard state, mouse delta, fire/jump/use, weapon switches.
|
| 48 |
- **World state** β every tick, for all 10 players: position, velocity, view yaw/pitch, camera intrinsics, health, armor, ammo, primary/secondary weapon, alive flag.
|
| 49 |
- **G-buffers (coming soon)** β per-pixel luminance, depth map, and vertex-ID map for self-supervised pretraining and dense prediction heads.
|
|
|
|
| 35 |
- **Behaviour cloning / VLA policies.** `(frame, audio) β action` for vision-conditioned action models.
|
| 36 |
- **Inverse Dynamics Models (IDM).** `(frame_t, frame_{t+k}) β action` to recover actions from unlabelled video β the workhorse for VPT-style pre-training.
|
| 37 |
- **Forward dynamics / world models.** `(frame, action) β frame_{t+1}` with all 10 player POVs of the same world state available as supervision.
|
| 38 |
+
- **Spatial-audio conditioning.** Per-player stereo recorded relative to each agent's position and orientation, so models can learn to localize footsteps, gunfire, and callouts.
|
| 39 |
- **Multi-agent training.** All 10 perspectives of the same round are kept aligned tick-for-tick β useful for collaborative policies, opponent modelling, and multi-player world models.
|
| 40 |
|
| 41 |
## What's recorded
|
|
|
|
| 43 |
For every chunk (β€ 1 minute, one player POV):
|
| 44 |
|
| 45 |
- **Video** β 1280Γ720 @ 32 fps, near-lossless H.264. One stream per player; ten POVs per round all tick-aligned.
|
| 46 |
+
- **Audio** β per-player stereo, mixed from each agent's position and orientation (footsteps, gunfire, callouts).
|
| 47 |
- **Inputs** β every tick: keyboard state, mouse delta, fire/jump/use, weapon switches.
|
| 48 |
- **World state** β every tick, for all 10 players: position, velocity, view yaw/pitch, camera intrinsics, health, armor, ammo, primary/secondary weapon, alive flag.
|
| 49 |
- **G-buffers (coming soon)** β per-pixel luminance, depth map, and vertex-ID map for self-supervised pretraining and dense prediction heads.
|
src/routes/+page.svelte
CHANGED
|
@@ -125,7 +125,7 @@
|
|
| 125 |
{
|
| 126 |
icon: SpeakerHighIcon,
|
| 127 |
title: 'Spatial-audio conditioning',
|
| 128 |
-
body: 'Per-player
|
| 129 |
},
|
| 130 |
{
|
| 131 |
icon: UsersThreeIcon,
|
|
|
|
| 125 |
{
|
| 126 |
icon: SpeakerHighIcon,
|
| 127 |
title: 'Spatial-audio conditioning',
|
| 128 |
+
body: 'Per-player stereo, mixed from each agentβs position and orientation in the world.'
|
| 129 |
},
|
| 130 |
{
|
| 131 |
icon: UsersThreeIcon,
|
src/routes/+page.ts
CHANGED
|
@@ -2,8 +2,11 @@ import type { PageLoad } from './$types';
|
|
| 2 |
import { listMatches, listAllRounds } from '$lib/api/hf';
|
| 3 |
|
| 4 |
export const load: PageLoad = async ({ fetch }) => {
|
|
|
|
|
|
|
|
|
|
| 5 |
const [matches, rounds] = await Promise.all([
|
| 6 |
-
listMatches({ fetch }),
|
| 7 |
listAllRounds({ fetch }).catch(() => [])
|
| 8 |
]);
|
| 9 |
return { matches, rounds };
|
|
|
|
| 2 |
import { listMatches, listAllRounds } from '$lib/api/hf';
|
| 3 |
|
| 4 |
export const load: PageLoad = async ({ fetch }) => {
|
| 5 |
+
// The dataset's index/ shards may be missing during a re-upload window.
|
| 6 |
+
// Tolerate that with empty arrays so the page renders an empty browser
|
| 7 |
+
// instead of crashing with a 500.
|
| 8 |
const [matches, rounds] = await Promise.all([
|
| 9 |
+
listMatches({ fetch }).catch(() => []),
|
| 10 |
listAllRounds({ fetch }).catch(() => [])
|
| 11 |
]);
|
| 12 |
return { matches, rounds };
|