# TVBench ## Overview TVBench is a temporal video understanding benchmark for evaluating whether multimodal models can reason over dynamic visual events rather than isolated frames. It covers a broad set of video reasoning skills, including action recognition, action counting, temporal localization, action order understanding, egocentric action sequencing, object counting, object shuffling, moving direction recognition, scene transition reasoning, and unexpected action detection. The EvalScope native adapter reads the official per-task JSON annotations from the dataset repository and resolves the corresponding video archives on demand. This keeps the default smoke-test path lightweight while still supporting the full benchmark through `subset_list`. ## Task Description - **Task Type**: Video multiple-choice question answering (MCQ) - **Input**: A video clip or a time-bounded video segment, a natural-language question, and 2-4 answer candidates - **Output**: A single answer option letter selected from the provided candidates - **Default Subset**: `action_count`, selected because it is available as a standard MP4 archive in the public dataset repository - **Supported Subsets**: `action_antonym`, `action_count`, `action_localization`, `action_sequence`, `egocentric_sequence`, `moving_direction`, `object_count`, `object_shuffle`, `scene_transition`, and `unexpected_action` ## Evaluation Notes - Default evaluation uses 0-shot Chain-of-Thought multiple-choice prompting via `MultipleChoiceTemplate.SINGLE_ANSWER_COT`. - Primary metric: Accuracy (`accuracy`). The dataset answer is stored as candidate text and is converted to the corresponding option letter before scoring. - Some subsets provide `start`/`end` fields. The adapter passes these values to `ContentVideo` and also adds a concise segment instruction to the prompt. - Video files are downloaded lazily from subset-specific archives. `egocentric_sequence` uses segmented archives under `video/egocentric_sequence/.zip`. - The `action_antonym` annotations reference AVI files. If the repository media archive is unavailable, configure `extra_params.video_dir` to a local directory containing the AVI files. - The adapter supports local video layouts that are either flat (`video_dir/