APP下载 微博 微信

Hao4K影音


[其他] 玩转hqpe系统 Ver 3.0,安装hqplayer系统教程

[复制链接]

发表于 2024年03月01日 21:46 2978 6 来源:高级Hi-Fi> 其他 回帖奖励 |倒序浏览 |

小落叶 帖主

2024-3-1 21:46

一、下载安装hqpe系统
这里以U盘版为例,准备一个16G以上的U盘(应备份好U盘资料)。
到百度网盘 链接: https://pan.baidu.com/s/1JilSdfXSeVJIORciZe3_Kg?pwd=9udf
中的hqpe_arch目录里下载 hqplayer5_arch2.img.xz文件。(感谢欢乐总的奉献!)
解压得到hqplayer5_arch2.img文件,再用刷系统软件(例如balena Etcher)把hqplayer5_arch2.img文件刷入U盘,这样就完成下载安装hqpe系统,之后可用该U盘启动系统。启动后在同一局域网内的任一浏览器地址栏内输入 http://该电脑IP地址:8088回车,即可进入hqplayer web界面,需要进行配置时的用户名和密码都是hqpe(和arch开机密码一样)。
(U盘剩余磁盘空间,建议分区,作为资料、音乐存档用,这里记为M分区,exfat格式吧)
注意:如果使用Raspberry Pie Imager软件写入镜像文件,则核心分区(第二分区)已扩展到磁盘的最大存储容量,因此上面的M分区并不存在。具体需要哪种,请自行确定;推荐还是用balena Etcher,因为富余空间可灵活分配。


二、升级hqpe系统里的hqplayer embedded
本人2023年12月28日第一步下载安装的hqpe系统,hqplayer embedded版本是5.3.0,目前最新的是5.3.2版本(发贴时最新版是5.5.0版本了),那怎么升级呢?
从某处下载到hqplayer-embedded-5.3.2-1-x86_64.pkg.tar.zst文件,把它放入U盘M分区根目录下。
用该U盘开机进入系统(用户名和密码都是hqpe),按如下步骤进行升级:

先挂载M分区(建立一目录mm以便挂载):
  1. sudo mkdir mm
  2. sudo mount /dev/sda3 ./mm
  3. cd mm
复制代码


升级hqplayer embedded:
sudo pacman -U ./hqplayer-embedded-5.3.2-1-x86_64.pkg.tar.zst
注:如果你下载的是上面百度网盘中的Music Arch系统,其内并没有内置hqplayer embedded,那么应使用安装命令而不是更新命令,即将上面的-U改为-S(可能要先安装hqplayer所需的依赖包):
  1. sudo pacman -S ./hqplayer-embedded-5.3.2-1-x86_64.pkg.tar.zst
复制代码


重启hqplayer embedded:
  1. sudo systemctl restart hqplayerd
复制代码


(注:卸载M分区用sudo umount /dev/sda3)



扩展阅读:
升级文件是怎么来的呢?
升级文件本身是arch linux安装包,有两种途径取得:

一是到hqpe系统官网下载:
https://udo.sakura.ne.jp/aoe/hqplayer/hqplayer-embedded-x86_64.pkg.tar.zst
这里的版本号没写,有可能不是hqplayer embedded官方最新版本。
例如curl -O https://udo.sakura.ne.jp/aoe/hqplayer/hqplayer-embedded-x86_64.pkg.tar.zst

