Desktop video player for local video courses built with Python, PyQt6 and libmpv (Windows). Features a hierarchical course library with progress tracking, favorites, tags, and fuzzy search. Includes Picture-in-Picture mode, interactive subtitle translation with word-click lookup and offline cache, dual subtitle tracks, AI noise reduction, compressor, video zoom, visual bookmarks (markers), course completion statistics, FFmpeg-powered timeline thumbnail previews, and Windows taskbar integration.
SP Video Courses Player is a desktop application built for people who learn from downloaded video courses. Instead of hunting through folders in a file manager, you get a clean hierarchical library where every course remembers exactly where you left off, how much you've watched, and what's still ahead.
Play your videos with Picture-in-Picture mode so you can take notes while watching, and instant thumbnail previews as you hover over the timeline. Click on any word in the subtitles to get an instant translation, synonyms, and pronunciation audio right inside the player, with repeated lookups loading instantly. Professional audio tools (AI noise reduction, compressor, de-esser) help when lecture recordings aren't studio-quality. Visual bookmarks with screenshots let you mark and revisit key moments without scrubbing through the whole video.
- Course Library — Hierarchical tree with colored nesting lines, natural sort, Favorites, Tags (multi-tag OR filter), and fuzzy search with EN/RU transliteration
- Progress Tracking — Resumes from where you stopped, color-coded watched/in-progress/unwatched states, auto-advance to next video, bulk "Mark as Watched / Reset Progress"
- Detailed Statistics — Per-folder completion percentage, total/watched/remaining duration, course stats dialog
- Advanced Playback — Picture-in-Picture (PiP), fullscreen, zoom & pan, video rotation (90° steps), frame step, screenshot to clipboard
- Timeline Preview — Hover over the seekbar to instantly see a video thumbnail; jump to any percentage of the video with number keys
- Professional Audio — AI Noise Reduction, Compressor, De-esser, Mono mix, Sync Delay; dual audio track with independent volume
- Subtitle & Translation — Primary + secondary subtitle tracks displayed simultaneously, independent color/size settings, "show secondary on hover" option
- Interactive Translation — Click any subtitle word for instant translation, synonyms, and pronunciation audio; offline cache for instant repeat lookups; full-phrase translation via button or
Alt + ↑ - Subtitle Navigation — Jump between subtitle phrases, replay the current one, or translate it — all with dedicated hotkeys
- Speed Control — Playback speed 0.5×–3.0× with pitch correction
- Smart Markers — Visual gallery with screenshots, 12 custom colors, timeline dots, edit/delete from gallery or seekbar right-click
- Tags & Bulk Operations — Create color-coded tags, assign to multiple items at once, filter library by any combination of tags
- Keyboard Shortcuts — All hotkeys work in both English and Russian keyboard layouts; media keys (Play/Pause, Next/Prev) work even when the app is in the background
- Windows Integration — Taskbar progress bar, thumbnail toolbar buttons (Prev, -10s, Play/Pause, +10s, Next), Always on Top toggle
- PureRef Integration — Badge button on each folder to open a linked
.purreference file; color-coded status dot (missing/exists/running) - Auto-Update — Checks GitHub Releases on startup and updates with one click; FFmpeg and libmpv auto-download on first run
- Modern UI — Dark theme with full QSS styling, OSD notifications, High DPI / fractional scaling support, collapsible library panel (
Ctrl+L)
- Add Library Paths: Go to
Library → Settingsand add folders containing your video courses - Scan Library: Click
Library → Scanto index your videos
- Download the latest installer (
SP_Video_Courses_Player_Setup_vX.Y.Z.exe) from the Releases page - Run the executable to install the player on your system
- Download the latest portable archive (
SP_Video_Courses_Player_vX.Y.Z.zip) from the Releases page - Extract the archive to your desired location
- Run
SP Video Courses Player.exe
Option 3: Run from Source
-
Clone the repository:
git clone https://github.com/yourusername/SPVideoCoursesPlayer.git cd SPVideoCoursesPlayer -
Install dependencies:
pip install -r requirements.txt
Dependencies:
PyQt6 python-mpv comtypes mutagen pyinstaller (for building) -
Run the application:
python main.py
- Close SP Video Courses Player completely
- Download the latest portable
.ziparchive from the Releases page - Extract the archive into the application folder with file replacement
Note: Your personal data is preserved during the update —
settings.inicontains your application settings, and thedata/folder stores the database, viewing progress, bookmarks, and cache. These files are not included in the release archive and will not be overwritten.
The application will automatically download these components on first run. If the automatic download fails, you can download them manually and place them in the resources/bin/ directory:
- libmpv-2.dll (Download from shinchiro or zhongfly) - MPV video playback library. Look for
mpv-dev-x86_64-*.7zand extract the DLL. - FFmpeg & FFprobe (Download Essentials) - For video analysis and thumbnail generation. Extract
ffmpeg.exeandffprobe.exefrom thebinfolder of the archive.
Placement: Place all components into the bin directory. The path depends on how you run the application:
The folder structure should look like this (for EXE version):
SP Video Courses Player/
├── SP Video Courses Player.exe
└── _internal/
└── resources/
└── bin/
├── libmpv-2.dll
├── ffmpeg.exe
└── ffprobe.exe
To use the PureRef integration feature for managing reference images alongside your video courses:
- Download and Install PureRef from https://www.pureref.com/download.php
- Default Path: If installed to the default location (
C:\Program Files\PureRef\PureRef.exe), the application will detect it automatically - Custom Path: If installed elsewhere, go to
Library → Settings → PureRefsection and browse to yourPureRef.exelocation - Filename: You can customize the reference filename (default:
reference.pur) in the same settings section
Once configured, you'll see PureRef badges on folder items in your library, allowing quick access to reference files.
- PyQt6 - GUI framework
- libmpv - Video playback engine
- FFmpeg - Video processing & thumbnails
- RNNoise (Xiph.Org) - AI noise reduction model
- Lucide - Icon toolkit
SP Video Courses Player — это десктопное приложение, созданное специально для тех, кто учится по скачанным видеокурсам. Вместо того чтобы искать папки в проводнике, вы получаете удобную древовидную библиотеку, где для каждого курса запоминается прогресс: где вы остановились, сколько уже посмотрели и сколько еще осталось.
Смотрите видео в режиме «Картинка-в-картинке» (PiP), чтобы делать заметки во время просмотра, и пользуйтесь мгновенным предпросмотром кадров при наведении на шкалу времени. Кликайте на любое слово в субтитрах для мгновенного перевода, просмотра синонимов и прослушивания произношения прямо в плеере, причем ранее переведенные слова будут открываться моментально. Профессиональные инструменты для работы со звуком (активное шумоподавление, компрессор, де-эссер) помогут, если лекция записана с фоновым шумом. Визуальные закладки со скриншотами позволяют отмечать и быстро находить ключевые моменты в один клик.
- Библиотека курсов — древовидная структура с цветными линиями вложенности, естественной сортировкой, Избранным, тегами (фильтрация по нескольким тегам) и нечетким поиском с автоматической транслитерацией EN/RU.
- Отслеживание прогресса — сохранение позиции воспроизведения, цветовая индикация статуса просмотра (просмотрено/в процессе/новое), автоматический переход к следующему видео, массовая отметка просмотренного или сброс прогресса.
- Детальная статистика — процент завершения для каждой папки, общее, просмотренное и оставшееся время, а также отдельное окно статистики курса.
- Продвинутое воспроизведение — режим «Картинка-в-картинке» (PiP), полноэкранный режим, масштабирование и панорамирование видео, поворот кадра на 90 градусов, покадровый шаг и копирование скриншота в буфер обмена.
- Предпросмотр на шкале времени — мгновенное отображение кадра при наведении курсора на таймлайн; быстрый переход к нужному проценту видео с помощью цифровых клавиш.
- Профессиональный звук — интеллектуальное шумоподавление, компрессор, де-эссер, моно-микс и настройка задержки синхронизации; поддержка второй аудиодорожки с независимой регулировкой громкости.
- Субтитры и перевод — одновременное отображение двух дорожек субтитров с независимой настройкой цвета и размера, опция показа вторых субтитров только при наведении мыши.
- Интерактивный перевод — перевод любого слова в субтитрах по клику с показом синонимов и озвучкой; кеширование для мгновенного повторного перевода; перевод всей фразы кнопкой или горячими клавишами.
- Навигация по субтитрам — быстрый переход между фразами, повтор текущей фразы или перевод — все с помощью удобных горячих клавиш.
- Управление скоростью — изменение скорости воспроизведения от 0.5x до 3.0x с сохранением естественного тона голоса.
- Умные закладки — визуальная галерея со скриншотами, 12 цветов для меток, точки закладок на шкале времени, редактирование и удаление прямо из галереи или по клику правой кнопкой мыши на таймлайне.
- Теги и массовые операции — создание цветных тегов, присвоение их нескольким элементам сразу, фильтрация библиотеки по любым комбинациям тегов.
- Горячие клавиши — управление работает как на английской, так и на русской раскладке клавиатуры; поддержка глобальных медиа-клавиш (Play/Pause, Next/Prev) даже когда окно приложения свернуто.
- Интеграция с Windows — отображение прогресса на панели задач, управление воспроизведением кнопками на эскизе панели задач (назад, -10 сек, воспроизведение/пауза, +10 сек, вперед), закрепление окна поверх других окон.
- Интеграция с PureRef — кнопка-значок на папках для быстрого открытия связанного файла референсов
.purс цветовой индикацией статуса файла (отсутствует, существует, запущен). - Автоматическое обновление — проверка новых версий на GitHub при запуске и обновление в один клик; автоматическая загрузка FFmpeg и библиотек плеера при первом запуске.
- Современный интерфейс — темная тема с полной QSS-стилизацией, всплывающие уведомления на экране (OSD), поддержка High DPI и дробного масштабирования, быстрое скрытие боковой панели библиотеки.
- Добавьте пути:
Библиотека → Настройки— укажите папки с курсами - Сканирование:
Библиотека → Сканировать— индексация файлов
- Скачайте последний установщик (
SP_Video_Courses_Player_Setup_vX.Y.Z.exe) со страницы Releases - Запустите файл установки для инсталляции плеера в систему
- Скачайте последний архив портативной версии (
SP_Video_Courses_Player_vX.Y.Z.zip) со страницы Releases - Распакуйте архив в удобное место
- Запустите
SP Video Courses Player.exe
Вариант 3: Запуск из исходников
-
Клонируйте репозиторий:
git clone https://github.com/yourusername/SPVideoCoursesPlayer.git cd SPVideoCoursesPlayer -
Установите зависимости:
pip install -r requirements.txt
Зависимости:
PyQt6 python-mpv comtypes mutagen pyinstaller (for building) -
Запустите приложение:
python main.py
- Закройте SP Video Courses Player полностью
- Скачайте последний портативный
.zipархив со страницы Releases - Распакуйте архив в папку приложения с заменой файлов
Примечание: Ваши личные данные сохранятся при обновлении —
settings.iniсодержит настройки приложения, а папкаdata/хранит базу данных, прогресс просмотра, закладки и кеш. Эти файлы не входят в архив релиза и не будут перезаписаны.
Приложение автоматически загрузит эти компоненты при первом запуске. Если автоматическая загрузка не удалась, вы можете скачать их вручную и поместить в директорию resources/bin/:
- libmpv-2.dll (Скачать от shinchiro или от zhongfly) — библиотека воспроизведения видео MPV. Ищите
mpv-dev-x86_64-*.7zи извлеките DLL. - FFmpeg и FFprobe (Скачать Essentials) — для анализа видео и генерации миниатюр. Извлеките
ffmpeg.exeиffprobe.exeиз папкиbinархива.
Путь: Поместите все компоненты в папку bin. Путь зависит от способа запуска приложения:
Структура папок должна выглядеть так (для EXE версии):
SP Video Courses Player/
├── SP Video Courses Player.exe
└── _internal/
└── resources/
└── bin/
├── libmpv-2.dll
├── ffmpeg.exe
└── ffprobe.exe
Для использования интеграции с PureRef для управления референсами рядом с видеокурсами:
- Скачайте и установите PureRef с https://www.pureref.com/download.php
- Путь по умолчанию: Если установлен в стандартное расположение (
C:\Program Files\PureRef\PureRef.exe), приложение обнаружит его автоматически - Другой путь: Если установлен в другое место, перейдите в
Библиотека → Настройки → PureRefи укажите путь кPureRef.exe - Имя файла: Вы можете настроить имя файла референсов (по умолчанию:
reference.pur) в той же секции настроек
После настройки вы увидите значки PureRef на папках в библиотеке, позволяющие быстро открывать файлы референсов.
- PyQt6 - Фреймворк для графического интерфейса
- libmpv - Движок воспроизведения видео
- FFmpeg - Обработка видео и создание миниатюр
- RNNoise (Xiph.Org) - AI модель шумоподавления
- Lucide - Набор иконок
Created for video course enthusiasts

