GitHub – PulseBeat02/yt-media-storage: https://www.youtube.com/watch?v=l03Os5uwWmk Skip to content You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert PulseBeat02 / yt-media-storage Public Notifications You must be signed in to change notification settings Fork 31 Star 193 https://www.youtube.com/watch?v=l03Os5uwWmk www.youtube.com/watch?v=l03Os5uwWmk License GPL-3.0 license 193 stars 31 forks Branches Tags Activity Star Notifications You must be signed in to change notification settings PulseBeat02/yt-media-storage master Branches Tags Go to file Code Open more actions menu Folders and files Name Name Last commit message Last commit date Latest commit History 36 Commits 36 Commits src src .gitignore .gitignore CMakeLists.txt CMakeLists.txt HEADER HEADER LICENSE.txt LICENSE.txt README.md README.md View all files Repository files navigation Media Storage Stores files onto YouTube by encoding them into lossless video and decoding them back to the original file. Supports both a command-line interface and a graphical user interface. Features File Encoding/Decoding : Encode any file into a lossless video (FFV1/MKV) and decode it back Fountain Codes : Uses Wirehair fountain codes for redundancy and repair Optional Encryption : Encrypt files with a password using libsodium (XChaCha20-Poly1305) Batch Processing : Queue multiple files for batch encoding (GUI) Progress Tracking : Real-time progress bars and status updates (GUI) CI/CD Pipeline Visit my CI/CD pipeline , and click “Login as Guest”. Visit the yt-media-storage project, click on the latest passing build, and click “Artifacts” to download the latest build artifacts for both the CLI and GUI. You may need to install some shared libraries (FFmpeg, Qt6, libsodium) to run the executables. Requirements CMake 3.22 C++23 compiler FFmpeg libsodium OpenMP Qt6 (Core and Widgets) Installation Ubuntu/Debian sudo apt update sudo apt install cmake build-essential qt6-base-dev \ libavcodec-dev libavformat-dev libavutil-dev libswscale-dev libswresample-dev \ libsodium-dev libomp-dev Fedora/CentOS sudo dnf install cmake gcc-c++ qt6-qtbase-devel ffmpeg-devel libsodium-devel libgomp Arch Linux sudo pacman -S cmake qt6-base ffmpeg libsodium openmp macOS (Homebrew) brew install cmake qt@6 ffmpeg libsodium libomp Windows (vcpkg) vcpkg install ffmpeg libsodium openmp qt6 Or install Qt6 separately via the Qt Online Installer and FFmpeg/libsodium via vcpkg. Building mkdir build cmake -B build cmake –build build This produces two executables: media_storage — Command-line interface media_storage_gui — Graphical user interface Usage CLI ./media_storage encode –input
Source: Hacker News | Original Link