二是自己制作:
到hqplayer官网下载deb安装包(https://www.signalyst.eu/bins/hqplayerd,注意不同的linux系统开发代号),例如下载的是jammy目录(对应ubuntu 22.04版本)下的hqplayerd_5.3.2-9avx2_amd64.deb文件。

然后使用 debtap工具 将 Deb 包解压并打包成 arch linux 包。
如debtap未安装,则进行安装:
  1. sudo yay -S debtap
复制代码


更新 debtap 数据库:
  1. sudo debtap -u
复制代码


使用 debtap 把deb 包转换成arch linux安装包:
  1. sudo debtap ./hqplayerd_5.3.2-9avx2_amd64.deb
复制代码


安装转换好后的包:
  1. sudo pacman -U ./hqplayerd_5.3.2-9avx2_amd64 .tar.xz
复制代码


注意:arch linux系统(含本hqpe系统)默认并没有安装yay工具,具体怎样安装yay工具请搜索网上相关资料(比较麻烦噢)。



三、和谐开心化hqplayer embedded。

首先和谐开心文件hqplayerd和被替换软件的版本号要一致,支持指令集也要一样。有时hqpe和hqpos系统里面的hqplayerd不一定能互换。

先停止运行hqplayer embedded:
  1. sudo systemctl stop hqplayerd
复制代码


把和谐开心文件hqplayerd(如果不是这个文件名,请先改名)加上执行权限:
  1. sudo chmod +x ./hqplayerd
复制代码


然后复制hqplayerd过去覆盖原文件:
  1. sudo cp ./hqplayerd /usr/bin
复制代码


最后重新启动hqplayer embedded:
  1. sudo systemctl start hqplayerd
复制代码



四、克隆u盘版hqpe系统到内置固态硬盘上。

假设电脑内置固态硬盘已经安装win11、Ubuntu等系统,那么在不破坏原系统的基础上怎么加装hqpe系统呢?

用一个win Pe启动u盘启动该电脑,运行DiskGenius注册版或功能已和谐版软件:
这里假设u盘版hqpe系统里面的第一分区(FAT32格式,容量512MB)记为uF分区,核心分区(一般是第二个分区,ext4格式,容量15GB多)记为uH分区。

1、在内置固态硬盘上新分出两个分区,第一个分区是FAT32格式(假设是F分区),容量大于等于uF分区,例如512MB,第二个是ext4格式(假设是H分区),容量大于等于uH分区,例如16GB及以上,分别记录F分区的卷序列号和H分区的卷UUID。
然后把uF、uH分区里全部内容分别克隆到F、H分区内。再把F分区分配盘符以方便下面的操作。
注1:内置固态硬盘的分区表类型一般要求是GUID格式。
注2:为何要新建立一个F分区?内置固态硬盘上肯定已有FAT或FAT32启动分区了,但其空间一般不超过300MB,这有点小,可能无法容纳uF分区根目录的6个文件(init和vm开头的那6个)(如能容纳,则可不用建立F区,这时原有的启动分区就是F分区了)。但即使能容纳为避免出现更多的麻烦,还是建立F分区的好。

2、用记事本软件打开F分区\grub\grub.cfg文件修改其内容,修改完成后把它复制到F分区\EFI\BOOT\内(建议顺便备份一下F分区\EFI\ BOOT \BOOTX64.EFI文件),大概这样修改:
我们知道,hqpe启动时有4个启动选项,启动选项对应menuentry语句,我们看第一个:
menuentry 'Arch Linux, with Linux linux-xanmod-rt' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-linux-xanmod-rt-advanced-4953ad81-9ade-4e19-8fdc-5c38d9155ed8' {
        load_video
        set gfxpayload=keep
        insmod gzio
        insmod part_gpt
        insmod ext2
        search --no-floppy --fs-uuid --set=root AEF9-A862
        ##search --no-floppy --fs-uuid --set=root 4953ad81-9ade-4e19-8fdc-5c38d9155ed8
        echo        'Loading Linux linux-xanmod-rt ...'
        linux        /vmlinuz-linux-xanmod-rt root=UUID=4953ad81-9ade-4e19-8fdc-5c38d9155ed8 rw  loglevel=3 quiet
        echo        'Loading initial ramdisk ...'
        initrd        /initramfs-linux-xanmod-rt.img
}

将标色的AEF9-A862更换成上面记录的F区的卷序列号,3处4953ad81-9ade-4e19-8fdc-5c38d9155ed8更换成H区的卷UUID。
其他启动选项menuentry语句段及其他地方也类似处理(查找替换全部可快速搞定)。

3、把官方hqpos u盘系统的核心分区(不是FAT或FAT32启动分区)里的/boot/BOOTX64.EFI文件(文件大小630784 字节,616KB多)复制到F分区\EFI\BOOT\内,并改名为HBOOTX64.EFI(避免和其他系统需要的BOOTX64.EFI发生冲突)。
注1:笔者测试多个类BOOTX64.EFI文件,包括uF分区两个、win11、ubuntu、hqpos u盘启动分区等的,都无法正常启动系统,提示说找不到指定的磁盘,我猜测原u盘版hqpe系统的BOOTX64.EFI文件内部是不是已经关联sda2了。
注2:这个能正常工作的BOOTX64.EFI文件(需要的请私聊我)必须复制到F分区\EFI\BOOT\文件夹内,且该目录内还必须有grub.cfg文件,否则还是出错!

