找回密码
 -注册-
123
返回列表 发新帖
楼主: 中关村东路
打印 上一主题 下一主题

全内存播放开发笔记

[复制链接]
41
 楼主| 发表于 2024-3-23 16:01 | 只看该作者 来自 北京
我刘啊 发表于 2024-3-23 09:58
播放器当前播放的一个音乐文件,qq音乐是将这个文件切分,临近要处理的文件会转到运存的吧,而且能自己设置 ...

你说的肯定是对的,最终肯定是要被载入到内存里才能被播放的...但这个载入过程就会导致大几个数量级的延迟,以及更多的cpu波动。不过本帖只是分析全内存系统应该如何优雅高效实现,并不讨论有没有用。
回复

使用道具 举报

42
发表于 2024-3-23 17:03 | 只看该作者 来自 中国
中关村东路 发表于 2024-3-23 00:36
我就是业余瞎玩,很多基础的东西都不懂用到什么学什么。

主系统是i3 10105, 96g, 光纤网卡的roon core ...

4090。。。豪!

我后面打算去学习Linux。因为根据我自己的观察,Daphile虽然好,但是还得是把Linux弄熟悉,才能更上一层楼。有问题再来请教您。
回复

使用道具 举报

43
 楼主| 发表于 2024-3-23 19:03 | 只看该作者 来自 北京
Victor_Derbobo 发表于 2024-3-23 17:03
4090。。。豪!

我后面打算去学习Linux。因为根据我自己的观察,Daphile虽然好,但是还得是把Linux弄 ...

多交流
回复

使用道具 举报

44
发表于 2024-3-23 19:26 | 只看该作者 来自 中国
中关村东路 发表于 2024-3-23 00:36
我就是业余瞎玩,很多基础的东西都不懂用到什么学什么。

主系统是i3 10105, 96g, 光纤网卡的roon core ...

请教一个技术问题:

线电带华擎j3455+矩声usb卡 naa/cm4 roon ready

这里我确认一下我的理解是否正确:
硬件:
华擎主机是充当NAA的角色
后面接了一块矩声的USB卡做界面?(这里不确定)
再往后就是梅做DAC

cm4是指的什么?

软件方面,roon ready是指的软件对吗(我看当下很多市售数播有提到这个)?它是装在华擎主机里,还是装在矩声机器里?

敬请解惑,谢谢!!!
回复

使用道具 举报

45
发表于 2024-3-23 23:44 | 只看该作者 来自 中国
中关村东路 发表于 2024-3-23 16:01
你说的肯定是对的,最终肯定是要被载入到内存里才能被播放的...但这个载入过程就会导致大几个数量级的延 ...

受教了,多谢
回复

使用道具 举报

46
发表于 2024-3-24 00:13 | 只看该作者 来自 中国
太强了
回复

使用道具 举报

47
 楼主| 发表于 2024-3-24 01:58 | 只看该作者 来自 北京
本帖最后由 中关村东路 于 2024-3-24 01:59 编辑
Victor_Derbobo 发表于 2024-3-23 19:26
请教一个技术问题:

线电带华擎j3455+矩声usb卡 naa/cm4 roon ready

是,华擎j3455用做hqplayer的naa。否,矩声pcie转usb卡就是一个ti芯片的usb口,不过加了个时钟加了线性供电。是,梅是dac直连usb。

我主力系统有两个网桥,另外一个是树莓派compute module 4(cm4),加一个主板算是一个自己攒的arm电脑,或者理解为diy的树莓派4b吧。用一些手段可以通过roon ready认证,也输出给梅。

我平时听音乐习惯是按专辑听,如果是高码率pcm就直接用roon ready输出给解码,如果是44.1/16或者dsd就用hqplayer升频到dsd1024。
回复

使用道具 举报

48
发表于 2024-3-24 09:09 | 只看该作者 来自 北京
huangshun839500 发表于 2024-3-3 20:32
你让那些能听出不同硬盘声音的骚友肿么办

