requirements.txt
This commit is contained in:
parent
048c182b57
commit
259e701952
151
requirements.txt
Normal file
151
requirements.txt
Normal file
@ -0,0 +1,151 @@
|
||||
# DJI Telemetry Viewer - Python Dependencies
|
||||
# This file specifies all Python packages required to run the DJI Telemetry Overlay Viewer
|
||||
# Install all dependencies using: pip install -r requirements.txt
|
||||
#
|
||||
# It's recommended to use a virtual environment:
|
||||
# python -m venv dji_viewer_env
|
||||
# source dji_viewer_env/bin/activate # On Windows: dji_viewer_env\Scripts\activate
|
||||
# pip install --upgrade pip
|
||||
# pip install -r requirements.txt
|
||||
|
||||
# =============================================================================
|
||||
# CORE GUI FRAMEWORK
|
||||
# =============================================================================
|
||||
|
||||
# PyQt5 - Main GUI framework for cross-platform desktop application
|
||||
# Provides widgets, layouts, event handling, and window management
|
||||
# Version 5.15.0+ required for stability and modern features
|
||||
PyQt5>=5.15.0,<5.16.0
|
||||
|
||||
# PyQtWebEngine - Web engine integration for PyQt5 applications
|
||||
# Required for displaying interactive maps using HTML/JavaScript (Folium/Leaflet)
|
||||
# Provides QWebEngineView widget for embedding web content
|
||||
PyQtWebEngine>=5.15.0,<5.16.0
|
||||
|
||||
# =============================================================================
|
||||
# MEDIA PLAYBACK
|
||||
# =============================================================================
|
||||
|
||||
# python-vlc - Python bindings for VLC media player
|
||||
# Handles video playback, seeking, volume control, and media information
|
||||
# Requires VLC media player to be installed on the system
|
||||
# Version 3.0.12118+ includes important bug fixes for subtitle handling
|
||||
python-vlc>=3.0.12118
|
||||
|
||||
# =============================================================================
|
||||
# MAPPING AND VISUALIZATION
|
||||
# =============================================================================
|
||||
|
||||
# folium - Python library for creating interactive maps
|
||||
# Generates HTML/JavaScript maps using Leaflet.js
|
||||
# Used for displaying flight paths and real-time drone position
|
||||
# Version 0.12.0+ includes performance improvements and new map styles
|
||||
folium>=0.12.0,<0.15.0
|
||||
|
||||
# =============================================================================
|
||||
# DATA PROCESSING
|
||||
# =============================================================================
|
||||
|
||||
# srt - Library for parsing and manipulating SubRip subtitle files
|
||||
# DJI drones embed telemetry data in SRT format within MP4 files
|
||||
# This library extracts and parses GPS coordinates, altitude, speed, etc.
|
||||
# Version 3.5.0+ provides better error handling and Unicode support
|
||||
srt>=3.5.0,<4.0.0
|
||||
|
||||
# =============================================================================
|
||||
# OPTIONAL DEPENDENCIES (Recommended)
|
||||
# =============================================================================
|
||||
|
||||
# requests - HTTP library for downloading map tiles and updates
|
||||
# Used by folium for fetching map data from various tile servers
|
||||
# Version 2.25.0+ includes security improvements
|
||||
requests>=2.25.0,<3.0.0
|
||||
|
||||
# Pillow - Python Imaging Library for image processing
|
||||
# Used for handling video thumbnails and image exports
|
||||
# Version 8.0.0+ includes security fixes and performance improvements
|
||||
Pillow>=8.0.0,<11.0.0
|
||||
|
||||
# numpy - Numerical computing library
|
||||
# Used for efficient telemetry data processing and calculations
|
||||
# Required by folium for coordinate transformations
|
||||
numpy>=1.19.0,<2.0.0
|
||||
|
||||
# =============================================================================
|
||||
# DEVELOPMENT DEPENDENCIES (Optional - for contributors)
|
||||
# =============================================================================
|
||||
# Uncomment these lines if you're developing or contributing to the project
|
||||
# Install with: pip install -r requirements.txt -r requirements-dev.txt
|
||||
|
||||
# pytest>=6.0.0 # Testing framework
|
||||
# pytest-qt>=4.0.0 # PyQt-specific testing utilities
|
||||
# black>=21.0.0 # Code formatter
|
||||
# flake8>=3.8.0 # Linting tool
|
||||
# mypy>=0.800 # Type checking
|
||||
# pre-commit>=2.10.0 # Git hooks for code quality
|
||||
|
||||
# =============================================================================
|
||||
# SYSTEM-SPECIFIC NOTES
|
||||
# =============================================================================
|
||||
|
||||
# WINDOWS USERS:
|
||||
# - Install Microsoft Visual C++ Redistributable if you encounter DLL errors
|
||||
# - Ensure FFmpeg is in your system PATH
|
||||
# - Some antivirus software may flag python-vlc - add exceptions if needed
|
||||
|
||||
# MACOS USERS:
|
||||
# - Install Xcode command line tools: xcode-select --install
|
||||
# - Use Homebrew for FFmpeg: brew install ffmpeg
|
||||
# - You may need to install Rosetta 2 on Apple Silicon Macs
|
||||
|
||||
# LINUX USERS:
|
||||
# - Install system packages: sudo apt install python3-dev python3-pip
|
||||
# - Install FFmpeg: sudo apt install ffmpeg
|
||||
# - For audio support: sudo apt install pulseaudio-dev
|
||||
# - Qt dependencies: sudo apt install qt5-default
|
||||
|
||||
# =============================================================================
|
||||
# TROUBLESHOOTING COMMON INSTALLATION ISSUES
|
||||
# =============================================================================
|
||||
|
||||
# Issue: "Failed building wheel for PyQt5"
|
||||
# Solution: Install pre-compiled binaries
|
||||
# pip install --only-binary=all PyQt5 PyQtWebEngine
|
||||
|
||||
# Issue: "Microsoft Visual C++ 14.0 is required" (Windows)
|
||||
# Solution: Install Microsoft C++ Build Tools
|
||||
# Download from: https://visualstudio.microsoft.com/visual-cpp-build-tools/
|
||||
|
||||
# Issue: "vlc.dll not found" (Windows)
|
||||
# Solution: Install VLC media player system-wide
|
||||
# Download from: https://www.videolan.org/vlc/
|
||||
|
||||
# Issue: "No module named '_ctypes'" (Linux)
|
||||
# Solution: Install libffi development package
|
||||
# sudo apt install libffi-dev
|
||||
|
||||
# Issue: Segmentation fault on startup (Linux)
|
||||
# Solution: Install additional Qt libraries
|
||||
# sudo apt install python3-pyqt5.qtwebengine
|
||||
|
||||
# =============================================================================
|
||||
# VERSION COMPATIBILITY MATRIX
|
||||
# =============================================================================
|
||||
# Python 3.7: All packages supported
|
||||
# Python 3.8: All packages supported (recommended)
|
||||
# Python 3.9: All packages supported (recommended)
|
||||
# Python 3.10: All packages supported
|
||||
# Python 3.11: Most packages supported (some may need --pre flag)
|
||||
# Python 3.12: Limited support (check individual packages)
|
||||
|
||||
# =============================================================================
|
||||
# INSTALLATION VERIFICATION
|
||||
# =============================================================================
|
||||
# After installation, verify all dependencies with:
|
||||
# python -c "import PyQt5, vlc, folium, srt, requests, PIL, numpy; print('✓ All dependencies installed successfully!')"
|
||||
|
||||
# Test GUI availability:
|
||||
# python -c "from PyQt5.QtWidgets import QApplication; app = QApplication([]); print('✓ GUI framework ready')"
|
||||
|
||||
# Test VLC integration:
|
||||
# python -c "import vlc; instance = vlc.Instance(); print('✓ VLC integration working')"
|
Loading…
x
Reference in New Issue
Block a user