4、用BOOTICEx64软件增加一个开机启功项目指向F分区\boot\HBOOTX64.EFI文件:运行BOOTICEx64软件,在“UEFI”功能页内单击“修改启动序列”按钮,随后在出现的窗口中单击“添加”按钮。

5、重启电脑,选择启动新增的hqpe系统即可(启动期间出现4个提示不必理会,不影响正常工作的。当然你也可以进一步修改grub.cfg文件中相关内容以便去掉这些提示,甚至是复制提示找不到的那3个文件到F分区\boot\内)。


五、安装RoonServer

hqpe系统本身并不内置Roon Server,要安装Roon Server,则应先安装所需两个依赖包:
  1. sudo pacman –Sy
  2. sudo pacman –S ffmpeg
  3. sudo pacman –S cifs-utils
复制代码


然后按官方的安装流程进行:
  1. curl -O https://download.roonlabs.net/builds/roonserver-installer-linuxx64.sh
  2. chmod +x roonserver-installer-linuxx64.sh
  3. sudo ./roonserver-installer-linuxx64.sh
复制代码


安装Bridge(桥)是下载这样的文件(注意要匹配桥电脑的CPU类型),其他命令类似上面的:
  1. curl -O https://download.roonlabs.net/builds/roonbridge-installer-linuxx64.sh
  2. curl -O https://download.roonlabs.net/builds/roonbridge-installer-linuxarmv7hf.sh
  3. curl -O https://download.roonlabs.net/builds/roonbridge-installer-linuxarmv8.sh
复制代码


安装后的位置在 `/opt/RoonServer` 或 `/opt/RoonBridge`。



六、安装ntfs、samba软件包
arch系统通常是无法直接访问windows系统ntfs格式分区的,这时可安装ntfs-3g软件包(这样hqpe才可装载读写windows的htfs格式分区)。
要进行文件共享,可安装samba软件包。
  1. sudo pacman –Sy
  2. sudo pacman –S ntfs-3g
  3. sudo pacman –S samba
复制代码


samba配置文件是/etc/samba/smb.conf,下面打开编辑它:
  1. sudo nano /etc/samba/smb.conf
复制代码

在文件最后面添加类似于下面语句后保存(为方便,该共享无密码,完全可读写):
# 其他电脑上显示的共享名是MyShare,其对应/home/hqpe/hdd目录。
[MyShare]
comment = this is my First share
path = /home/hqpe/hdd
public = yes
writable = yes

注:/home/hqpe/hdd目录可挂载到某分区,这时该分区适宜在开机启动时直接挂载,可在/etc/fstab文件里末尾处添加:
UUID=XXXXXX  /home/hqpe/hdd  ntfs-3g  defaults,nofail,,umask=0000 0 0
## 其中XXXXXX为该分区的UUID,/home/hqpe/hdd为挂载点,ntfs-3g为该硬盘的类型。
最好把/home/hqpe/hdd目录修改为完全读写属性:
  1. # sudo mkdir /home/hqpe/hdd
  2. sudo chmod 777 /home/hqpe/hdd
复制代码


可用sudo blkid命令查看磁盘的uuid值,这样:
①         如果文件系统是vfat格式
UUID=XXXXXX /mnt/hdd vfat defaults,nofail,,umask=0000 0 0
②         对于 ext4格式
UUID=XXXXXX /mnt/hdd ext4 defaults,nofail,,umask=0000 0 0
③         对于exfat格式
UUID=XXXXXX /mnt/hdd exfat defaults,nofail,,umask=0000 0 0
④         对于NTFS格式(先要安装好ntfs-3g软件包)
UUID=XXXXXX /mnt/hdd ntfs-3g defaults,nofail,,umask=0000 0 0
也可以用PARTUUID字句。

开机启用 smb:
  1. sudo systemctl enable smb    (sudo systemctl enable samba)
复制代码


同时启用 nmb:
  1. sudo systemctl enable nmb
复制代码


如果smb无法启动,日志提示“error while loading shared libraries: libicui18n.so.74: cannot open shared object file: No such file or directory”,那是因为hqpe系统内置的icu软件包版本是73.2,而samba需要74版本,这时可更新icu版本:
  1. curl -O https://archive.archlinux.org/packages/i/icu/icu-74.2-1-x86_64.pkg.tar.zst
  2. sudo pacman -U ./icu-74.2-1-x86_64.pkg.tar.zst
  3. sudo systemctl start smb
  4. sudo systemctl start nmb