CelWare从4年前开始就一直是内存运行,内存播放,但是仍然摆脱不了硬盘的影响。基于自研赛耳之心主板的这一代产品,硬盘的影响愈加明显了。而且A硬盘加X内存比B硬盘声音好,不代表A硬盘加Y内存也比B硬盘好。测试了20多种硬盘加内存的组合才定型了新一代NS的硬盘和内存。

整体感觉上,你的系统越强,越敏感,一些原来认为不是问题的因素就会变得是问题。例如你优化了交换机,然后发现原来换线电给光猫影响有,但是也没那么大,换了牛逼交换机和数播后,发现原来光猫的影响这么大。
回复

使用道具 举报

49
 楼主| 发表于 2024-3-24 12:45 来自手机 | 只看该作者 来自 北京
andygaof 发表于 2024-3-24 09:09
CelWare从4年前开始就一直是内存运行,内存播放,但是仍然摆脱不了硬盘的影响。基于自研赛耳之心主板的这 ...

高总没看内容吧,我这个全内存是拆掉硬盘运行的,硬盘还影响什么呢……
回复

使用道具 举报

50
 楼主| 发表于 2024-3-24 13:19 来自手机 | 只看该作者 来自 北京
本帖最后由 中关村东路 于 2024-3-24 13:21 编辑

纠结了一下还是打算comment一句。

我在绿檀和github开源的一系列方案,一方面是让更多感兴趣的折腾型烧友了解技术细节,另一方面也是希望免费提供给国内厂家一些思路。据我所知,是帮到过一些国外公司和国内外烧友的。

有些公司找过我要交钥匙方案,我说的是我一方面不是程序员没这实力,另一方面成本上双方都不会接受,但帖子和代码都公开细节了,论坛和git上我也都有问必答,花点时间很容易就可以攒到自己系统。

还有一些在各种地点表现出奇怪的行为,有说自己早就用了我所有这些技术的(不是说pna,高总只是没认真看帖子。。),有说我杞人忧天他们公司不会有这些问题的。我想说的是,很丢脸。
回复

使用道具 举报

51
发表于 2024-3-26 16:25 | 只看该作者 来自 北京
中关村东路 发表于 2024-3-24 13:19
纠结了一下还是打算comment一句。

我在绿檀和github开源的一系列方案,一方面是让更多感兴趣的折腾型烧 ...

大佬的技术贴我基本全都看过,受益匪浅,感谢付出
回复

使用道具 举报

52
发表于 2024-6-10 11:44 | 只看该作者 来自 北京
本帖最后由 lalekuku 于 2024-6-10 12:09 编辑
中关村东路 发表于 2024-3-11 16:04
其实是可以切断的,

再次请教。上面这个切断tf卡电源的方法(echo -n mmc0:0001 > /sys/bus/mmc/drivers/mmcblk/unbind),是从系统解绑mmc设备,确实好使。
那么解绑是否就意味着不再供电?毕竟设备一直插着。
解绑后可以拔掉TF卡吗?会不会损坏?不敢轻易动手。

由于内存空间有限,我没有把所有目录放入内存,还留了一些我认为不会再使用的目录在TF卡上。
解绑后目前NAA播放正常,暂时没有错误
回复

使用道具 举报

53
 楼主| 发表于 2024-6-10 14:19 | 只看该作者 来自 北京
lalekuku 发表于 2024-6-10 11:44
再次请教。上面这个切断tf卡电源的方法(echo -n mmc0:0001 > /sys/bus/mmc/drivers/mmcblk/unbind),是 ...

umount之后就可以直接拔tf卡了。这段代码切断的不是tf的电源,是读卡器的电源
回复

使用道具 举报

54
发表于 2024-6-10 15:35 | 只看该作者 来自 北京
中关村东路 发表于 2024-6-10 14:19
umount之后就可以直接拔tf卡了。这段代码切断的不是tf的电源,是读卡器的电源

