下载一个youtube mashup视频并将其拆分为一个带标签的音频文件列表

mashdown的Python项目详细描述


mashdown将下载一个youtube mashup视频,并将其拆分为单独的音频文件,其中包含文档化的音频标签。

warning:要使mashdown正常工作,视频必须附带一个tracklist,列出每个曲目的开始时间和曲目名称。tracklist可以在youtube描述中,也可以在本地文件中。这是一个完美的候选人。

安装

要安装mashdown,只需使用pip:

$ pip install mashdown

示例

下载并拆分mashup

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

拆分本地mashup

在本例中,不会下载mashup。youtube url仅用于获取tracklist信息。

$ 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: 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, --helpshow 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, --quietRemove non important log messages
metadata:
--artist ARTIST
The artist name
--album ALBUMThe album name

依赖关系

mashdown取决于以下库:

  • pydub(需要在系统上安装ffmpegavconv)来剪切视频文件并导出音频段
  • pafy,下载YouTube视频并获取其元数据
  • mutagen,编辑音频文件元数据

释放量

0.1.1

  • 曲目名称可以位于曲目开始时间之前或之后
  • 添加了单元测试

0.1.0

初始版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java扫雷游戏的算法问题。游戏开始时隐藏地雷?   struts2的java迭代器标记   JavaFX如何创建精简菜单栏?   java从SQLite数据库获取字符串并检查是否等于变量不起作用   java如何检查移动数据连接   一旦我将Runnable传递给另一个线程中Swing的invokeAndWait,java就无法停止它   Java中每个键的多线程线程池   java没有可用的EjbContext   组织的java例外初始化错误。springframework。网状物util。UriComponentsBuilder。Android上的newInstance   java GWT CSS GUI通知用户浏览器问题   多线程一个Java编码程序,它读取一个巨大的CSV文件的行   java如何以编程方式打开特定应用程序的Android备份屏幕   java创建一个由10个整数组成的数组,并用1到6之间的随机数填充它   java如何将堆栈传递到方法中   java如何为注解@CurrentUser发送未经授权的响应   java访问switch语句中的对象   java如何正确扩展类   java DropboxAPI入门,未找到类