复制代码


我晕,重启电脑后你是否会发现hqplayer居然无法运行了,执行sudo hqplayerd提示说“error while loading shared libraries: libicuuc.so.73: cannot open shared object file: No such file or directory”,这说明hqplayer运行需要的icu软件包版本是73,而samba需要74版本,这。。。看来要用hqplayer就不能升级icu软件包版本(这时samba功能无效);要么就不用hqplayer只用roon+samba作为roon核心机也不错。
或者尝试:降低所安装的samba版本(4.19.3-2及更高的肯定要icu软件包 74版本以上),具体哪个版本仅用到73版本icu软件包的只能自己测试了。


七、卸载Roon操作
1、卸载 Roon 服务器
  1. sudo ./roonserver-installer-linuxx64.sh uninstall
复制代码



2、卸载HQPlayer
sudo pacman -R hqplayer-embedded
要保留HQPlayer,只是想开机不启动HQPlayer可以这样:
  1. sudo systemctl disbale hqplayer-embedded
  2. sudo reboot
复制代码



3、卸载文件共享(samba)
  1. sudo pacman -R samba
复制代码



4、卸载 Diretta Host主机
① 如果已设置为自启动,请依次执行以下命令将其关闭。
  1. sudo systemctl disable diretta_bridge_driver
  2. sudo systemctl disable diretta_bridge_host
复制代码

② 重启生效。
  1. sudo reboot
复制代码

③ 删除驱动程序。
  1. sudo rm -rf /root/DirettaALSAdriver
复制代码

④ 删除 Diretta。
  1. sudo rm  /etc/systemd/system/diretta_bridge_*.service
复制代码


最后,如果需要,可删除已卸载的文件:
  1. sudo pacman -Scc
复制代码

*系统会询问您是否要删除每个目录中不需要的文件,因此输入“y”。


八、状态监控工具
这些工具包括“top”、“htop”、“gotop”、“gotop --nvidia”和“nvtop”等,可一一试用,退出时可输入q或同时按下ctlr+c键。
gotop可监控CPU和网络使用状态,gotop --nvidia可显卡GPU使用状态,使用 nvtop 时可显示显卡的 GPU 使用状态,包括CUDA Offload。

此外,您还可以执行延迟测试:
  1. cyclictest -q -l30000 -m -S -p98 -i100 - d0 -N
复制代码

最小、平均和最大延迟值以微秒为单位显示。


九、HQPayer 5的 CPU 核心设置
Intel Core i处理器(CPU)配备两种类型的核心:“P核心”和“E核心”。 P核心的设计强调性能(能核),而E核心的设计则强调功效而非性能(效核)。因此,通过将高性能的P核专用于重处理的HQPlayer,并将其他处理分配给E核,可以提高效率,并有望获得改善音质、改善切口、减少发热等效果。
  1. nano /lib/systemd/system/hqplayerd.service
复制代码

在该文件的[Service]部分写入P核心线程数,格式如下:
13900KF有16个P核心线程,因此修改命令列表以将0和15包含为“0-15”并粘贴。
(示例)CPUAffinity=0-15
修改后要保存并重启电脑,检查HQPlayer是否能正常工作。
然后将配置写入启动文件:
  1. sudo nano /etc/default/grub
复制代码

将 isolcpus=0-15 添加到 GRUB_CMDLINE_LINUX_DEFAULT后面:
GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet isolcpus=0-15"
最后执行
  1. sudo grub-mkconfig -o /boot/grub/grub.cfg
复制代码


重启电脑。之后要检查配置状态,执行如下命令:
  1. cat /sys/devices/system/cpu/isolated
复制代码




十、杂记
1、怎么查看ip地址?
在Archlinux中,系统默认不安装我们常用的ifconfig命令,需要用户手动安装net-tools包才能使用。我们可以通过以下命令安装net-tools包:
  1. sudo pacman -S net-tools
复制代码


注:
1)、在Archlinux中,系统已默认安装ip命令,因此我们可以直接使用该命令来查看IP地址。例如,如果我们想查看eth0接口的IP地址,可以输入以下命令:
  1. ip address show eth0
复制代码


2)、hostname命令用于获取或设置系统的主机名。在Archlinux中,该命令还支持一些额外的选项,可以用来获取本机IP地址信息。例如,如果我们想查看当前系统的主机名和IP地址,可以输入以下命令:
  1. hostname -I
