download options - panuozzo77/StreamingCommunity GitHub Wiki

Download Options

This document explains the various download options available in StreamingCommunity, including different download methods, quality settings, and language preferences.

Download Methods

StreamingCommunity supports multiple download methods depending on the content source:

1. HLS (HTTP Live Streaming) Download

This is the most common method used for streaming sites that provide M3U8 playlists.

Features:

  • Multi-threaded segment downloading
  • Audio track selection
  • Subtitle selection
  • Resolution selection
  • Post-processing options

Configuration:

2. Direct MP4 Download

Used for sites that provide direct MP4 file links.

Features:

  • Progress tracking
  • Resume capability
  • Custom headers and referrer support

Configuration:

  • No specific configuration section; uses general request settings

3. Torrent Download

Used for downloading content via torrent magnet links.

Features:

  • Built-in torrent client
  • qBittorrent integration
  • Download status monitoring

Configuration:

Quality and Resolution Options

Resolution Selection

You can control the video resolution using the force_resolution setting in the M3U8_PARSER section:

{
    "M3U8_PARSER": {
        "force_resolution": "Best"
    }
}

Available options:

  • "Best": Highest available resolution
  • "Worst": Lowest available resolution
  • "1080p": Force 1920x1080 resolution
  • "720p": Force 1280x720 resolution
  • "480p": Force 640x480 resolution
  • "360p": Force 640x360 resolution
  • "320p": Force 480x320 resolution
  • "240p": Force 426x240 or 320x240 resolution
  • "144p": Force 256x144 resolution

If the exact resolution is not available, the closest available resolution will be selected.

Encoding Quality

For M3U8 downloads, you can control the encoding quality using the default_preset setting in the M3U8_CONVERSION section:

{
    "M3U8_CONVERSION": {
        "default_preset": "ultrafast"
    }
}

Available presets (from fastest/lowest quality to slowest/highest quality):

  • "ultrafast"
  • "superfast"
  • "veryfast"
  • "faster"
  • "fast"
  • "medium"
  • "slow"
  • "slower"
  • "veryslow"

Language Options

Audio Languages

You can specify which audio languages to download using the specific_list_audio setting:

{
    "M3U8_DOWNLOAD": {
        "specific_list_audio": ["ita", "eng"]
    }
}

This can also be set via command line:

python test_run.py --specific_list_audio ita,eng

Subtitle Languages

Similarly, you can specify which subtitle languages to download:

{
    "M3U8_DOWNLOAD": {
        "specific_list_subtitles": ["ita", "eng"]
    }
}

Command line override:

python test_run.py --specific_list_subtitles eng,spa

Available Language Codes

European Asian Middle Eastern Others
ita - Italian chi - Chinese ara - Arabic eng - English
spa - Spanish jpn - Japanese heb - Hebrew por - Portuguese
fre - French kor - Korean tur - Turkish fil - Filipino
ger - German hin - Hindi ind - Indonesian
rus - Russian mal - Malayalam may - Malay
swe - Swedish tam - Tamil vie - Vietnamese
pol - Polish tel - Telugu
ukr - Ukrainian tha - Thai

Performance Options

Download Workers

You can control the number of concurrent download threads:

{
    "M3U8_DOWNLOAD": {
        "default_video_workser": 12,
        "default_audio_workser": 12
    }
}

Command line overrides:

python test_run.py --default_video_worker 8 --default_audio_worker 8

Recommended settings based on internet speed:

  • Fast connection (100+ Mbps): 16-24 workers
  • Medium connection (25-100 Mbps): 8-12 workers
  • Slow connection (<25 Mbps): 4-6 workers

GPU Acceleration

For faster encoding, you can enable GPU acceleration if your hardware supports it:

{
    "M3U8_CONVERSION": {
        "use_gpu": true
    }
}

Output Options

Output Directory Structure

You can customize where downloaded content is saved:

{
    "OUT_FOLDER": {
        "root_path": "Video",
        "movie_folder_name": "Movie",
        "serie_folder_name": "Serie",
        "anime_folder_name": "Anime"
    }
}

Episode Naming

You can customize how episodes are named:

{
    "OUT_FOLDER": {
        "map_episode_name": "E%(episode)_%(episode_name)"
    }
}

Available variables:

  • %(tv_name): The name of the TV show
  • %(season): The season number
  • %(episode): The episode number
  • %(episode_name): The name of the episode

Site Name in Path

You can include the site name in the output path:

{
    "OUT_FOLDER": {
        "add_siteName": true
    }
}

Example Workflows

High-Quality Movie Download

python test_run.py --altadefinizione_search -s "inception" --default_video_worker 16 --specific_list_audio eng,ita --specific_list_subtitles eng,ita

Fast TV Series Download

python test_run.py --guardaserie_search -s "breaking bad" --default_video_worker 8 --default_audio_worker 8 --specific_list_audio eng

Anime Download with Multiple Subtitles

python test_run.py --animeworld_search -s "attack on titan" --specific_list_subtitles eng,ita,jpn

Related Documentation

⚠️ **GitHub.com Fallback** ⚠️