ArnieRamesh/CounterStrike-1K-720-wds
CounterStrike-1K — 720p WebDataset shards This repo contains the 720p shards of CounterStrike-1K. Use the main repo to browse the manifest, schema, and subsets. Quickstart Start a fresh uv project and add the loader: mkdir cs1k-demo && cd cs1k-demo uv init uv add datasets "counterstrike1k @ git+https://github.com/AnirudhhRamesh/counterstrike1k" Using pip instead mkdir cs1k-demo && cd cs1k-demo python -m venv .venv && source .venv/bin/activate pip install… See the full description on the dataset page: https://huggingface.co/datasets/ArnieRamesh/CounterStrike-1K-720-wds.
CounterStrike-1K — 720p WebDataset shards
This repo contains the 720p shards of CounterStrike-1K. Use the main repo to browse the manifest, schema, and subsets.
Quickstart
Start a fresh uv project and add the loader:
mkdir cs1k-demo && cd cs1k-demo
uv init
uv add datasets "counterstrike1k @ git+https://github.com/AnirudhhRamesh/counterstrike1k"<details> <summary>Using pip instead</summary>
mkdir cs1k-demo && cd cs1k-demo
python -m venv .venv && source .venv/bin/activate
pip install datasets "counterstrike1k @ git+https://github.com/AnirudhhRamesh/counterstrike1k"</details>
from datasets import Video, load_dataset
from counterstrike1k import decode_sample
shards = load_dataset(
"ArnieRamesh/CounterStrike-1K-720-wds", split="train", streaming=True,
).cast_column("mp4", Video(decode=False))
sample = decode_sample(next(iter(shards)))
print(sample["actions"].shape, sample["state"].shape, len(sample["video"]))decode_sample(...) returns:
video: mp4 bytes (H.264 + AAC, 1280×720 @ 32 FPS, synchronized stereo audio)actions: structured numpy array (per-frametick,delta_pitch,delta_yaw, 12-button bitmask)state: structured numpy array (per-frame view, position, weapon, ammo, HP, money, score, …)events: list of sparse round/kill/bomb eventsmetadata: public sample metadata sidecar
Size
- 396 shards, ~1.5 TB total
- One round = 10 synchronized POV samples sharing a
round_id - Splits (in
manifest.parquetfrom the main repo): 1,341.7 / 74.5 / 74.5 POV-hours train/val/test
Filtering by subset
Most users want a smaller training run. Filter the manifest first, then stream only the matching shards:
from datasets import Video, load_dataset
import pandas as pd
from huggingface_hub import hf_hub_download
manifest = pd.read_parquet(hf_hub_download(
"ArnieRamesh/CounterStrike-1K", "manifest.parquet", repo_type="dataset",
))
keys = set(manifest[manifest["split"] == "train"]["sample_key"])
shards = load_dataset(
"ArnieRamesh/CounterStrike-1K-720-wds", split="train", streaming=True,
).cast_column("mp4", Video(decode=False))
for raw in shards:
if raw["__key__"] in keys:
sample = decode_sample(raw)
# ... use sampleLicense & citation
CC BY-NC 4.0. Citation in the main dataset card.
