All Projects β†’ firedm β†’ Firedm

firedm / Firedm

Licence: other
python open source (Internet Download Manager) with multi-connections, high speed engine, based on python, LibCurl, and youtube_dl https://github.com/firedm/FireDM

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Firedm

Youtube Downloader
πŸ‘ A much faster alternative to youtube-dl built for PHP applications. Working as of 2021-02-27
Stars: ✭ 474 (-51.48%)
Mutual labels:  youtube-dl, youtube-downloader, youtube
PowerShell-Youtube-dl
A PowerShell script interface used to operate the youtube-dl command line program.
Stars: ✭ 64 (-93.45%)
Mutual labels:  download, youtube-dl, youtube-downloader
Downline
Free cross-platform desktop app to download videos and music from YouTube and many other sites
Stars: ✭ 146 (-85.06%)
Mutual labels:  download, youtube-dl, youtube
Youtube Dl Android
πŸ“¦πŸ“¦Video downloader for Android - Download videos from Youtube, Facebook, Twitter, Instagram, Dailymotion, Vimeo and more than 1000 other sites
Stars: ✭ 322 (-67.04%)
Mutual labels:  youtube-dl, youtube-downloader, youtube
Youtub.ly Android
An android app to download πŸ“Ή videos and songs from youtube to phone internal storage
Stars: ✭ 17 (-98.26%)
Mutual labels:  youtube-dl, youtube-downloader, youtube
Candy
🍭 Cross-platform YouTube-downloader with playlist and channel support as well as build-in audio / video converter.
Stars: ✭ 229 (-76.56%)
Mutual labels:  youtube-dl, youtube-downloader, youtube
Youtube Downloader For Macos
Simple menu bar app to download YouTube movies on your Mac
Stars: ✭ 185 (-81.06%)
Mutual labels:  download, youtube-dl, youtube-downloader
Downzemall
DownZemAll! is a download manager for Windows, MacOS and Linux
Stars: ✭ 157 (-83.93%)
Mutual labels:  download, youtube-dl, youtube-downloader
mpv-youtube-download
A userscript for MPV that allows you to download youtube audio and video with one key press πŸ’Ύ
Stars: ✭ 16 (-98.36%)
Mutual labels:  youtube, youtube-dl, youtube-downloader
ytqck.github.io
YouTube quick ⚑ Search and Download Music for Free.
Stars: ✭ 18 (-98.16%)
Mutual labels:  youtube, youtube-dl, youtube-downloader
Youtube Music
YouTube Music Desktop App bundled with custom plugins (and built-in ad blocker / downloader)
Stars: ✭ 376 (-61.51%)
Mutual labels:  youtube-dl, youtube-downloader, youtube
ypc
Convert text/spotify/deezer albums/playlists to youtube urls and audio/video files.
Stars: ✭ 17 (-98.26%)
Mutual labels:  youtube, youtube-dl, youtube-downloader
Yturl
YouTube videos on the command line
Stars: ✭ 218 (-77.69%)
Mutual labels:  youtube-dl, youtube-downloader, youtube
Alltube
Web GUI for youtube-dl
Stars: ✭ 1,925 (+97.03%)
Mutual labels:  download, youtube-dl, youtube
Youtube Mp3 Downloader
Extract music from YouTube videos
Stars: ✭ 187 (-80.86%)
Mutual labels:  youtube-dl, youtube-downloader, youtube
YouTube-Downloader
An easy-to-use, YouTube video downloader, without pesky ads or malware.
Stars: ✭ 22 (-97.75%)
Mutual labels:  youtube, youtube-dl, youtube-downloader
Pantheon
The fastest YouTube downloader.
Stars: ✭ 32 (-96.72%)
Mutual labels:  youtube, download, youtube-dl
Smd
Spotify Music Downloader
Stars: ✭ 822 (-15.86%)
Mutual labels:  youtube-dl, youtube-downloader, youtube
Netflix To Srt
Rip, extract and convert subtitles to .srt closed captions from .xml/dfxp/ttml and .vtt/WebVTT (e.g. Netflix, YouTube)
Stars: ✭ 387 (-60.39%)
Mutual labels:  youtube-dl, youtube
Spotiflyer
Spotify/Gaana/Youtube Music Downloader For Android!
Stars: ✭ 231 (-76.36%)
Mutual labels:  youtube-downloader, youtube

