Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ATTENTRIX logo

ATTENTRIX

ATTENTRIX is a local research application that turns visible audience cues in a Zoom gallery into glanceable presenter feedback. It tracks each measurable participant separately, estimates four visual states, and summarizes the room as a small set of actions: continue, clarify, or re-engage.

The current public beta is 0.2.0-beta.6. Its frozen inference checkpoint is Live v20 (classroom_v6_signalroom_live_v20) with the participant-relative presenter policy gallery_person_relative_v1 and compute profile primary_hand_1440_q82.

ATTENTRIX estimates visible behavior, not attention, understanding, intent, or emotion as psychological facts. It is a research beta for consented sessions and should not be used for grading, discipline, hiring, surveillance, or other high-stakes decisions.

What It Does

  1. The presenter chooses a Zoom window or a saved MP4/WebM recording.
  2. ATTENTRIX finds visible participant tiles and faces.
  3. Face landmarks, pose, expression, hand, motion, and quality cues are extracted locally.
  4. A packaged random-forest calibrator estimates highly_engaged, following, confused, or attention_drift for each measurable participant.
  5. Participant-relative references and temporal rules reduce camera-position and resting-posture bias.
  6. The presenter sees individual outlines, a room summary, and a synchronized post-session timeline.

Live replay is off by default. When replay is enabled, ATTENTRIX records the selected window locally and includes shared window or tab audio when the source provides it. The presenter can separately opt in to microphone capture so their explanation can be reviewed beside the engagement timeline. Microphone permission is requested only for that explicit choice. Replay audio stays local and is never analyzed by the engagement pipeline.

Try The Windows Beta

Download the installer or portable ZIP from the ATTENTRIX 0.2.0 Beta 6 release.

Before opening a download, compare its SHA-256 value with SHA256SUMS.txt on the release page:

0da9d21e13e0f310898e1aca6dc3d7634222cb7b7da7a1ca6a55b7696fad486c  ATTENTRIX-Setup-0.2.0-beta.6-x64.exe
5481934141d307684294eb78cf0da308cb554eb0958fff9198859975820f13c8  ATTENTRIX-Windows-x64-0.2.0-beta.6.zip

The hash-bound verification evidence records the packaged workflow and Defender checks. This is an unsigned research beta, so Windows may show an unknown-publisher warning.

The Apple Silicon package remains unavailable until physical-device testing, Developer ID signing, notarization, and cross-platform replay checks are complete.

Run From Source

ATTENTRIX currently supports Python 3.12. On Windows PowerShell:

git clone https://github.com/CodingIsCool666/attentrix.git
cd attentrix
py -3.12 -m venv .venv
.\.venv\Scripts\python.exe -m pip install --upgrade pip "setuptools>=83" wheel
.\.venv\Scripts\python.exe -m pip install -e ".[attentrix,dev]"
.\.venv\Scripts\python.exe scripts\setup_attentrix.py
.\.venv\Scripts\python.exe scripts\run_attentrix.py --check-assets
.\.venv\Scripts\python.exe scripts\run_attentrix.py

Open http://127.0.0.1:8010. The guided demo works without Zoom. For a live session, open Zoom in gallery view, choose its application window, frame the participant area, and begin calibration.

Stop ATTENTRIX with Ctrl+C in the terminal. Local application data is stored under the current user's application-data directory; see the privacy guide for retention and deletion instructions.

Evaluate A Recording

From the ATTENTRIX home screen, choose Analyze a recording and select an MP4 or WebM file. Analysis runs in a local worker, so the browser can be minimized or refreshed while ATTENTRIX remains open. The report synchronizes video playback with participant states, confidence, room guidance, and the session timeline.

For a consented live session, enable Save this session locally for replay before starting. This option is off by default. The saved replay includes the selected window video and any shared window or tab audio supplied by the capture source. A second default-off option can add the presenter microphone after browser permission is granted. Both audio sources are retained only for local playback and are never analyzed.

Current Evidence

ATTENTRIX has several evaluation tracks. They answer different questions and must not be combined into one universal accuracy number.

