将服务器里的音频文件入库切片

将服务器里的音频文件入库到音频管理,并支持分类、专辑、详情信息,音频切完自动添加进专辑等入库功能。

入库步骤

提示:该功能会经常优化,如果你发现有些功能不生效,请更新到最新版后再使用该功能。

入库文件夹为audios,如果我程序安装路径为/home/express-ffmpeg,则入库文件夹为/home/express-ffmpeg/audios

音频入库格式固定,支持以下格式:

.mp3,.ogg,.m4a,.aac,.wma,.flac,.wav

如果你音频在本地电脑上面,那么可以通过ftp客户端、宝塔等工具将音频上传到入库文件夹;如果你音频文件在服务器里面,那么需要将音频转移到入库文件夹,最后再点击音频管理的扫描入库即可。

音频入库期间,如果存在名称重复的音频,则不会入库到音频管理处,且支持分类专辑详情信息等入库功能,具体看下面。

入库自动分类

入库支持自动分类,如我在入库文件夹audios新建一个名为流行音乐的子文件夹,那么我将音频存放到流行音乐的文件夹,入库的时候这些音频会自动分类流行音乐,且如果该分类不存在会自动创建。

入库分类支持多级目录,且第一层目录默认为分类,其它子文件夹只负责入库音频,比如audios/流行音乐/华语流行audios/流行音乐/华语流行/经典老歌等文件夹里的音频入库,分类均默认为第一层目录流行音乐

自动添加专辑

提示:专辑文件夹需要为一级目录才能识别,且暂时不支持文件夹分类,可通过json传递分类信息。

目前可以在入库文件夹audios按要求新建专辑文件夹,并将单曲传进去,然后会自动创建专辑,且里面的音频切完也会自动添加进专辑,并自动排序。

首先在入库文件夹audios新建一个文件夹,命名格式:autoalbum专辑名称,如autoalbum周杰伦精选,然后将命名规范的单曲传进去,如010203第01首第02首;如果总曲目数有3位数,那么就用001002003,然后入库单曲的时候会自动创建专辑,并会被标记,切片完成后,也会自动添加进专辑,并自动排序。

注意入库专辑的时候,会在专辑文件夹创建一个24id文件,切勿删除,不然会重新创建新的同名专辑,后面入库的单曲会添加到新的专辑。

专辑封面入库说明

比如我的专辑文件夹为autoalbum专辑名称,那么将封面文件名改成专辑名称.jpg,格式也可以为jpegpngwebp,并存放到专辑文件夹就可以了,如audios/autoalbum周杰伦精选/周杰伦精选.jpg,入库的时候,创建专辑信息会自动使用该封面。

专辑详情信息入库

入库的时候,需要在专辑文件夹存放一个以专辑名称命名的json文件,比如我的专辑文件夹为autoalbum专辑名称,那么改成专辑名称.json,如下:

#只需要同名
audios/autoalbum周杰伦精选/
周杰伦精选.json
周杰伦精选.jpg
01.mp3
02.mp3

#json文本内容格式如下,一行一个,字段和参数使用$隔开,不填则默认为空值
category$流行音乐
language$国语
type$专辑
tags$流行,华语,经典
summary$收录周杰伦最经典的歌曲
year$2020
episodescount$15
author$周杰伦

#json参数详解
category, //分类
language, //语言,可选值:国语、粤语、英语、日语、韩语、其它
type, //专辑类型,可选值:专辑、EP、单曲、合集、有声书、播客、其它
tags, //分类标签,多个标签用英文逗号,分开,如 流行,摇滚,民谣
summary, //专辑简介
year, //发行年份,如 2020
episodescount, //曲目数
author, //作者/艺术家

入库的时候,会直接使用该json,创建专辑信息。

入库API使用

可远程使用该apiaudios所有音频入库到音频管理,再自动转码,用法如下:

POST /api/rukuaudio

body: {
    apikey,
}

response: {
    success: 1,
}

#curl命令使用示例,apikey可在转码设置处获取
curl http://127.0.0.1:3000/api/rukuaudio -d "apikey=5c20cEga"

注意该接口会扫描所有文件,如果你需要频繁扫描入库新文件,并且入库文件夹存在大量音频的话,则建议短时间内不要重复请求,最好是有几分钟或更长时间间隔。