Skip to main content
Join the official Python Developers Survey 2018 and win valuable prizes: Start the survey!

Download and split a youtube mashup video in a list of tagged audio files

Project description

Mashdown will download and split a Youtube mashup video into individual audio files, with documented audio tags.

Warning: For Mashdown to work, the video must come with a tracklist listing the start time and track name for each track. The tracklist can either be in the Youtube description or in a local file. Here is a Youtube video that is a perfect candidate.

Installation

To install Mashdown, you can simply use pip:

$ pip install mashdown

Examples

Downloading and splitting the mashup

$ mashdown \
    --audioformat ogg \
    --album "The Lord of the Rings Sountrack" \
    --artist "Howard Shore" \
    https://www.youtube.com/watch\?v\=upzOSSQWSYU

Splitting a local mashup

In this example, the mashup will not be downloaded. The youtube URL is only used to fetch the tracklist information.

$ mashdown \
    --audioformat ogg \
    --mashupfile path/to/mashupfile
    --album "The Lord of the Rings Sountrack" \
    --artist "Howard Shore" \
    https://www.youtube.com/watch\?v\=upzOSSQWSYU

Usage

usage: mashdown [-h] [-m MASHUPFILE] [–input-audioformat INPUT_AUDIOFORMAT]
[-f AUDIOFORMAT] [-o OUTPUT_DIR] [-q] [–artist ARTIST] [–album ALBUM] url

Split a Youtube mashup video into a list of tagged audio tracks

positional arguments:
url The youtube link to the mashup.
optional arguments:
-h, --help show this help message and exit
-m MASHUPFILE, --mashupfile MASHUPFILE
 The local path, relative or absolute, to the mashup file.
--input-audioformat INPUT_AUDIOFORMAT
 The prefered audio format for the source mashup file.
-f AUDIOFORMAT, --audioformat AUDIOFORMAT
 The export audio format. Examples: ‘mp3’, ‘ogg’, ‘mp4’, ‘flac’, …
-o OUTPUT_DIR, --output-dir OUTPUT_DIR
 The directory in which the output directory will be created.By default, the current directory will be used.
-q, --quiet Remove non important log messages
metadata:
--artist ARTIST
 The artist name
--album ALBUM The album name

Dependencies

Mashdown is depends on the following libraries:

  • pydub (which requires ffmpeg or avconv to be installed on the system), to cut the video file and export the audio segments
  • pafy, to download the Youtube video and get its metadata
  • mutagen, to edit the audiofile metadata

Releases

0.1.1

  • The track name can be located before or after the track start time
  • Added unit tests

0.1.0

initial release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
mashdown-0.1.1.tar.gz (6.3 kB) Copy SHA256 hash SHA256 Source None Oct 2, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page