找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 18996|回复: 81

[N1盒子] N1 双音频输出成功,刷入Emmc作为Kodi播放器和Upnp服务器,以及Emuelec游戏,

 火.. [复制链接]
发表于 2020-1-28 18:49 | 显示全部楼层 |阅读模式
蒙版主厚爱,前面一个帖子被加了精!现在回头看看,2018年的自己写的贴,是多么的肤浅和幼稚。在恩山这个大神云集的站里,我只不过是个蜗牛,不过有幸遇到这个那个大神,凭借自己的一口气,在努力向着巨人们的肩膀上爬去!

好了,逐渐入正题吧,本文的重点是
有关N1,Coreelec, Emuelec, Kodi, UPNP, 以及一点点PulseAudio

心里历程
1,2018年7月份,自己总结别人的经验,发了个 ”近乎完美,N1成为音乐服务器“,之后恩山很奇怪的账号问题,两个月后,我只能上来看,不能登录不能发帖不能下载。
正好当时一段时间一直在忙,就没当回事。
2,前两个月,因为生活上的一些变故,精神和肉体都放空了一段时间,于是找恩山的管理协助,重新弄了账号。正好圣诞节元旦放假几天上来喵了喵,发现大家还在跟我的这个帖子,惭愧惭愧...
3,所以爬恩山两天,谷哥一周,折腾一周,加上春节这两天,弄出来今天下面这个东西。
Coreelec9.2.1 + Emuelec(NAS作为Rom存储空间) +  UPNP服务器
重点在最后一个upnp服务器,如果有兴趣,看到最后,谢谢!
4,本文的内容,也是自己近期折腾得一些笔记,留待以后需要时候查阅

第一章节,Coreelec,
参考大神的帖子,
站在大神们的肩膀上,N1适用的 CoreELEC v9.2,https://www.right.com.cn/forum/thread-1135262-1-1.html
先刷Coreelec,
1,目前Coreelec已经有9.2.1 下载,亲测可用
下载地址,https://github.com/CoreELEC/CoreELEC/releases,记得下载generic的版本,注意别下载ng的那个版本。
2,刷入U盘,再把Jdpnew大大那个补丁包copy进u盘的可读写的那个分区即可。
3,N1插网线,通电启动web大大的2.2,启动后终端命令行模式运行su,再reboot update,然后插u盘,启动kodi后打开ssh
4,正常启动好以后,自家路由器上找到Coreelec的IP,putty连过去,root/coreelect, 输入 /flash/installtoemmc,一路Yes/y的下去,装好以后重新启动,记得拔掉u盘
至此,N1上安装好了9.2.1的Coreelec,带kodi,
(需要改中文的,记得先设置font->arial base,然后skin->chinese.)
(如果需要,可先刷web大大的2.2,这个自己酌情考虑)

第二章节,Emuelec
其实,自己本来有电视盒子,这次折腾原本是想按照szkifen大大的帖子,刷个游戏盒子的,所以准备搞emuelec的3.2纯净版(写这个贴子的时候s大大发了3.3的版本的帖子),但是怎么折腾都没法刷入N1的emmc启动,只能占据个usb口启动,本来想放弃的,结果无意在b站发现s大大的帖子 - kodi下把emuelec作为插件安装
苍天啊,大地啊,s大大藏私啊,这么好的事只在b站发视频,不来恩山授个徒...
1,按第一章节在N1上装好Coreelec,启动Kodi,记得联网
2,电脑上到github上下载emuelec的Addon的版本
https://github.com/EmuELEC/EmuELEC/releases
注意拉到页面下面,下载add-on版本,到今天(2020-01-28)还只有3.2,3.3的还没出来
一样的,别下ng版本
3,kodi中,从插件-从zip安装,然后找到刚才下载好的插件,安装,多等一会,即可。
4,安装好以后进去,因为没有rom,所以游戏和模拟器选择是无法进去的。所以设法copy一些rom进去才行,简单的可以copy rom到/storage/roms下面(不过N1里面空间太小了,放不了几个),想调用nas的看下一章节
5,第一次进去,会要你设置控制器,我是用个usb接收器插N1后面,然后设置了个键盘先作为临时使用的,
各种游戏手柄也可接上,不过这里我没太多经验,不多说,大家可以自己网上找,就说我自己的一对ps3的蓝牙无线震动手柄(还是一对原装被儿子弄丢了以后一气之下买的低仿),需要把usb线插上,然后自己就识别了,后面蓝牙自动连接,也不用再设置,很方便。
(当时刚开始自己不知道顺序,一直让N1蓝牙寻找和配对这个手柄,然后N1上提升了个4位的授权码,让我在设备上输入验证,我擦,一个手柄你让我输入4个数字来验证...?为这个我懵逼了两天,后面上网查才知道正确步骤)

