A comprehensive Windows-based suite for automated screen recording and keystroke logging using FFmpeg and Python.
-
Run the main recorder:
cd Scripts python ffmpeg_auto_recorder.py
-
Open the status GUI:
python recorder_status_gui.py
-
Start keylogging:
python keylogger.py
Main monitoring interface showing recording status and controls
Recording settings and parameters configuration
System tray icon and notification settings
Logging preferences and output settings
File paths and directory configuration
System tray icon with status indicators
Recorded video files management and playback
Command-line interface for advanced users
C:\Tools\SilentWitness\
βββ Scripts\ # Core Python scripts
β βββ ffmpeg_auto_recorder.py
β βββ recorder_status_gui.py
β βββ keylogger.py
β βββ ini_editor.py
β βββ startup_manager.py
β βββ manage_startup.bat
β βββ config.ini
βββ ffmpeg\ # FFmpeg distribution (downloaded by setup)
βββ Python\ # Portable Python environment (downloaded by setup)
βββ Recordings\ # Output video files (created by setup)
βββ Logs\ # Application logs (created by setup)
βββ Startup\ # Windows startup shortcuts
β βββ Recorder\
βββ User Guide\ # Documentation
βββ User_Manual_Keylogger_Recorder.md
βββ Screens\ # Application screenshots (8 interface images)
Edit Scripts\config.ini
to customize:
- Recording paths and formats
- Idle detection thresholds
- Logging preferences
- Tray icon settings
- Startup options - Start Menu shortcuts and auto-start configuration
SilentWitness includes powerful startup management features:
- Start Menu Integration - Add shortcuts to Windows Start Menu Programs
- Auto-Start Options - Configure applications to start automatically on login
- Selective Startup - Choose which components start automatically
- User-Specific Setup - Configure startup for specific users
Configure via:
- GUI:
python Scripts\ini_editor.py
(recommended) - Command Line:
python Scripts\startup_manager.py --help
- Quick Access: Double-click
Scripts\manage_startup.bat
- User Manual - Complete setup and usage guide
- Build Instructions - How to set up the portable environment
- πΈ Application Screenshots - Visual guide to all features and interfaces
- π― Features - Detailed feature overview with emojis
- Python 3.12+
- FFmpeg
- See
requirements.txt
for Python packages
# Run this single command in PowerShell:
irm https://raw.githubusercontent.com/GoblinRules/silentwitness/main/install_silentwitness.ps1 | iex
What happens:
- Downloads setup script directly from GitHub
- Executes it automatically
- Downloads and extracts the complete SilentWitness repository
- Downloads and installs FFmpeg and Python 3.12
- Installs all Python dependencies
- Sets up everything in
C:\Tools\SilentWitness\
- No need to clone or download anything manually!
-
Download the repository:
git clone https://github.com/yourusername/silentwitness.git cd silentwitness
-
Run the setup script:
# Double-click setup_silentwitness.bat # OR run from PowerShell: .\setup_silentwitness.ps1
-
The script will automatically:
- Download FFmpeg from official sources
- Download Python 3.12 portable
- Install all required Python packages
- Configure paths and environment
- Create necessary directories
- Install Python 3.12+
- Install FFmpeg from gyan.dev
- Install Python packages:
pip install -r requirements.txt
- Copy files to
C:\Tools\SilentWitness\
- Update paths in
Scripts\config.ini
- π₯ Automated Screen Recording - Start/stop based on user activity with visual status monitoring
- β¨οΈ Keystroke Logging - Natural text capture with timestamps and log management
- π₯οΈ GUI Management - Visual control and monitoring interface (see screenshots above)
- π System Tray Integration - Background operation with status indicators and notifications
- βοΈ Configurable Settings - Easy customization via INI files and GUI editor
- π Real-time Monitoring - Live status updates and recording statistics
- π File Management - Organized recording storage and playback capabilities
This project is licensed under a Custom Non-Commercial License.
- β Personal & Educational Use: Allowed freely
- β Commercial Use: Requires permission and licensing
- π§ Contact: [your-email@domain.com] for commercial inquiries
See LICENSE.md for full terms and conditions.
This tool is designed for legitimate monitoring purposes (documentation, debugging, etc.). Ensure compliance with local laws and privacy regulations.