Skip to content

Releases: OpenSportsLab/VideoAnnotationTool

VideoAnnotationTool V1.1.4.1

11 Mar 01:13
bc1b7e0

Choose a tag to compare

  • Modified apply_action_filter to make Hand Labelled and Smart Labelled filters inclusive rather than mutually exclusive.
  • Added real-time filter refreshing and refactored logic for batch confirmation, undo/redo, and robust confidence parsing.
  • Added logic to reset smart annotation UI components in the right panel within the _clear_workspace method.
  • Inserted filter refresh calls in refresh_ui_after_undo_redo to ensure the left list syncs immediately after undo/redo.
  • Fixed key mismatch in batch undo logic by changing old_batch to old_data to match the history stack.
  • Corrected undo key names and updated batch results to pass rich dictionaries with confidence instead of plain strings.
  • Added descriptive "Start:" and "End:" labels before the batch inference selection comboboxes in the UI.
  • Fix Save/Export button state to properly recognize confirmed smart annotations in Classification mode.

VideoAnnotationTool V1.1.4

09 Mar 12:23
eefb3fb

Choose a tag to compare

  • Implemented dynamic label mapping in config.yaml to remove hardcoded class dependencies.
  • Fixed cross-loading bugs; eliminated the need to start from an empty JSON; fixed task-name validation errors.
  • Implemented dual-track export (Hand/Smart labels); refined schema to ensure standard action_classification output.
  • Implemented "hard-root" logic; eliminated redundant dataset copying by referencing source paths directly.
  • Introduced a compact tabbed interface (Hand/Smart); optimized vertical spacing and implemented dynamic font scaling.
  • Developed independent Smart Annotation confirmation; added a 4-state filter (All/Hand/Smart/None).
  • Expanded the Undo/Redo system to support batch operations and AI inference tasks.

Video Annotation Tool

05 Mar 22:36
fdc389e

Choose a tag to compare

Update from "SoccernetPro" to “Video Annotation Tool”

  • Update release.yml
  • Update release.yml
  • Update ci.yml
  • Update welcome_widget.py
  • Update viewer.py
  • Update README.md
  • Delete .DS_Store
  • Update README.md
  • Update README.md
  • Update README.md
  • Update README.md
  • Update deploy_docs.yml
  • Update release.yml
  • Update ci.yml
  • Update README.md
  • Update welcome_widget.py
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT04.json
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT03.json
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT02.1.json
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT02-2.json

V1.1.2.2

02 Mar 11:50
8c5b58e

Choose a tag to compare

  • Update app_state.py
  • Update history_manager.py
  • Update editor.py
  • Update inference_manager.py
  • Update inference_manager.py
  • Update main.py
  • Update release.yml
  • Update ci.yml
  • Update requirements.txt
  • Update inference_manager.py
  • Update inference_manager.py
  • Update ci.yml
  • Update release.yml
  • Update ci.yml
  • Update requirements.txt
  • Update release.yml
  • Update ci.yml
  • Update requirements.txt
  • Update config.yaml
  • Update release.yml

SoccernetPro_Smart_Annotation_Tool

25 Feb 17:11
7e05fae

Choose a tag to compare

  • Update inference_manager.py
  • Update main.py
  • Update release.yml
  • Update ci.yml
  • Update requirements.txt
  • Update inference_manager.py
  • Update inference_manager.py
  • Update ci.yml
  • Update release.yml
  • Update ci.yml
  • Update requirements.txt
  • Update release.yml
  • Update ci.yml
  • Update requirements.txt
  • Update config.yaml
  • Update release.yml
  • Update deploy_docs.yml
  • Update ci.yml
  • Update requirements.txt
  • Update ci.yml

SoccernetPro_Annotation_Tool

25 Feb 06:44
3256847

Choose a tag to compare

  • Update welcome_widget.py
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT04.json
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT03.json
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT02.1.json
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT02-2.json
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT01.1.json
  • Delete test_data/invalid_json/invalid_classification_json/IMPORT01-2.json
  • Upload invalid JSON of classification
  • Update style.qss
  • Update dynamic_widgets.py
  • Update gui_overview.md
  • Upload screenshots of main UI pages
  • Create README.md
  • Delete docs/assets/localization-UI.png
  • Delete docs/assets/classification-UI.png
  • Update loc_file_manager.py
  • Update dense_file_manager.py
  • Update ci.yml
  • Update release.yml
  • Update ci.yml

