A modern desktop client for Emby & Jellyfin media servers
Emby & Jellyfin 媒体服务器的现代桌面客户端
- 🎬 Browse and manage your Emby / Jellyfin media library
▶️ Built-in video player powered by libmpv- 🌗 Dark and Light theme support
- 🌐 Internationalization support (Chinese / English)
- 🔍 Media search with history
- 📺 TV series and movies media types
- ⚡ Asynchronous operations with C++20 coroutines (QCoro)
- 🪟 Custom window frame with native look (QWindowKit)
| Platform | Status |
|---|---|
| Windows 10/11 x64 | ✅ Supported |
| Linux | 🚧 Planned |
| macOS | 🚧 Planned |
- Emby / Jellyfin media library browsing
- Built-in video player (libmpv)
- Dark / Light theme
- Internationalization (Chinese / English)
- Media search with history
- TV series & movies support
- Server administration dashboard
- Playlist support (add/remove items)
- Media identification & metadata refresh
- Metadata and image editing
- Linux platform support
- macOS platform support
This is a personal hobby project, developed out of interest. Contributions and feedback are welcome!
| Component | Technology |
|---|---|
| Framework | Qt 6.x (Widgets) |
| Language | C++20 |
| Video Player | libmpv |
| Async | QCoro (C++20 Coroutines for Qt) |
| Logging | spdlog |
| Window Kit | QWindowKit |
| Build System | CMake |
- Qt 6.x (with Widgets, Core, Network, Concurrent, OpenGLWidgets, LinguistTools, WebSockets)
- CMake ≥ 3.16
- C++20 compatible compiler (MSVC 2022 recommended)
- libmpv development files (see below)
- Git (for cloning submodules)
git clone --recursive https://github.com/AlanHJ/qEmby.git
cd qEmbyDownload the libmpv development package and place it in libs/libmpv/ with the following structure:
libs/libmpv/
├── bin/
│ └── libmpv-2.dll
├── include/
│ └── mpv/
│ ├── client.h
│ └── render.h (etc.)
└── lib/
└── libmpv.dll.a
You can get libmpv from:
- shinchiro/mpv-winbuild-cmake (Windows builds)
- mpv-player/mpv (build from source)
cmake -B build -DCMAKE_PREFIX_PATH="/path/to/Qt6/lib/cmake"
cmake --build build --config ReleaseTip: On Windows with MSVC, you can also open the project in Qt Creator or Visual Studio with CMake support.
qEmby/
├── CMakeLists.txt # Root CMake configuration
├── libs/
│ ├── libmpv/ # libmpv SDK (not tracked, see Build section)
│ └── qwindowkit/ # QWindowKit (git submodule)
└── src/
├── qEmbyCore/ # Core library (API, models, services)
│ ├── api/ # Emby/Jellyfin API client
│ ├── config/ # Configuration management
│ ├── models/ # Data models
│ └── services/ # Business logic services
└── qEmbyApp/ # Desktop application
├── components/ # Reusable UI components
├── managers/ # Application managers
├── resources/ # Icons, themes, translations
├── utils/ # Utility classes
└── views/ # Application views
This project is licensed under the MIT License.
- Qt — Application framework (LGPL v3)
- mpv — Media player engine (LGPL v2.1+)
- QWindowKit — Custom window frame (Apache-2.0)
- QCoro — C++20 Coroutines for Qt (MIT)
- spdlog — Fast logging library (MIT)
- 🎬 浏览和管理你的 Emby / Jellyfin 媒体库
▶️ 内置 libmpv 驱动的视频播放器- 🌗 深色 / 浅色主题切换
- 🌐 国际化支持(中文 / 英文)
- 🔍 支持搜索历史的媒体搜索
- 📺 当前支持电视剧、电影媒体类型
- ⚡ 基于 C++20 协程的异步操作(QCoro)
- 🪟 原生风格的自定义窗口边框(QWindowKit)
| 平台 | 状态 |
|---|---|
| Windows 10/11 x64 | ✅ 已适配 |
| Linux | 🚧 计划中 |
| macOS | 🚧 计划中 |
- Emby / Jellyfin 媒体库浏览
- 内置视频播放器(libmpv)
- 深色 / 浅色主题
- 国际化支持(中文 / 英文)
- 媒体搜索与搜索历史
- 电视剧、电影支持
- 服务器管理仪表盘
- 支持添加到播放列表和从播放列表中移除
- 支持识别来更新元数据
- 支持修改元数据和图片
- Linux 平台适配
- macOS 平台适配
本项目为个人兴趣开发,欢迎贡献和反馈!
| 组件 | 技术 |
|---|---|
| 框架 | Qt 6.x (Widgets) |
| 语言 | C++20 |
| 视频播放 | libmpv |
| 异步 | QCoro (Qt C++20 协程) |
| 日志 | spdlog |
| 窗口框架 | QWindowKit |
| 构建系统 | CMake |
- Qt 6.x(包含 Widgets、Core、Network、Concurrent、OpenGLWidgets、LinguistTools、WebSockets 模块)
- CMake ≥ 3.16
- 支持 C++20 的编译器(推荐 MSVC 2022)
- libmpv 开发文件(见下方说明)
- Git(用于克隆子模块)
git clone --recursive https://github.com/AlanHJ/qEmby.git
cd qEmby下载 libmpv 开发包,并放置到 libs/libmpv/ 目录下,结构如下:
libs/libmpv/
├── bin/
│ └── libmpv-2.dll
├── include/
│ └── mpv/
│ ├── client.h
│ └── render.h (等)
└── lib/
└── libmpv.dll.a
libmpv 获取方式:
- shinchiro/mpv-winbuild-cmake(Windows 预编译版本)
- mpv-player/mpv(从源码编译)
cmake -B build -DCMAKE_PREFIX_PATH="/path/to/Qt6/lib/cmake"
cmake --build build --config Release提示: 在 Windows 上使用 MSVC 时,也可以直接在 Qt Creator 或 Visual Studio 中打开 CMake 项目。
qEmby/
├── CMakeLists.txt # 根 CMake 配置
├── libs/
│ ├── libmpv/ # libmpv SDK(未纳入版本控制,见构建指南)
│ └── qwindowkit/ # QWindowKit(git 子模块)
└── src/
├── qEmbyCore/ # 核心库(API、模型、服务)
│ ├── api/ # Emby/Jellyfin API 客户端
│ ├── config/ # 配置管理
│ ├── models/ # 数据模型
│ └── services/ # 业务逻辑服务
└── qEmbyApp/ # 桌面应用
├── components/ # 可复用 UI 组件
├── managers/ # 应用管理器
├── resources/ # 图标、主题、翻译
├── utils/ # 工具类
└── views/ # 应用视图
本项目基于 MIT 许可证 开源。
- Qt — 应用框架 (LGPL v3)
- mpv — 媒体播放引擎 (LGPL v2.1+)
- QWindowKit — 自定义窗口框架 (Apache-2.0)
- QCoro — Qt C++20 协程库 (MIT)
- spdlog — 高性能日志库 (MIT)



