Loading repository data…
Loading repository data…
shubhamkarande / repository
MediaStudio – Cross-Platform Media Organizer is a high-performance desktop app for managing images and videos with instant search, smart collections, metadata editing, and duplicate detection. Built with C++17, Qt6, SQLite, and FFmpeg for native speed. Features dark theme, slideshow mode, offline-first storage with no cloud or tracking.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Own your media. Instantly find anything.
A high-performance cross-platform desktop application for organizing images and videos, built with C++17 and Qt6.
Coming soon
# Set environment (adjust paths to your Qt installation)
$env:Path = "C:\Qt\Tools\mingw1310_64\bin;" + $env:Path
# Configure
cmake -S . -B build -G "MinGW Makefiles" -DCMAKE_PREFIX_PATH="C:/Qt/6.10.1/mingw_64"
# Build
cmake --build build -j4
# Run (ensure Qt DLLs are in PATH)
$env:Path = "C:\Qt\6.10.1\mingw_64\bin;" + $env:Path
.\build\MediaStudio.exe
# Configure (use Developer Command Prompt)
cmake -S . -B build -DCMAKE_PREFIX_PATH="C:/Qt/6.10.1/msvc2022_64"
# Build
cmake --build build --config Release
# Run
.\build\Release\MediaStudio.exe
# Configure
cmake -S . -B build -DCMAKE_PREFIX_PATH="/opt/homebrew/opt/qt@6"
# Build
cmake --build build
# Run
./build/MediaStudio.app/Contents/MacOS/MediaStudio
# Install dependencies (Ubuntu/Debian)
sudo apt install qt6-base-dev qt6-multimedia-dev cmake build-essential ffmpeg libexif-dev
# Configure
cmake -S . -B build
# Build
cmake --build build
# Run
./build/MediaStudio
MediaStudio/
├── src/
│ ├── main.cpp # Application entry point
│ ├── core/ # Database, scanning, thumbnails, metadata
│ │ ├── Database.h/cpp
│ │ ├── MediaScanner.h/cpp
│ │ ├── ThumbnailGenerator.h/cpp
│ │ ├── MetadataService.h/cpp
│ │ ├── Settings.h/cpp
│ │ └── DuplicateFinder.h/cpp
│ ├── models/ # Data models
│ │ ├── MediaItem.h/cpp
│ │ ├── Tag.h/cpp
│ │ ├── Collection.h/cpp
│ │ └── *Model.h/cpp # Qt models for views
│ ├── ui/ # UI components
│ │ ├── MainWindow.h/cpp
│ │ ├── MediaGrid.h/cpp
│ │ ├── MediaList.h/cpp
│ │ ├── PreviewPanel.h/cpp
│ │ ├── EditorPanel.h/cpp
│ │ ├── SearchPanel.h/cpp
│ │ ├── CollectionPanel.h/cpp
│ │ ├── SlideshowWindow.h/cpp
│ │ └── DuplicatesDialog.h/cpp
│ └── utils/ # Utilities
│ ├── FileUtils.h/cpp
│ └── ImageUtils.h/cpp
├── resources/
│ ├── MediaStudio.qrc
│ └── styles/dark.qss
├── CMakeLists.txt
├── README.md
└── LICENSE
Ctrl+O)Ctrl+1) or List view (Ctrl+2)Ctrl+FF5 for fullscreen presentation| Shortcut | Action |
|---|---|
Ctrl+O | Add folder |
Ctrl+F | Focus search |
Ctrl+1 | Grid view |
Ctrl+2 | List view |
Ctrl+A | Select all |
Delete | Remove selected |
F5 | Start slideshow |
F11 | Fullscreen |
Ctrl++ | Zoom in |
Ctrl+- | Zoom out |
| Key | Action |
|---|---|
Space | Pause/Resume |
→ / ↓ | Next image |
← / ↑ | Previous image |
Escape | Exit slideshow |
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)This project is licensed under the MIT License - see the LICENSE file for details.
Subham Karande
Made with ❤️ and C++