Media Fetch AIA is a Windows desktop downloader built on yt-dlp and gallery-dl, focused on practical media download workflows for YouTube, Instagram, Threads, and Naver Blog. It provides a local GUI, queue-based downloads, history, duplicate handling, thumbnails, subtitles, and Windows URL protocol integration.
- Download media from YouTube, Instagram, Threads, Naver Blog, and other yt-dlp supported URLs.
- Choose video or audio mode, resolution, and subtitle options.
- Queue multiple downloads and monitor progress from the desktop UI.
- Keep local download history with thumbnails and quick file access.
- Handle duplicate files with ask, auto-rename, overwrite, or skip policies.
- Use yt-dlp first, with gallery-dl fallback support for Instagram workflows.
- Register the Windows URL protocol
yg-download://for quick app handoff.
- Windows
- Python 3.12 for source runs
- ffmpeg available on PATH for the best video merge/conversion support
Install Python dependencies:
python -m pip install -r requirements.txtpython main.pyThe app stores settings and history under:
%USERPROFILE%\.media_fetch_aia
Older settings from %USERPROFILE%\.new_youtube_downloader are copied into the new app folder when available.
The default download folder is:
%USERPROFILE%\Downloads\Media Fetch AIA
Compiled Windows builds should be distributed through GitHub Releases, not committed to the repository.
The packaged app uses a PyInstaller one-dir layout. When building locally, keep the executable and its _internal folder together.
Check syntax:
python -m py_compile gui.py downloader.py main.pyBuild a release bundle:
powershell -ExecutionPolicy Bypass -File .\build_versioned.ps1Build without bumping VERSION:
powershell -ExecutionPolicy Bypass -File .\build_versioned.ps1 -NoBumpSee docs/BUILD_AND_RELEASE.md for the full local build flow.
- Usage Guide
- Build and Release
- FAQ
- Contributing
- Security Policy
- Changelog
- Codex Application Summary
- GitHub About Recommendation
- Instagram downloads may require browser cookies depending on the target content.
- Threads URLs are supplemented with internal media metadata when yt-dlp does not support the URL directly.
- Naver Blog videos are resolved from blog page video metadata when possible.
This project is intended only for media that the user owns, has permission to download, or is legally allowed to archive. It does not bypass DRM, paywalls, login restrictions, authentication, or platform access controls.
Users are responsible for complying with each platform's terms of service and applicable laws.
This project is licensed under the MIT License. See LICENSE.