Downloads Downloads

GitHub All Releases

GitHub issues - GitHub closed issues

FireDM is a python open source (Internet Download Manager) with multi-connections, high speed engine, it downloads general files and videos from youtube and tons of other streaming websites .
Developed in Python, based on "LibCurl", and "youtube_dl".

Download Latest version!!

screenshot


Features:

  • High download speeds "based on LibCurl" - See Speed test of: aria2 vs FireDM
  • Multi-connection downloading "Multithreading"
  • Automatic file segmentation.
  • Automatic refresh for dead links.
  • Resume uncompleted downloads.
  • Support for Youtube, and a lot of stream websites "using youtube-dl to fetch info and libcurl to download media".
  • download entire video playlist or selected videos.
  • download fragmented video streams, and encrypted/nonencrypted HLS media streams.
  • watch videos while downloading* "some videos will have no audio until finish downloading".
  • download video subtitles.
  • write video metadata to downloaded files.
  • check for application updates.
  • Scheduling downloads
  • Re-using existing connection to remote server.
  • Clipboard Monitor.
  • proxy support (http, https, socks4, and socks5).
  • user/pass authentication, referee link, use cookies, video thumbnail, subtitles.
  • MD5 and SHA256 checksums.
  • user can control a lot of options:
    • select and edit themes.
    • set proxy.
    • Speed limit.
    • Max. Concurrent downloads.
    • Max. connections per download.

How to use FireDM:

Refer to user guide at https://github.com/firedm/FireDM/blob/master/docs/user_guide.md


Portable FireDM versions:

Run FireDM without any installation (recommended)

  • Windows portable version (Download!):
    available in .zip format.
    unzip, and run from FireDM.exe, no installation required.

  • Linux portable version (Download!):
    available in .AppImage format.
    download file, then mark it as executable, and run it, no installation required, tested on ubuntu, mint, and manjaro.
    note: ffmpeg is not included and must be installed separately if not exist

    mark file as executable by right clicking the file> Properties> Permissions> Allow executing file as a program, or from terminal by chmod +x FireDM_xxx.AppImage

    To check for ffmpeg use this command:

     which ffmpeg
    
     # expected output if installed
     /usr/bin/ffmpeg
    

    if ffmpeg is missing you can install it by sudo apt install ffmpeg on debian based or sudo pacman -S ffmpeg on Arch based distros.


Manually installing FireDM:

  • Linux:

    • UBUNTU:

      1- verify you have minimum python version 3.6+

        python3
      

      2- install pip:

        sudo apt-install python3-pip
      

      3- install dependencies:

        sudo apt install ffmpeg libcurl4-openssl-dev libssl-dev python3-pip python3-pil python3-pil.imagetk python3-tk python3-dbus
      

      4- install fonts

        sudo apt install fonts-symbola fonts-linuxlibertine fonts-inconsolata fonts-emojione
      

      5- install firedm

        python3 -m pip install firedm --user --upgrade --no-cache
         
        or if you run into a problem
        sudo python3 -m pip install firedm --upgrade --no-cache
      
  • PyPi:
    on windows replace "python3" with "python" in below commands

    python3 -m pip install firedm --user --upgrade --no-cache or sudo python3 -m pip install firedm --upgrade --no-cache

    then you can run application from Terminal by:
    python3 -m firedm

    or just
    firedm an executable "i.e. firedm.exe on windows" will be located at "python/scripts", if it doesn't work append "python/scripts" folder to PATH.

  • run from github source code:
    FireDM is a python app. so, it can run on any platform that can run python, To run from source, you have to have a python installed, "supported python versions is 3.6, 3.7, and 3.8", then download or clone this repository, and run FireDM.py (it will install the other required python packages automatically if missing) if FireDM failed to install required packages, you should install it manually, refer to "Dependencies" section below.

  • Build FireDM yourself:

    • get the source code from github: (recommended for latest updated version, also shallow clone is preferred)
      git clone --depth 1 https://github.com/firedm/FireDM.git

    • or get the source code from PyPi:
      navigate to https://pypi.org/project/firedm/#files and download a tar ball, example file name "FireDM-2020.3.22.tar.gz", then extract it

    • open your terminal or command prompt and navigate to firedm folder then type below command
      python3 setup.py install --user

    • run FireDM from Terminal by typing:
      python3 -m firedm or just firedm