小贴士:
a, coreelec下emuelec的插件,主题目录在/storage/.kodi/addons/script.emuelec.Amlogic.launcher/config/emulationstation/themes
b,emuelec的设置是在 /storage/.kodi/addons/script.emuelec.Amlogic.launcher/config
这两个,和u盘启动的单纯的emuelec的路径不一样。供你们参考使用

因此,按照这样的方法,把emuelec作为插件安装。这样,其实大大超过了我原来只要一台怀古游戏机的期待值,还多了个Kodi影音中心!!!


第三章节,把emuelec的游戏rom设置到NAS上
N1总共就8G的空间,刷了系统,再放游戏rom,还怎么玩?家里有NAS,就是用来干这样的活的。
参考了Xuewy大大的帖子https://www.right.com.cn/forum/thread-906102-1-1.html
简要的几点如下:
1,自家的NAS上设置好一个目录,专门用来放Rom,
2,这次用winScp连N1,找到/storage下面的rom目录,把rom目录整个copy出来,其目的是里面分类好了各个游戏的rom存放目录,把这个rom目录copy到你nas下面,(后面N1上的这个rom目录可以删除)
3,使用记事本编辑一个纯文本文件,文件名storage-roms.mount,内容如下
[Unit]
Description=cifs mount script
Requires=network-online.service
After=network-online.service
Before=kodi.service

[Mount]
What=//192.168.3.38/nas/roms#你NAS盘存放ROMS的路径
Where=/storage/roms#不需要改
Options=username=root,password=1234,rw,vers=2.0#你NAS的用户名跟密码
Type=cifs

[Install]
WantedBy=multi-user.target
里面需要根据自己情况修改的,我已经加了注释,酌情修改
特别说明,最好了解下你家里的NAS支持那几种共享协议,比如CIFS/比如SMB,同样我装的两台Freenas,因为设置原因,有一台不支持CIFS,只支持SMB,所以我加了vers=2.0 这句参数,强制使用smb协议,否则那台nas上怎么都没办法用上面的参数登陆

4,上面文件做好以后,把里面我的注释删除掉,保存,然后winscp把这个copy到N1,注意,
如果是纯的emuelec,则copy到/storage/.config/system.d
如果是插件的emuelec,则copy到第三章节小贴士的b的那个路径下面,即/storage/.kodi/addons/script.emuelec.Amlogic.launcher/config
也可以放到、storage/.config/system.d

5,Putty到N1,然后依次执行以下命令
systemctl enable storage-roms.mount
systemctl start storage-roms.mount
systemctl status storage-roms.mount
特别要提醒下,第一条命令,storage-roms.mount的前面加上完整路径!!!

6,好了,能看到这的,估计手头怎么都有些老游戏的rom,按类别copy到NAS上那个rom里面的对应目录吧,
然后再在kodi中打开emuelec这个插件,进去时候会稍慢,因为有rom了,然后多了游戏模拟器的类别和你的rom了吧,现在,你可以自己爽了...

7,多句嘴,想从游戏里面退出来,按照第一次你进emuelec让你设置的那个键盘映射,还记得最后一个热键是设置的啥么...哈哈哈,是不是光急着爽,完全不知道我说啥了?...
按hotkey+start,是从游戏退出!记住了,别再拔电重启了...

8,找大家要点福利,目前那个DC下面的斑鸠,好几个版本我进去都是要设置时间,然后就不动了,不知道还有人遇到过,求教?

第四章节,终结章
回到本文开头,因为2018年我在恩山上的,有关用N1刷Volumio,这段时间上来,发现还有很多朋友感兴趣,可惜我一直没有好好的仔细的回复,前面是回不了,后来自己淡了,另外也觉得Volumio占了一个N1,实在有点太浪费,所以就不太想回复了。这里对大家说个抱歉,因此这个章节下面的内容,算是我对大家的一点小小的心意吧,能力有限,只能做到这么多了...

