Skip to content

yumiris/Gunloader

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gunloader

Split YouTube videos into songs, all tagged and in your favourite audio format.

Gunloader Web GUIDownload Latest CLI

Introduction

This project allows you to split long YouTube videos into separate songs! You can tag them with metadata and encode them in your preferred audio format.

screenshot of curated songs

At the moment, the project consists of two components:

  • The offline CLI (Command Line Interface) program that downloads and splits up the YouTub video for you; and
  • The online Web UI which lets you specify the song information and start/end times within a YouTube video.

Features

  • Encodes a long video's audio into separate audio tracks
  • Support for FLAC, MP3, Vorbis, Opus and AAC encoding formats
  • Tagging abilities (title, album, artist(s), comment, genre, etc.)
  • Downloading using YouTube-DL, or using an existing video file
  • Embedded cover art, using thumbnails derived from the provided video, or using an existing image
  • Batch processing of multiple album videos from YouTube or local videos
  • Song information can be read from a file, or from a YouTube video's chapters/timeline
  • Optional lossless splitting of the video's original audio, without any re-encoding whatsoever

Usage

To make things simpler, give the Web GUI a try here! It will let you organise your tracks (or use other people's existing records). Simply double click on Gunloader, and specify the ID that the Web GUI will give you.

For advanced instructions, please refer to the USAGE document. Linux users may have to run ./gunloader through the terminal to see the wizard.

Installation

Download the latest release from here, and also make sure you have the dependencies you need installed. See below for further information!

Dependencies

Download whichever dependency you need for your use-case:

  • yt-dlp for downloading videos (youtube-dl can also be used)
  • ffmpeg for audio & cover art extraction
  • lame for MP3 encoding w/ metadata
  • flac for FLAC encoding w/ metadata
  • oggenc for Vorbis encoding w/ metadata
  • opusenc for Opus encoding w/ metadata
  • ffmpeg for AAC encoding w/ metadata

If you need to specify a dependency's executable to the program, do it like so:

./gunloader \
    # records file
    --album '~/album.txt' \

    # paths to dependencies
    --ffmpeg "c:\\ffmpeg.exe" \
    --flac '/bin/flac' \
    --youtube-dl ~/yt-dlp \

    # mass fill with optional metadata
    --genre "OP/ED/IN/IM" \
    --artist "Various" --artist "Artists" \
    --comment 'Very Important Music'

FAQ

It's called gunloader because it was originally meant to be used to download compilations by Gundober.

This repository's numskull of an author realised only afterwards that this solution works for any YouTube album video.

About

Download, extract & curate songs from YouTube album videos in your favourite audio format.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 49.2%
  • C# 40.8%
  • Blade 9.4%
  • Other 0.6%