Video-MAE: Optimized for Qualcomm Devices
Video MAE (Masked Auto Encoder) is a network for doing video classification that uses the ViT (Vision Transformer) backbone.
This is based on the implementation of Video-MAE found here. This repository contains pre-exported model files optimized for Qualcomm® devices. You can use the Qualcomm® AI Hub Models library to export with custom configurations. More details on model performance across various devices, can be found here.
Qualcomm AI Hub Models uses Qualcomm AI Hub Workbench to compile, profile, and evaluate this model. Sign up to run these models on a hosted Qualcomm® device.
Getting Started
There are two ways to deploy this model on your device:
Option 1: Download Pre-Exported Models
Below are pre-exported model assets ready for deployment.
| Runtime | Precision | Chipset | SDK Versions | Download |
|---|---|---|---|---|
| ONNX | float | Universal | QAIRT 2.45, ONNX Runtime 1.27.1 | Download |
| ONNX | w8a16 | Universal | QAIRT 2.45, ONNX Runtime 1.27.1 | Download |
| QNN_DLC | float | Universal | QAIRT 2.45 | Download |
| QNN_DLC | w8a16 | Universal | QAIRT 2.45 | Download |
| TFLITE | float | Universal | QAIRT 2.45 | Download |
For more device-specific assets and performance metrics, visit Video-MAE on Qualcomm® AI Hub.
Option 2: Export with Custom Configurations
Use the Qualcomm® AI Hub Models Python library to compile and export the model with your own:
- Custom weights (e.g., fine-tuned checkpoints)
- Custom input shapes
- Target device and runtime configurations
This option is ideal if you need to customize the model beyond the default configuration provided here.
See our repository for Video-MAE on GitHub for usage instructions.
Model Details
Model Type: Model_use_case.video_classification
Model Stats:
- Input resolution: 224x224
- Model checkpoint: Kinectics-400
- Model size (float): 335 MB
- Number of parameters: 87.7M
Performance Summary
| Model | Runtime | Precision | Chipset | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit |
|---|---|---|---|---|---|---|
| Video-MAE | ONNX | float | Snapdragon® X2 Elite | 464.527 ms | 9 - 9 MB | NPU |
| Video-MAE | ONNX | float | Snapdragon® X Elite | 615.118 ms | 188 - 188 MB | NPU |
| Video-MAE | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 398.964 ms | 1 - 1086 MB | NPU |
| Video-MAE | ONNX | float | Snapdragon® 8 Gen 1 Mobile | 1389.915 ms | 10 - 954 MB | NPU |
| Video-MAE | ONNX | float | Qualcomm® Dragonwing™ IQ-8275 | 558.373 ms | 9 - 22 MB | NPU |
| Video-MAE | ONNX | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 596.743 ms | 0 - 217 MB | NPU |
| Video-MAE | ONNX | float | Qualcomm® QCS8450 | 1389.915 ms | 10 - 954 MB | NPU |
| Video-MAE | ONNX | float | Qualcomm® Dragonwing™ IQ-9075 | 561.03 ms | 9 - 21 MB | NPU |
| Video-MAE | ONNX | float | Qualcomm® Dragonwing™ IQ-X7181 | 615.118 ms | 188 - 188 MB | NPU |
| Video-MAE | ONNX | float | Qualcomm® Dragonwing™ Q-8750 | 379.298 ms | 2 - 790 MB | NPU |
| Video-MAE | ONNX | float | Snapdragon® 8 Elite Mobile | 379.298 ms | 2 - 790 MB | NPU |
| Video-MAE | ONNX | float | Snapdragon® 8 Elite Gen 5 Mobile | 469.389 ms | 4 - 795 MB | NPU |
| Video-MAE | ONNX | w8a16 | Snapdragon® X2 Elite | 329.842 ms | 5 - 5 MB | NPU |
| Video-MAE | ONNX | w8a16 | Snapdragon® X Elite | 491.778 ms | 100 - 100 MB | NPU |
| Video-MAE | ONNX | w8a16 | Snapdragon® 8 Gen 3 Mobile | 369.404 ms | 2 - 1092 MB | NPU |
| Video-MAE | ONNX | w8a16 | Snapdragon® 8 Gen 1 Mobile | 1446.026 ms | 6 - 1156 MB | NPU |
| Video-MAE | ONNX | w8a16 | Qualcomm® Dragonwing™ QCS6490 | 2317.358 ms | 0 - 7 MB | NPU |
| Video-MAE | ONNX | w8a16 | Qualcomm® Dragonwing™ IQ-8275 | 543.863 ms | 1 - 9 MB | NPU |
| Video-MAE | ONNX | w8a16 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 490.668 ms | 0 - 110 MB | NPU |
| Video-MAE | ONNX | w8a16 | Qualcomm® QCS8450 | 1446.026 ms | 6 - 1156 MB | NPU |
| Video-MAE | ONNX | w8a16 | Qualcomm® Dragonwing™ IQ-9075 | 569.515 ms | 0 - 7 MB | NPU |
| Video-MAE | ONNX | w8a16 | Qualcomm® Dragonwing™ IQ-X7181 | 491.778 ms | 100 - 100 MB | NPU |
| Video-MAE | ONNX | w8a16 | Qualcomm® Dragonwing™ Q-7790 | 1079.659 ms | 4 - 1357 MB | NPU |
| Video-MAE | ONNX | w8a16 | Qualcomm® Dragonwing™ Q-8750 | 289.993 ms | 1 - 874 MB | NPU |
| Video-MAE | ONNX | w8a16 | Snapdragon® 8 Elite Mobile | 289.993 ms | 1 - 874 MB | NPU |
| Video-MAE | ONNX | w8a16 | Snapdragon® 8 Elite Gen 5 Mobile | 362.465 ms | 1 - 896 MB | NPU |
| Video-MAE | ONNX | w8a16 | Snapdragon® 7 Gen 4 Mobile | 1079.659 ms | 4 - 1357 MB | NPU |
| Video-MAE | QNN_DLC | float | Snapdragon® X2 Elite | 254.278 ms | 9 - 9 MB | NPU |
| Video-MAE | QNN_DLC | float | Snapdragon® X Elite | 470.333 ms | 9 - 9 MB | NPU |
| Video-MAE | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 382.535 ms | 9 - 986 MB | NPU |
| Video-MAE | QNN_DLC | float | Snapdragon® 8 Gen 1 Mobile | 559.657 ms | 9 - 899 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-8275 | 519.829 ms | 9 - 21 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-8275 | 1125.572 ms | 1 - 678 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 460.174 ms | 9 - 902 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® SA8775P | 480.261 ms | 0 - 678 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® SA8650P | 480.261 ms | 0 - 678 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® SA8255P | 480.261 ms | 0 - 678 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® QCS8450 | 559.657 ms | 9 - 899 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-9075 | 475.947 ms | 9 - 20 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-X7181 | 470.333 ms | 9 - 9 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® Dragonwing™ Q-8750 | 266.98 ms | 9 - 687 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® SA7255P | 1125.572 ms | 1 - 678 MB | NPU |
| Video-MAE | QNN_DLC | float | Qualcomm® SA8295P | 616.052 ms | 1 - 650 MB | NPU |
| Video-MAE | QNN_DLC | float | Snapdragon® 8 Elite Mobile | 266.98 ms | 9 - 687 MB | NPU |
| Video-MAE | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 Mobile | 290.483 ms | 9 - 703 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Snapdragon® X2 Elite | 335.934 ms | 5 - 5 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Snapdragon® 8 Gen 3 Mobile | 374.793 ms | 5 - 1246 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ IQ-8275 | 518.494 ms | 5 - 12 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ IQ-8275 | 980.695 ms | 2 - 833 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 506.112 ms | 5 - 7 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® SA8775P | 514.795 ms | 1 - 797 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® SA8650P | 514.795 ms | 1 - 797 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® SA8255P | 514.795 ms | 1 - 797 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ IQ-9075 | 509.565 ms | 2 - 8 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ Q-6690 | 3488.789 ms | 5 - 1344 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ Q-7790 | 712.528 ms | 5 - 1154 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ Q-8750 | 291.759 ms | 5 - 781 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Qualcomm® SA7255P | 980.695 ms | 2 - 833 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Snapdragon® 8 Elite Mobile | 291.759 ms | 5 - 781 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Snapdragon® 8 Elite Gen 5 Mobile | 334.292 ms | 5 - 809 MB | NPU |
| Video-MAE | QNN_DLC | w8a16 | Snapdragon® 7 Gen 4 Mobile | 712.528 ms | 5 - 1154 MB | NPU |
| Video-MAE | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 122.54 ms | 0 - 971 MB | NPU |
| Video-MAE | TFLITE | float | Snapdragon® 8 Gen 1 Mobile | 267.562 ms | 1 - 935 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® Dragonwing™ IQ-8275 | 184.668 ms | 0 - 208 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® Dragonwing™ IQ-8275 | 469.689 ms | 1 - 682 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 162.658 ms | 0 - 3 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® SA8775P | 181.324 ms | 0 - 710 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® SA8650P | 181.324 ms | 0 - 710 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® SA8255P | 181.324 ms | 0 - 710 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® QCS8450 | 267.562 ms | 1 - 935 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® Dragonwing™ IQ-9075 | 179.46 ms | 0 - 207 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® Dragonwing™ Q-8750 | 90.397 ms | 0 - 685 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® SA7255P | 469.689 ms | 1 - 682 MB | NPU |
| Video-MAE | TFLITE | float | Qualcomm® SA8295P | 238.617 ms | 0 - 649 MB | NPU |
| Video-MAE | TFLITE | float | Snapdragon® 8 Elite Mobile | 90.397 ms | 0 - 685 MB | NPU |
| Video-MAE | TFLITE | float | Snapdragon® 8 Elite Gen 5 Mobile | 63.849 ms | 0 - 728 MB | NPU |
License
- The license for the original implementation of Video-MAE can be found here.
References
- Masked Autoencoders are Data-Efficient Learners for Self-Supervised Video Pre-Training
- Source Model Implementation
Community
- Join our AI Hub Slack community to collaborate, post questions and learn more about on-device AI.
- For questions or feedback please reach out to us.