2018年下半年,我当时刷的0.7版本的Volumio,因为觉得当时0.7的基本是最稳定的了,比1.002的版本好,所以一直就那么放着,连了个usb转光纤的DCA,给老婆作为家里的音乐服务器,(NAS上我存了有大概700多G的mp3...),
然后今年本来想把Volumio更新下的,上官网,发现Volumio现在分了6个版本,有点茫然,爬网了半天,江湖传言,因为各种原因,原作者Ballbes150(致敬)不再开发S905的Volumio了,所以除了2018年比0.7版本晚了40天发布的2.419版本以为,就再也没有其他的了,
官网上的4个版本,有传言odroid2的版本支持S905,下载了,尝试了,不行,算了,感觉Volumio也该到了退下的年代了,毕竟人家要做生意..
(不过,恩山里面有大神装了2.6的版本的,如果有需要的话,可以参考)

另外,再加上上面三个章节的玩过来,我觉得一个N1就弄一个UPNP服务,实在太浪费,而且Kodi里面也自带了UPNP服务,所以能否两个整合起来,成为这几天集中思考,亟待解决的大事!!!考虑几点:
1,软件上kodi取代Volumio完全没问题,本身kodi自己就带upnp服务,启动起来感觉比Volumio感觉稳定的多,而且kodi还支持视频..
2,硬件上,目前hdmi连电视,音视频一起到电视,但是不能放着音响不用,而用电视放歌,这好像有点蛋疼,而且电视在客厅,如果用upnp网上放,还得跑客厅去开电视,我听歌又不要坐客厅看kodi的画面,要开电视干啥?天冷加热么?...
3,如果用音响放,那么需要usb-DAC再接到功放,那每次要进kodi软件切换,或者还要插拔线...这他妈的繁琐的...我受不了!!!!
4,于是考虑用软件调整播放的音道(咳咳,注意文明,声道,声道),即网络放歌的,通过usb或者啥,去功放那边;电视这边我到N1本机上放的,声音直接通过HDMI在电视上播放。这两个不要冲突,最主要的,其实要实现的就是不要每次切换,不论硬件还是软件。(其实不过就是个懒字,哈哈哈)

于是,下面开始折腾了......
1,第一思路,kodi这么强大,能否有直接设置,包括kodi的设置页面和web管理页面,翻了个遍,负责任的告诉大家,没有这功能!
2,第二思路,Kodi这么强大,他没有,他插件有吧?比如像上面Emuelec一样,会不会也有Volumio插件?(我这是有多爱Volumio啊),搜索了,无果。
然后再搜"kodi addon for audio channel",翻了两天帖子,还是无果,基本都不搭边...
3,倒是搜到一些插件,比如Krypton的dualAudio插件,不过,现在kodi似乎已经不支持了,还有啥PulseAudio插件,一通乱装,发现都不行,似乎这些都是比较老,或者比较偏的东西,现在都不能用了。
4,无意中看到几个英文帖子,一个是libreelec下用dual audio patch的,那帖子2017年,贴主也用的s905, 只有一个网友回复“那估计会很贵吧blabla...",还有个帖子,一老外也差不多和我同样的需求,再找解决办法,但是大部分网友回复是几乎都不可能实现。
5,因此,感觉自己要即使转换思路,不能再设法不同需求走不同通道了。考虑了下,如果:
HDMI和另外一个通往功放的声道同时发声,这种情况,我可否接受?仔细思考了,发现可以,因为:
网络放音乐的时候,电视多半没开,而我家功放基本都是常年开着的。如果看电视的时候,功放也开,那也没关系,一是反正功放和电视都在客厅,随时方便关功放,都有遥控,二是如果放大片,功放做背景放声音出来,效果也可以,正好解决了我看大片没法用音响的问题。因此:
新的方向是,让两个通道同时发声,这是最后的折衷方案,如果再不行,不折腾了...