Evaluation What it measures Result Boundary
Three-person frozen Zoom holdout Human-labeled presenter actions Person macro-F1 0.751; room macro-F1 0.851 One eight-minute recording with agreed broad phases
Strongest two-person replay Frozen production stack against individual labels Macro-F1 0.824; accuracy 0.837 One historical holdout
Seven labeled historical sessions Available local replay archive Macro-F1 0.655; accuracy 0.737 Regression evidence with wide session variation
DAiSEE gallery-scale stress Detection and output stability from 1 to 49 visible faces Recall 0.995; state agreement 0.728 at 49 Cross-domain stress, not human-label accuracy
Balanced compute replay Saved inference work without changing outputs 11.41% mean backend reduction; exact output agreement 1.000 Four local sources; not a universal speed guarantee

The broader release decision remains needs_untouched_holdout. Current evidence supports a locally validated research prototype, not universal classroom accuracy. Read the release qualification and pre-paper evidence summary for the full protocol and caveats.

Research Path

The product grew from several connected studies:

Branch Purpose Selected result
RAVDESS audio Actor-disjoint affect and codec-robustness baseline 3-seed macro-F1 0.668 +/- 0.021
DAiSEE video Subject-disjoint engagement and usable-feedback baselines 4-class macro-F1 0.346; binary macro-F1 0.648
CMOSE features Temporal engagement from released multimodal features 4-class macro-F1 0.565; accuracy 0.738
Local classroom sessions Four-state visual calibration and human review Grouped-CV macro-F1 0.748
ATTENTRIX Live v20 Real-time participant-relative presenter feedback Frozen product checkpoint

These values use different targets, units, and test sets. Dataset-level results are research context; they are not interchangeable with ATTENTRIX Zoom performance.

Start with:

Live v21 was intentionally retired and is excluded from the active product evidence.

Repository Layout

src/tavc/          Reusable data, modeling, evaluation, and ATTENTRIX code
configs/           Named experiment configurations
scripts/           Thin training, evaluation, release, and audit commands
tests/             Unit, integration, release, and regression tests
docs/              Selected checkpoints, evidence, privacy, and paper notes
website/           Static promotional and download site
packaging/         Windows and macOS packaging definitions
data/              Dataset instructions and ignored local data locations
results/           Ignored generated metrics, predictions, and figures
runs/              Ignored checkpoints and training logs

Raw datasets, participant recordings, session folders, generated caches, model-training checkpoints, and credentials are not part of the public source snapshot.

Data

Datasets must be obtained under their original terms:

  • RAVDESS for acted audio-visual emotion experiments
  • DAiSEE for video engagement experiments
  • CMOSE released features for multimodal engagement experiments

Place local datasets under data/raw/ and generated features under data_processed/. Both locations are ignored. See data/README.md and dataset notes.

The packaged ATTENTRIX calibrator is intentionally included because the application requires it. Its model card documents provenance, intended use, evaluation boundaries, checksum, and limitations. It contains no video, images, participant names, or per-row training data.

Tests

Run the Python suite:

.\.venv\Scripts\python.exe -m unittest discover -s tests

Run the website checks:

cd website
corepack enable
pnpm install --frozen-lockfile
$env:NEXT_PUBLIC_SITE_URL = "https://www.example.com"
pnpm check
pnpm audit --prod

Verify the frozen ATTENTRIX release state:

.\.venv\Scripts\python.exe scripts\verify_attentrix_release.py

Prepare A Public Source Snapshot

The research workspace has private local history, so it should not be made public by changing its visibility. Build a clean snapshot instead:

.\.venv\Scripts\python.exe scripts\prepare_public_repository.py check
.\.venv\Scripts\python.exe scripts\prepare_public_repository.py history
.\.venv\Scripts\python.exe scripts\prepare_public_repository.py export

check audits the selected current files. history explains why the existing Git history must remain private. export writes a hash-manifested clean tree beside this workspace. Follow the public repository release guide before creating or updating a public GitHub repository.

Contributing

Please read CONTRIBUTING.md before opening a pull request. Reports involving security or private data should follow SECURITY.md, not a public issue. All contributions must preserve the distinction between trained models, calibrators, deterministic rules, temporal smoothing, and interface behavior.

Citation

Citation metadata is in CITATION.cff. Until a paper or archival release receives a stable identifier, cite the repository version and the exact ATTENTRIX release used in an evaluation.

License

Repository code is prepared for release under the Apache License 2.0. Third-party models, fonts, photographs, datasets, and collaborator snapshots remain under their own terms; see NOTICE and third-party notices. Publication remains gated on both project contributors confirming the proposed licensing scope.

About

ATTENTRIX public beta downloads, privacy information, and presenter guide.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages