MoTekLabVideoEncoder:ThePrivacy-FirstVideoConverterBuiltforLinux

MoTekLab Video Encoder: The Privacy-First Video Converter Built for Linux
Every Linux user eventually faces the same problem: you have a video file that needs converting — maybe it is an MKV that won't play on your TV, a folder of raw footage destined for a project, or a screen recording that needs compression before sharing. The tools that exist are either CLI-only, abandoned, or violate your privacy. vconv exists to solve that, and it does so beautifully.
What Is MoTekLab Video Encoder?
MoTekLab Video Encoder (vconv) is a Linux-native video conversion GUI (with full CLI mode) powered by HandBrakeCLI and built on PyQt6. It handles everything from a one-off MP4 conversion to batch-processing an entire TV show season — all without telemetry, ads, or account creation. The application detects your hardware automatically, recommends optimal encoders, preserves folder structures, and manages subtitles better than any HandBrake GUI wrapper we have seen.
It is open-source under GPLv3, written entirely in Python, and designed to integrate seamlessly into a Linux workflow.
Best Use Cases
Media Archivists & Hoarders
You have a growing collection of video files in mixed formats — some in bloated AVI, others in obscure container formats that modern players choke on. vconv normalizes everything to MP4 or MKV with your choice of codec, preserves your directory tree, and lets you queue up thousands of files overnight.
TV Show & Movie Batch Processing
Downloaded an entire season and need it in a consistent format? Point vconv at the root folder, enable recursive scanning, choose a preset (the tv_show preset is tuned for this), and walk away. vconv mirrors your source folder hierarchy in the output — BreakingBad/Season1/ stays BreakingBad/Season1/ on the other side.
Content Creators on Linux
You recorded tutorials, gameplay, or screencasts in high-bitrate lossless format. Before uploading or archiving, you need sensible compression without sacrificing quality. Use the high_quality preset (RF 22) or tune it yourself. vconv's hardware acceleration detection picks the fastest encoder available on your GPU.
Privacy-Conscious Users
Every file stays on your machine. No telemetry, no analytics, no phone-home. The only network request vconv makes is to check for updates via GitHub's public API — and that is optional, configurable, and cached for 24 hours.
Arabic-Speaking Users & Multilingual Workflows
vconv is fully bilingual (English and Arabic) with RTL layout support in the help browser, UI tooltips, and all documentation. If your video files contain Arabic-named SRT subtitles, vconv automatically handles UTF-8 encoding — something HandBrakeCLI alone gets wrong (it defaults to latin1 for external subtitle files, garbling non-Latin text).
How It Works
GUI Mode
Launch the application and you are greeted by a dark-themed glassmorphism interface with neon accents. Drag in a folder or navigate to it. vconv scans for video files, shows you detailed metadata (codec, resolution, bitrate, frame rate) via ffprobe, and presents every conversion option in a clean, organized panel.
CLI / Headless Mode
For scripting and automation, vconv offers a full command-line interface:
# Batch convert with hardware encoding in one line
vconv -i /path/to/videos -O /output -e nvenc_h265 -q 23 -f mp4 --batch
# Analyze before converting
vconv -i /path/to/videos --analyze
# Full help
vconv --help
Conversion Queue
Add any number of files — they process sequentially with real-time per-file and overall progress bars. The queue persists across application restarts (stored at ~/.config/vconv/queue.json). Cancel individual jobs or stop the entire queue; vconv cleans up gracefully every time.
Presets
| Preset | RF Quality | Speed | When to Use | |--------|-----------|-------|-------------| | fast | 27 | Fast | Quick encoding, social media uploads | | balanced | 25 | Medium | Everyday use (default) | | high_quality | 22 | Slow | Important files, YouTube uploads | | archive | 20 | Slow | Long-term preservation | | nvenc_fast | 27 | Very Fast | Quick NVIDIA GPU encoding | | nvenc_balanced | 25 | Fast | Daily NVIDIA use | | nvenc_quality | 22 | Medium | High quality NVIDIA encoding | | tv_show | 24 | Medium | Optimized for TV episodes |
Hardware Acceleration
vconv auto-detects your GPU and recommends the best encoder:
| Encoder | Type | Speed | Best For | |---------|------|-------|----------| | nvenc_h265 | NVIDIA GPU | Very Fast | Fast HEVC | | nvenc_h264 | NVIDIA GPU | Very Fast | Fast H.264, compatibility | | qsv_h265 | Intel GPU | Fast | Low power HEVC | | qsv_h264 | Intel GPU | Fast | Low power H.264 | | amf_h265 | AMD GPU | Fast | AMD HEVC | | amf_h264 | AMD GPU | Fast | AMD H.264 | | x265 | CPU | Medium-High | Best compression | | x264 | CPU | Medium | Maximum compatibility | | libsvtav1 | CPU | Slow | Future-proof AV1 |
Subtitle Handling
vconv's subtitle support exceeds any other HandBrakeCLI GUI wrapper:
- Embedded subtitle passthrough with
--all-subtitles - External SRT, ASS, and SSA import with per-file language tagging
- Burn-in (hardcode) subtitles into the output
- Automatic UTF-8 encoding fixes Arabic and non-Latin text that HandBrakeCLI garbles by default
Architecture
vconv is a complete PyQt6 re-architecture — migrated from PySimpleGUI (which was abandoned and had critical Linux threading bugs). The threading model uses dedicated QThread workers for HandBrakeCLI subprocess management with signal/slot patterns for thread-safe UI updates. No freezes, no crashes, just responsive progress.
The project structure reflects clean separation of concerns:
vconv/
├── vconv.py # Entry point
├── core/ # Converter, encoder detection, analyzer, queue
├── ui/ # PyQt6 main window, help browser
├── utils/ # Config, i18n, logging, tools
├── docs/ # User guide, future plan
├── presets/ # Preset JSON files
└── locales/ # Arabic/English translation files
Getting Started
Installation
# Debian/Ubuntu — system package
sudo dpkg -i vconv_9.2.0_all.deb
sudo apt install -f
# Any distro — AppImage (portable)
chmod +x vconv-9.2.0-x86_64.AppImage
./vconv-9.2.0-x86_64.AppImage
# From source
git clone https://github.com/motaz-hefny/MoTekLab-vconv.git
cd MoTekLab-vconv
pip install PyQt6 markdown
python3 vconv.py --gui
Quick Start
# Launch GUI
vconv --gui
# Batch convert with hardware acceleration
vconv -i /videos -e nvenc_h265 -q 23 -f mp4 --batch
# Analyze media files
vconv -i /path/to/videos --analyze
Prerequisites
sudo apt-get install handbrake-cli ffmpeg # Required for conversion + analysis
pip install PyQt6 markdown # GUI framework
Roadmap
Community-requested features on the horizon include parallel batch processing (multiple files simultaneously), more preset options, enhanced audio track management, and a flatpak distribution. The MoTekLab Video Encoder is an active project — contributions, issues, and feature requests are welcome on GitHub.
Download MoTekLab Video Encoder (vconv) from GitHub Releases or the MotekLab Downloads page. Free, open-source, private, and built for Linux.
Motaz Hefny
Founder of MotekLab | Senior Identity & Security Engineer
Motaz is a Senior Engineer specializing in Identity, Authentication, and Cloud Security for the enterprise tech industry. As the Founder of MotekLab, he bridges human intelligence with AI, building privacy-first tools like Fahhim to empower creators worldwide.
Discussions (0)
Join the Conversation
Sign in with your Google account to share your insights with the community.
More from the Journal
Introducing MoTekLab Proxy Suite: The Ultimate Privacy and Web Scraping Powerhouse
Take control of your web traffic with MoTekLab Proxy Suite. A free, professional-grade tool for proxy management, secure tunneling, and advanced web scraping—designed for privacy-conscious users and developers alike.
Keep reading Product LaunchIntroducing MD Converter: A Privacy-First, Multilingual Bridge Between Markdown and RichText
Experience the freedom of private, powerful document conversion. MD Converter is a standalone tool designed to handle bidirectional conversion between Markdown and RichText with native RTL support.
Keep reading