6,继续爬网,妈蛋,有好些这种类型的需求,是Windows下面的解决方案,包括Kodi、和kodi的插件。最后,还是万能的谷哥,帮我搜出来一篇coreelec原站上,有人问dualaudio的事情,原帖是德文的,然后有人给了个德文的帖子链接,至此,现在事后诸葛亮一下,方向算是对了!
7,具体方法如下,coreelec其实已经整合了PulseAudio的功能,因此,现在alsa和pulseaudio在coreelec是共存的(不了解这是啥不影响后面,反正我也不太懂,嘿嘿),
所以,我们可以通过调用pulseaudio,在coreelec里面手工建立一个双通道,让两个通道同时发声。原帖是用蓝牙和hdmi两个,我这边偷懒,把对方的一些代码和参数都直接拿过来,反正我就是贴我的也一样,你还是需要改为你自己的。

putty连上Coreelec,
输入:
bluetoothctl
scan on
devices
#以上步骤是打开蓝牙监控
#然后你在N1旁边打开蓝牙设备
#这时候屏幕上应该出下面字样(类似的):
[NEW] (MAC addr.) -> Bluetooth device is displayed when it is recognized
#一个开头是[NEW]的锻炼,表示coreelec找到你的新蓝牙设备,MAC addr那里是一串数字,蓝牙设备的mac地址
#然后输入
trust (MAC-Adr.)
#trust后面带mac地址,让其链接
pair (MAC-Adr.)
#pair后面带mac地址,让其配对
exit
#退出蓝牙命令模块
#其实,以上如果想偷懒,可以直接在kodi里面的蓝牙部分配对,我就是这么操作的,哈哈哈

#设置
还是putty到coreelec,

#输入
pactl load-module module-udev-detect
pactl list short sinks

#屏幕会出现类似以下的内容

3 alsa_output.0.hdmi-stereo module-alsa-card.c s16le 2ch 44100Hz IDLE
4 bluez_sink.00_75_58_BC_8B_08.a2dp_sink module-bluez5-device.c s16le 2ch 48000Hz RUNNING

#以上是典型的两个,还会有其他的一些设备,注意看,找到你自己的这两个设备,第一个是hdmi-stereo,这个是hdmi到电视的
#第二个bluez开头的,是蓝牙的
#然后输入以下命令行

pactl load-module module-combine-sink sink_name=combined slaves=bluez_sink.00_75_58_BC_8B_08.a2dp_sink,alsa_output.0.hdmi-stereo
pactl list short sinks

#这两行命令,第一个是把两个通道捆到一起,建立一个”虚拟的“"combined"通道,
#第二个是查看目前的通道
#因此多半会出现以下的显示

3 alsa_output.0.hdmi-stereo module-alsa-card.c s16le 2ch 44100Hz RUNNING
4 bluez_sink.00_75_58_BC_8B_08.a2dp_sink module-bluez5-device.c s16le 2ch 48000Hz RUNNING
5 combined module-combine-sink.c s16le 2ch 48000Hz RUNNING

#可以看到,多了一个combined的通道
#至此,双通道建立了!!!!就这么简单!!!!

#但是,还是不能用,因为,只有在启动的时候,建立这样的通道,才能用起来,这种启动完毕再建的,不行!
我的想法是,kodi如果启动了,就不会再去查询调用这些通道了,所以需要在kodi启动之前完成这些。
因此,原帖里面也说了,要把这些写到autostart.sh里面,随机器启动才行

#putty到coreelec,然后
nano /storage/.config/autostart.sh
然后输入,以下内容

pactl load-module module-udev-detect
pactl load-module module-combine-sink sink_name=combined slaves=bluez_sink.00_75_58_BC_8B_08.a2dp_sink,alsa_output.0.hdmi-stereo
#注意里面的bluez后面的mac地址,用你自己的,另外,里面的点,横,这边标点多,注意不要出错。
#用control+x退出,保存
#reboot重启N1,去kodi里面把音频输出设置为最后一个,完工!!!

#亲测,勉强成功!