复制代码

该命令会输出当前系统的IP地址,如果系统有多个IP地址,则会以空格分隔输出。

2、一些参考网址
(1)archlinux支持的软件包:
https://archlinux.org/
https://archive.archlinux.org/packages/
https://aur.archlinux.org/packages/hqplayer-embedded
https://aur.archlinux.org/packages/roonserver
https://aur.archlinux.org/packages/lms

2、roon、hqplayer官网
https://roon.app/en/
https://www.signalyst.com/

原创作者:sszj2010
回复

使用道具 举报

全部回复6

强哥xu 2

2024-3-1 22:03

hqplayer好软件,是不是需要cpu较强大才能支持?谢谢。
回复 支持 反对

使用道具 举报

小落叶 3

2024-3-1 22:17

强哥xu 发表于 2024-3-1 22:03
hqplayer好软件,是不是需要cpu较强大才能支持?谢谢。

强哥,是的,HQPlayer对计算机的CPU要求较高!它提供了高保真度的音频处理和转换功能,因为HQPlayer涉及到复杂的音频处理和解码....
回复 支持 反对

使用道具 举报

强哥xu 4

2024-3-1 22:23

小落叶 发表于 2024-3-1 22:17
强哥,是的,HQPlayer对计算机的CPU要求较高!它提供了高保真度的音频处理和转换功能,因为HQPlayer涉及 ...

谢谢你,叶子。
我的电脑配置太一般,应该是支持不了。
回复 支持 反对

使用道具 举报

michaellv 5

2024-3-2 13:30

强哥xu 发表于 2024-3-1 22:23
谢谢你,叶子。
我的电脑配置太一般,应该是支持不了。

玩hqplayer需要至少9900k级别的cpu,但其实也不一定,因为普通CD升频也没必要强升到DSD512的级别,强哥你的解码器应该是ESS芯片,这个芯片的机器是绕不过其内置的数字滤波器,必须用akm芯片的,且只有部分akm芯片的解码器有NOS(非超取样或无数字滤波)功能,玩hqplayer升频其实并不是关键,关键是玩其超万元级解码器的超多专业的滤波器功能,比方说4.2版后出来的ploy-sinc-gauss-long就是我最喜欢的滤波器,听各类音乐几乎都适合!
回复 支持 反对

使用道具 举报

强哥xu 6

2024-3-2 13:55

本帖最后由 强哥xu 于 2024-3-2 14:02 编辑
michaellv 发表于 2024-3-2 13:30
玩hqplayer需要至少9900k级别的cpu,但其实也不一定,因为普通CD升频也没必要强升到DSD512的级别,强哥你 ...


兄弟,好!

我的电脑认知极烂,纯白。不像你是懂的。
我现在A6只用做数字转盘,dac模拟输出用T+A dac8dsd。它不能升频,另一个闲置丢一边的Cary200有升频功能,并有胆、石双放大,随意切换。
回复 支持 反对

使用道具 举报

掌控营销-Jacky 7

2024-3-3 20:24

升频的核心是用电脑的运算能力模拟不同dac的滤波特性,说白了,就是在原始的菜品(已经熟的)再回锅加点佐料,这个加佐料的好坏,口味是否适合食客,这个就各取所好了。加的好变成一个新菜。方便用家各种尝试。

其实连开发者自己也没推荐具体用哪种滤波,国外论坛分成两派,一派很推崇,一派追求原味。

至于所谓升频更高码率,就是通过算法一个添加数据(不是原生的),类似数码相机的数码变焦。高规格不代表高音质。但确实通过hq可以改变味道,多些信息(插值算的)。就跟ai生成的图片和原始图片,你更喜欢哪个,都没错。多个玩法么。

本来我们家用的hifi系统,已经不是高保真了,不同设备、环境、人的主观,到人的最终感受已经加了太多味精,就像同一道西红柿炒鸡蛋,每个人家的做法都有细微不同。

现在玩传统模拟和数播正在走两个方向,一个数播要模拟味尽量接近录音室,一个数播要方便、高解析、可调整。每个流派都是市场需求使然。没有好坏之分,只看各人需求
回复 支持 1 反对 0

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

返回列表 本版积分规则



绑定微信 + 关注公众号,第一时间获得消息通知!
:
中级发烧友
:
介绍未填写

主题

帖子

积分3394

Hao4K影音app客户端下载