squeezebox 并解决中文、APE选曲定位问题 - 综艺影视 - 老板娱乐网

squeezebox 并解决中文、APE选曲定位问题

罗技的Squeezebox Server知道吗?如果不知道就不要往下看了

 

下载的音乐很多都是APE+CUE格式的,怕麻烦没进行转码等操作。
所以之前一直采用GUOQ童鞋提供的windows平台下squeezebox server 7.5.3的解决方案
本次在GUOQ童鞋(QQ玩家群里的4WD)协助下,解决了以前一直头疼的问题
为了便于其他有同样需求的童鞋,花时间整理全部过程如下,希望对大家有所帮助。

 

1. 下载Squeezebox Server,版本的补充说明

之前在WINDOWS下就用版本7.5.3,本次安装的同样采用7.5.3
想用新版本的可以自己尝试,但如下配置文件路径、启停服务方法等可能会有不同
如手头没有SBS在debian平台的7.5.3版,可从如下URL下载
安装包  squeezeboxserver_7.5.3_all.deb

 

2. 在debian上安装Squeezebox Server

在我安装的debian x86_64版,需要在安装SBS前补齐部分安装包,然后再安装SBS, 其他环境可参照
apt-get update
apt-get install libjpeg8 libpng12-0 libgif4 libexif12
sudo dpkg -i squeezeboxserver_7.5.3_all.deb
-期间报“missing LSB tags and overrides”的警告warning,暂时无视

 

3.安装后的配置和重启方法

这里简单掠过~~~
给大家一个SBS 7.5.3版重启服务的方法,以免修改配置后每次都重启服务器了
/etc/init.d/squeezeboxserver {start|stop|restart|force-reload} 

 

4. 设置Squeezebox Server 7.5.3 支持中文
这部分内容和GUOQ童鞋之前在windows版本提到的解决方案一致。
可参照之前GUOQ童鞋在色影无忌论坛中如下话题的225帖

详细如下:

4.1.解决CUE汉字乱码问题
进入  /usr/share/perl5/Slim
修改 Slim/Formats/Playlists/CUE.pm文件,将:
    for my $line (@$lines) {
        my $enc = Slim::Utils::Unicode::encodingFromString($line);
   改为:
    for my $line (@$lines) {
     if ($line =~ /^FILE\s+\"(.*)\"/i) {  }
     else{
          $line=Encode::decode("GBK",$line);
       }
  my $enc = Slim::Utils::Unicode::encodingFromString($line); 
   即可(对APE和FLAC都有效)

 

4.2.解决mp3汉字乱码问题 
进入  /usr/share/perl5/Slim
修改 Slim/Formats/MP3.pm文件,将:
   next if $no_overwrite && exists $tags->{$new};
$tags->{$new} = delete $tags->{$old};
   改成:
   next if $no_overwrite && exists $tags->{$new};
$tags->{$new} = Encode::decode("GBK",delete $tags->{$old});

 

5.  解决linux上的SqueezeBox Server播APE不能选曲和定位的问题。

重头戏出场了!!
之前NAS上不能直接装SBS, 困扰我的主要就是这个问题,所以SBS只好装windows平台下
这个关键问题不解决,我还是只能使用GUOQ童鞋提供的windows下SBS 7.5.3解决方案。
先说明一下:
SueezeboxServer播放ape格式音乐文件时调用MAC(Monkey's Audio Console)进行音频解码
这次专门找GUOQ童鞋花时间基于Monkey's Audio Console v3.99的linux的源码
修改为支持SBS的APE选曲和定位的macSBS,并在debian环境下编译测试通过
编译测试使用的环境是 【Debian GNU/Linux 6.0.2   x86_64版】

文件可从此处下载。

5.1 macSBS的下载

下载后,把macSBS复制到如下路径
/usr/share/squeezeboxserver/Bin/i386-linux/macSBS
然后用如下命令修改文件权限
# chmod 755 macSBS

 

5.2. macSBS执行测试检查
输入如下命令
# cd /usr/share/squeezeboxserver/Bin/i386-linux
# ./macSBS
正常的话会有如下软件提示信息出来.
#######################################################
root@U-NAS:/home/admin/squeezebox# mac
--- Monkey's Audio Console Front End (v 3.99) (c) Matthew T. Ashland ---
GUOQ 2013.1.15 add Seek Decompress for SqueezeboxServer
Proper Usage: [EXE] [Input File] [Output File] [Mode]
。。。。
#######################################################
   
5.3 SqueezeBox Server的后续配置
修改SBS的配置文件convert.conf
我这里SBS 7.5.3版的配置文件是:
/etc/squeezeboxserver/convert.conf
修改原内容
         ape flc * *
         # F
         [mac] $FILE$ - -d | [flac] -cs --totally-silent --compression-level-0 -
 
改成:
          ape flc * *
         # FT:{START=--skip=%s}U:{END=--until=%v}
         [macSBS] $FILE$ - -s $URL$ $START$ | [flac] -cs --totally-silent --compression-level-0 -

 

最后一步工作:

重启squeezeboxserver就可以了 (当然,你也可以整个重启服务器)
一切OK! Enjoy your music!