8,请注意,上面最后一句话,我说的是勉强成功,因为,蓝牙连接的实在太不稳定了,个人估计的原因是,蓝牙连接上N1的时间,太随机了,因此,无法确保它一定是在模块启动之前就连上,所以造成无法确保蓝牙可以参与建立combined通道。
因此,最后我使用的是一个usb的DAC,这次完全成功。而且很稳定。
使用usd的dac的话,就不需要再调用蓝牙命令,而是直接用pactl list short sinks即可以看到,我的设备码如下:
alsa_output.usb-BurrBrown_from_Texas_Instruments_USB_AUDIO_DAC-00.analog-stereo,
所以最后我的autostart.sh的内容如下
pactl load-module module-udev-detect
pactl load-module module-combine-sink sink_name=combined slaves=alsa_output.0.hdmi-stereo,alsa_output.usb-BurrBrown_from_Texas_Instruments_USB_AUDIO_DAC-00.analog-stereo
千万千万要注意里面的点/横线/下划线,不要弄错,否则命令输出错误。
(可以使用sh命令,运行下看上面的autostart.sh是否语句正确)
9确保启动以后一切正常,用putty上去看过没问题了,再进kodi,系统,把声道改为最后一个,完美,收工。
最后放张图,这是前面用蓝牙测试时截取的,供参考


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 5恩山币 +6 收起 理由
5asdfasdf + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
5417 + 2 几亿网民,我们俩竟然神奇的在恩山相遇了!来,1分也是分!
无幽 + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
ujszdj + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!
天天顺心 + 1 感谢你的分享,无论怎样,你都是最无私的人!来,说说,你E盘上还有啥一起给我吧!

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
发表于 2020-1-28 18:54 | 显示全部楼层
辛苦。难得小白也能看懂
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-28 18:56 | 显示全部楼层
前排围观大佬
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-28 19:27 | 显示全部楼层
收藏!虽然很少会用上,要的时候就会有用,并且按楼主的思路不知道能否在安卓上实现。
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-28 19:28 | 显示全部楼层
大佬 学习一下
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-28 21:08 | 显示全部楼层
精品文章,感谢分享
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-28 22:04 来自手机 | 显示全部楼层
全是干货,果断收藏
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-28 22:13 | 显示全部楼层
支持大佬,详尽的很啊
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-28 23:26 | 显示全部楼层
systemctl status storage-romgs.mount
上面多了个g

点评

感谢指正,已经修改了  详情 回复 发表于 2020-1-28 23:37
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-28 23:35 来自手机 | 显示全部楼层
我是偷懒,用蓝牙耳机,不然电视声音不中听,外接喇叭怕麻烦
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

 楼主| 发表于 2020-1-28 23:37 | 显示全部楼层
xchx 发表于 2020-1-28 23:26
systemctl status storage-romgs.mount
上面多了个g

感谢指正,已经修改了
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-29 00:36 | 显示全部楼层
太感谢了,正不知该怎么折腾了,而且能看懂
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-29 07:19 | 显示全部楼层
支持一个,很好的帖子,以后参考
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-31 19:42 | 显示全部楼层
nas放roms那里,我已经建好了storage-roms.mount文件,但是当我systemctl enable /.kodi/addons/script.emuelec.Amlogic.launcher/config/storage-roms.mount时,它提示Failed to enable unit: Unit file /.kodi/addons/script.emuelec.Amlogic.launcher/config/storage-roms.mount does not exist.

点评

systemctl enable /storage/.kodi/addons/script.emuelec.Amlogic.launcher/config/storage-roms.mount 你试试这个 第一个/是代表根目录。  详情 回复 发表于 2020-2-1 01:39
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

发表于 2020-1-31 20:37 | 显示全部楼层
兄弟,真的太感谢了
帖子很长,正常认真拜读
想问一下一个关键问题,兄弟的这个方法,能同时输出到2个蓝牙音箱设备么?
我手头上有几个斐讯的R1音箱,一直想实现一个N1带2个R1输出音乐

点评

把emuelec的游戏rom设置到NAS上  详情 回复 发表于 2020-5-25 23:04
理论上,完全可以,哪怕3个4个都可以, 但是文章里面我说了,蓝牙的链接,用这种方法,非常不稳定,我不知道是不是因为启动时蓝牙的配对链接时间过长造成的模块加载失败还是怎么的,总之,折腾了两天,蓝牙的设备,  详情 回复 发表于 2020-2-1 01:37
我的恩山、我的无线 The best wifi forum is right here.
回复

使用道具 举报

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

本版积分规则

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-3-29 15:58

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

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