Known Issues:

  • Linux X-server will raise an error if some fonts are missing especially emoji fonts, for more info refer to issue #200.

  • Mac - Tkinter, as mentioned in "python.org" the Apple-supplied Tcl/Tk 8.5 has serious bugs that can cause application crashes. If you wish to use Tkinter, do not use the Apple-supplied Pythons. Instead, install and use a newer version of Python from python.org or a third-party distributor that supplies or links with a newer version of Tcl/Tk.
    refer to issue #113


Dependencies:

below are the requirements to run from source:

  • Python 3.6+: tested with python 3.6 on windows, and 3.7, 3.8 on linux

  • tkinter

  • ffmpeg : for merging audio with youtube DASH videos "it will be installed automatically on windows"

  • Fonts: (Linux X-server will raise an error if some fonts are missing especially emoji fonts, below are the recommended fonts to be installed, for more info refer to issue #200.)

    ttf-linux-libertine 
    ttf-inconsolata 
    ttf-emojione
    ttf-symbola
    noto-fonts
    

Required python packages:

  • pycurl: is a Python interface to libcurl / curl as our download engine,
  • youtube_dl: famous youtube downloader, limited use for meta information extraction only but videos are downloaded using pycurl
  • yt_dlp: a fork of youtube-dlc which is inturn a fork of youtube-dl
  • certifi: required by 'pycurl' for validating the trustworthiness of SSL certificates,
  • plyer: for systray area notification.
  • awesometkinter: for application gui.
  • pillow: imaging library for python
  • pystray: for systray icon

Note: FireDM will do its best to install missing packages automatically using pip3 once you run it.

you can install required packages manually using:

pip install -r requirements.txt

more screenshots

screenshot Main_tab sett_tab

See more ...


what is the benefit of open source, compared to closed-source/Proprietary software if both are free?

As said, "if the product is free, then you are the product", most free closed-source software collect data about you, some of them are toxic and plant trojans and spy-wares in your system, with open source, nothing hidden, and source code exposed to thousands of programmers, no one can play dirty games.

Need to mention, this project is never made to compete with other download managers, it is just a "hopefully useful" addition.


note for pycurl:

for windows users: normal pip install i.e python -m pip install pycurl might fail on windows because you need to build libcurl on your system first which is a headache. your best choice if pip fail is to download exe file for pycurl from its official download link, find the file that match your windows system and python version installed on your system, last checked on 12-06-2020, found available files for almost all Python versions upto version 3.8

example: if you have python 3.6 installed on windows 32bit, you should download "pycurl-7.43.0.2.win32-py3.6.exe" file and install it, another example: if you have python 3.7 running on windows 64 bit, you should choose and download "pycurl-7.43.0.3.win-amd64-py3.7.exe" file

other download options include a wheel, zip file, or even a windows installer

for linux users: there is no issues, since most linux distros have curl preinstalled, so pycurl will link with libcurl library to get built with no issues, checked with python versions 3.6, 3.7, and 3.8 working with no problems.

note for Youtube-dl:

youtube website changes frequently, if this application failed to retrieve video/playlist data you should update youtube-dl module thru FireDM setting tab or manually by

python -m pip install youtube_dl --upgrade



Versions change log:

ChangeLog.txt is included in source code.




How to contribute to this project:

1- by testing the application and opening new issue for bug reporting, feature request, or suggestions.
2- check developer guidelines.
3- check todo list.
4- check open issues, see if you can help.
5- fork this repo and pull request




Some recent articles/reviews on this project*:


contributors:

Please check contributors.md for a list of contributors

Feedback:

your feedback is most welcomed by filling a new issue
or email to: [email protected]


Author:
Mahmoud Elshahat
2019-2021

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].