V1.1.1

16 Feb 11:46
a178952

Choose a tag to compare

  • Delete annotation_tool/ui/description/media_player/preview.py
  • Update README.md
  • Update README.md of UI/common
  • Upload invalid test JSON of dense description
  • Create README.md
  • Add files via upload
  • Create README.md
  • implemented strict cross-modal JSON validation in Description and Dense-Description with detailed error reporting, preserved global and item-level metadata during I/O, and resolved UI synchronization issues regarding hierarchical clip structures and annotation status indicators.
  • Update router.py
  • Delete annotation_tool/controllers/classification/annotation_manager.py
  • Delete annotation_tool/controllers/classification/navigation_manager.py
  • Update style.qss
  • Update desc_input_widget.py
  • Update init.py
  • Update release.yml
  • Update release.yml
  • Update ci.yml
  • Update release.yml
  • Update release.yml
  • Delete annotation_tool/README_old.md

V1.1.0

12 Feb 02:01
15d6204

Choose a tag to compare

  • Update style.qss
  • Update desc_input_widget.py
  • Update init.py
  • Update release.yml
  • Update release.yml
  • Update ci.yml
  • Update release.yml
  • Update release.yml
  • Delete annotation_tool/README_old.md
  • Merge pull request #4 from OpenSportsLab/sync-from-feb8-20260210
  • Sync annotation_tool updates from Feb8 (Move the video play to public UI, Implement the dense description, finish reconstruction)
  • Create the control of dense description
  • Create UI of dense description
  • Create README.md
  • Create README.md for dense_description
  • Create README.md of dense_description
  • Update README.md
  • Update README.md
  • Update README.md
  • Update annotation_tool , Add description Tool and replace viewer.py

SoccerNetProAnalyzer_v1.0.7

06 Jan 08:51
f93a4b1

Choose a tag to compare

  • Update release.yml
  • Add .exe file for Windows and Linux

SoccerNetProAnalyzer_v1.0.6

03 Jan 17:22
999577e

Choose a tag to compare

Release Notes - 2026-01-03

The first released version in 2026! Happy new year!

Documentation work and automatic flow

  • I set up an MkDocs-based online documentation site generated from the docs/ directory and deployed automatically to GitHub Pages using GitHub Actions.
  • I also configured cross-platform CI workflows to automatically build standalone GUI binaries for Linux, Windows, and macOS on each push or release.

New Features

  • Context-Aware Keyboard Shortcuts: Added global keyboard shortcuts (e.g., Space for Play/Pause, Ctrl+S for Save, Arrows for Seeking) that automatically dispatch commands to the active mode (Classification or Localization).
  • Streamlined Spotting Workflow: Updated the "Add new label" logic in Localization mode. The system now pauses playback, captures the current timestamp, creates the label, spots the event, and resumes playback automatically.

Bug Fixes

  • Classification Data Export: Fixed a critical bug where saving/exporting a Classification project resulted in an empty data list. Annotations are now correctly serialized.
  • Relative Path Resolution: Solved "Video not found" errors upon reloading projects. Paths are now calculated relative to the JSON file's location during save and load operations.
  • Startup Crash: Fixed an AttributeError crash ("CenterPanel object has no attribute media_preview") that occurred when loading a Classification project due to incorrect widget referencing.
  • UI Consistency:
    • Restored the advanced Tab/Grid layout for the Localization Right Panel to match the original design specifications.
    • Corrected the style of the "Clear All" button in the Localization Left Panel to match standard button styling.

Improvements

  • Auto-Play on Load: Classification projects now automatically select and play the first video clip upon loading.
  • Non-Intrusive Notifications: Replaced modal "OK" dialogs with a 5-second temporary toast message when successfully loading projects or switching modes, improving user flow.
  • Button Label Clarity: Renamed the label creation button to "+ Add new label at current time" to accurately reflect its dual functionality (Create + Spot).