当前位置: 首页 > article >正文

跨平台音乐播放器Feishin

在这里插入图片描述

什么是 Feishin ?

Feishin 是一款现代的自托管音乐播放器,支持多种音乐来源和功能。它是由Sonixd 的重构版本发展而来,能够与 NavidromeJellyfin API 音乐服务器兼容,目前还不支持 Subsonic APIFeishin 具有现代化的用户界面,支持 MPVWeb 播放器后端,并且提供智能播放列表编辑和歌词同步等功能。此外,Feishin 支持跨平台使用,包括桌面客户端、Web 版本和 Docker部署方式,适用于本地音乐库和在线流媒体。

软件功能:

  • MPV播放器后端
  • 网络播放器后端
  • 现代用户界面
  • 将播放记录发送到您的服务器
  • 智能播放列表编辑器(Navidrome
  • 支持同步和非同步歌词

Feishin 是一个跨平台的音乐播放器,除了支持支持 Docker 部署外,还支持 LinuxMacOSWindows 平台

准备

Feishin 只是个音乐播放器,需要配合 NavidromeJellyfin 音乐服务器使用。官方的示例是针对 Jellyfin 的,所以老苏研究了一下 Navidrome 的设置

首先当然是需要先安装 Navidrome

文章传送门:音乐流媒体服务器Navidrome

如果你之前没安装过,可能用 docker cli 更快捷

# 新建文件夹 navidrome 和 子目录
mkdir -p /volume1/docker/navidrome/{data,music}

# 进入 navidrome 目录
cd /volume1/docker/navidrome

# 修改目录权限
chmod a+w data

# 运行容器
docker run -d \
   --restart unless-stopped \
   --name navidrome \
   --user 1000:1000 \
   -p 4533:4533 \
   -v $(pwd)/data:/data \
   -v $(pwd)/music:/music:ro \
   -e ND_ENABLETRANSCODINGCONFIG=true \
   -e ND_SESSIONTIMEOUT=72h \
   deluan/navidrome
可变
ND_SESSIONTIMEOUTNavidrome 将等待多长时间后关闭网页用户界面的空闲会话
ND_ENABLETRANSCODINGCONFIG在用户界面中启用转码配置

更多的Navidrome 的环境变量设置,请参考官方文档: https://www.navidrome.org/docs/usage/configuration-options/

music 目录中正好了留了之前的一张无损的专辑

安装

在群晖上以 Docker 方式安装。

官方的镜像没有发布在 docker hub,而是在 ghcr.io,所以直接用命令行来安装。

SSH 客户端中依次执行下面的命令

# 下载镜像
docker pull ghcr.io/jeffvli/feishin:latest

本文写作时, latest 版本对应为 0.10.1

docker cli 安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 运行容器
docker run -d \
  --name feishin \
  --restart unless-stopped \
  -p 9180:9180 \
  -e SERVER_NAME=navidrome \
  -e SERVER_LOCK=true \
  -e SERVER_TYPE=navidrome \
  -e SERVER_URL='http://192.168.0.197:4533' \
  -e PUID=1000 \
  -e PGID=1000 \
  -e UMASK=002 \
  -e TZ=Asia/Shanghai \
  ghcr.io/jeffvli/feishin:latest
可变
SERVER_NAME定义服务器的名称
SERVER_LOCK当设置为 true 且已设置名称/类型/URL 时,仅可以切换用户名/密码
SERVER_TYPE支持 jellyfinnavidrome
SERVER_URLjellyfinnavidrome服务器的完整 URL,包括协议和端口
PUIDUserID,默认设为 1000
PGIDGroupID,默认设为 1000
UMASKumask=002 意味着新创建的文件和目录默认会关闭写权限,但不会关闭执行权限(对于目录)
TZ时区设置

docker-compose 安装

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'

services:
  feishin:
    image: 'ghcr.io/jeffvli/feishin:latest'
    container_name: feishin
    restart: unless-stopped
    ports:
      - 9180:9180
    environment:
      - SERVER_NAME=navidrome
      - SERVER_LOCK=true
      - SERVER_TYPE=navidrome
      - SERVER_URL=http://192.168.0.197:4533
      - PUID=1000
      - PGID=1000
      - UMASK=002
      - TZ=Asia/Shanghai

然后执行下面的命令

# 新建文件夹 feishin
mkdir -p /volume1/docker/feishin

# 进入 feishin 目录
cd /volume1/docker/feishin

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

运行

在浏览器中输入 http://群晖IP:9180 就能看到主界面

Open menu --> Manage servers

Add Server

因为环境变量已经设置了类型和地址,所以这里只要填 UsernamePassword 即可

Add 添加

为了获得最佳体验,在创建服务器时请选择“保存密码”,并在 Navidrome 环境变量中将 SessionTimeout 设置为更大的值(例如 72 小时)。

Go back 会进入主界面

选中专辑进行播放

Navidrome 的客户端中,会看到 Feishin 的使用记录

参考文档

jeffvli/feishin: A modern self-hosted music player.
地址:https://github.com/jeffvli/feishin/

Feishin
地址:https://feishin.vercel.app


http://www.kler.cn/a/331203.html

相关文章:

  • 【机器学习(九)】分类和回归任务-多层感知机(Multilayer Perceptron,MLP)算法-Sentosa_DSML社区版 (1)111
  • MarkItDown的使用(将Word、Excel、PDF等转换为Markdown格式)
  • Odoo 免费开源 ERP:通过 JavaScript 创建对话框窗口的技术实践分享
  • NI GPIB通讯错误码含义
  • Doris 资源软硬限详解
  • c++ [spdlog 配置与使用]
  • 位运算(6)_只出现一次的数字 II
  • Build a Large Language Model (From Scratch)学习汇总
  • uni-app运行到 Android 真机和Android studio模拟器
  • three.js 通过着色器实现热力图效果
  • 【项目开发】跨专业合作平台实战(附源码)
  • esp32开发环境搭建和烧录测试
  • 10.2学习
  • Sqoop面试整理
  • LeetCode[中等] 763. 划分字母区间
  • Leecode热题100-75.颜色分类
  • 【AndroidStudio】关于AndroidStudio的常见控件TextView和Button
  • Vue2(十三):路由
  • Java文件上传同时传入JSON参数
  • 软件工程的详细学习要点和学习方向
  • git commit -am 仅提交已修改文件
  • 怎么绕开华为纯净模式安装软件
  • 机器学习篇-day02-KNN算法实现鸢尾花模型和手写数字识别模型
  • Pikachu- SQL Inject - http header 头注入
  • 《Linux从小白到高手》理论篇(六):Linux软件安装一篇通
  • Leecode SQL 184. Department Highest Salary 找出tie