还需要umount啊?我这个板子只能用外置tf卡启动,没有内置emmc。该怎么umount  tf卡?
回复

使用道具 举报

55
 楼主| 发表于 2024-6-10 20:43 | 只看该作者 来自 北京
lalekuku 发表于 2024-6-10 15:35
还需要umount啊?我这个板子只能用外置tf卡启动,没有内置emmc。该怎么umount  tf卡?

你如果用的是我的脚本,在启动系统之前就已经umount tf卡和emmc了,只不过没关掉pci设备的供电
回复

使用道具 举报

56
发表于 2024-6-10 21:30 | 只看该作者 来自 北京
中关村东路 发表于 2024-6-10 20:43
你如果用的是我的脚本,在启动系统之前就已经umount tf卡和emmc了,只不过没关掉pci设备的供电

如果在启动系统之前就已经umount tf卡了,为啥我刷在tf卡上的系统能正常启动?这是啥原理?

umount tf卡的脚本在哪个文件里?想学习一下
回复

使用道具 举报

57
 楼主| 发表于 2024-6-10 22:12 | 只看该作者 来自 北京
lalekuku 发表于 2024-6-10 21:30
如果在启动系统之前就已经umount tf卡了,为啥我刷在tf卡上的系统能正常启动?这是啥原理?[/ba ...
  1. mkdir /ram_chroot
  2. mount -t tmpfs -o rw,noatime none /ram_chroot
  3. cp -a "${CHROOT}"/mnt/.ramdisk/* /ram_chroot/

  4. mount --move /proc /ram_chroot/proc
  5. mount --move /sys /ram_chroot/sys
  6. mount --move /dev /ram_chroot/dev

  7. umount ${CHROOT}

  8. good_msg "Switching to real root: switch_root /ram_chroot ${init} ${init_opts}"
  9. exec switch_root /ram_chroot "${init}"
复制代码


第三行,${CHROOT} 就是tf卡。/ram_chroot/是tmpfs,也就是内存。把tf卡复制之后,在倒数第三行umount,最后一行启动系统
回复

使用道具 举报

58
发表于 2024-6-11 18:27 | 只看该作者 来自 北京
本帖最后由 lalekuku 于 2024-6-11 18:54 编辑
中关村东路 发表于 2024-6-10 22:12
第三行,${CHROOT} 就是tf卡。/ram_chroot/是tmpfs,也就是内存。把tf卡复制之后,在倒数第三行umoun ...

感谢!看上去比较高深,学习了。
最后一行是启动新系统,那么运行这几行脚本代码的系统去哪里了?
看上去${CHROOT} 是个变量,它代表的真实设备是什么名?比如类似于我板子上的/dev/mmcblk0p1这样的块设备?那么我直接umount这个设备可以吗?

试了试umount /dev/mmcblk0p1,不提示错误,但好像也没效果。umount /dev/mmcblk0的话提示not mounted。
回复

使用道具 举报

59
 楼主| 发表于 2024-6-11 19:37 | 只看该作者 来自 北京
lalekuku 发表于 2024-6-11 18:27
感谢!看上去比较高深,学习了。
最后一行是启动新系统,那么运行这几行脚本代码的系统去哪里了?
看上 ...

是个目录,感兴趣的话搜一下initramfs,很老的技术
回复

使用道具 举报

60
发表于 2024-6-11 20:17 | 只看该作者 来自 北京
中关村东路 发表于 2024-6-11 19:37
是个目录,感兴趣的话搜一下initramfs,很老的技术

我去学习一下
回复

使用道具 举报

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

本版积分规则

Archiver|手机版|粤icp备09046054号|耳机网-耳机大家坛

粤公网安备 44030602000598号 耳机大家坛、www.erji.net、网站LOGO图形均为注册商标

GMT+8, 2024-12-25 00:39

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表