玩转Volumio的DLNA特性

文章更新:
20170301 初次成文

问题提出:
由于树莓派3代板载无线模块,而树莓派2代也可以通过连接USB无线网卡或者直插网线实现网络通信,又因为Volumio搭载在树莓派上,所以在Volumio的早期版本就实现了UPNP/DLNA特性。通过此特性,在局域网中"遥控"Volumio成为了可能。

在这篇文章中,小苏将为大家介绍一下如何多角度玩转Volumio的DLNA特性,看完这篇文章后,你一定会感受DLNA技术为我们带来的便利。

准备工作:
硬件环境:

  1. 装有Dac扩展板,烧写好Volumio系统的的树莓派(小苏使用的是树莓派3代B型,Dac扩展板选用的是PiFi Dac+ v2.0);
  2. 路由器(因为在宿舍用嘛,所以小苏用的是斐讯K2);
  3. 安卓手机(这个随意)
  4. 网线,网卡等(可选)

软件环境:

  1. BubbleUPnp播放器(安卓应用)
  2. Volumio系统(烧写到树莓派的SD卡中)

在正文开始之前,小苏还需要介绍一下DLNA协议的功能模块:

Digital Media Server(DMS):服务器,简单来说就是媒体文件的提供者
Digital Media Renderer(DMR):渲染器,简单来说就是媒体文件的受控端和输出者
Digital Media Controller(DMC):控制器,简单来说就是控制端
Digital MediaPlayer(DMP):播放器(在本文章中此模块可忽略)
(以上资料来自百度百科)

解决方案:
先决条件:使手机与树莓派处在同一局域网下,如果你是Volumio1.x版本,那么你可能需要在WebUI中打开"UPNP/DLNA服务",从Volumio2开始,这项功能默认开启且无法关闭。

  1. 推送手机中的音乐文件到扩展板:

(服务器:BubbleUPnp | 渲染器:Volumio | 控制器:BubbleUPnp)

在手机上打开BubbleUPnp播放器,划出侧边栏,"RENDERER"(渲染器)选择:"Volumio","LIBRARY"(媒体库)选择"Local and Cloud"。点击底栏中的"LIBRARY"后,你可以看到手机中的媒体文件,点击"Music"后可以进入音乐媒体库,之后就可以在音乐媒体库中选择相应的类别浏览并播放音乐了。在底栏的"PLAYLIST"标签中,你可以长按专辑封面图片上下拖动来调整播放列表的播放顺序,在"NOW PLAYING"标签中,你可以进行查看当前音乐的播放进度,控制音乐播放行为等操作。

Screenshot_20170301-204955.png

Screenshot_20170301-205632.png

Screenshot_20170301-210250.png

Screenshot_20170301-210309.png

  1. 推送Volumio中的音乐到手机:

(服务器:MiniDLNA | 渲染器:BubbleUPnp | 控制器:BubbleUPnp)

由于Volumio基于Rasbain,所以我们可以在Volumio上安装DLNA服务器程序,由DLNA服务器提供媒体文件推送到其他设备上播放。在这个方案中,我们需要在Volumio中安装MiniDLNA程序作为DLNA服务器:

sudo apt-get install minidlna #安装MiniDLNA程序

MiniDLNA程序安装完成后,由于媒体文件目录未指定,我们还需要修改MiniDLNA的配置文件来指定媒体文件目录:

sudo cp /etc/minidlna.conf /etc/minidlna.conf.bak #备份MiniDLNA配置文件
sudo vim /etc/minidlna.conf #修改MiniDLNA配置文件

在这个文件中,我们可以找到以下内容:

# If you want to restrict a media_dir to a specific content type, you can
# prepend the directory name with a letter representing the type (A, P or V),# followed by a comma, as so:
#   * "A" for audio    (eg. media_dir=A,/var/lib/minidlna/music)
#   * "P" for pictures (eg. media_dir=P,/var/lib/minidlna/pictures)
#   * "V" for video    (eg. media_dir=V,/var/lib/minidlna/videos)

因为我们需要推送树莓派SD卡中的"音频文件"到手机,所以我们在以上内容的下一行添加:

media_dir=A,/var/lib/mpd/music

其中/var/lib/mpd/music是Volumio的音乐库目录,这样配置可以使MiniDLNA扫描/data/INTERNAL/mnt/USB/mnt/NAS下的音乐文件。如果你的SD卡中有图片或者视频文件想要推送到其他设备,MiniDLNA同样可以做到,你只需要在这一行下面接着配置图片和视频文件的扫描目录即可。填写完成后,重启Volumio,打开浏览器,访问http://树莓派在局域网中的IP地址:8200,你可以看到MiniDLNA的工作状态,包括媒体库中的媒体文件数目,已连接设备的IP地址已经其Mac等(如果媒体文件较多的话,等待MiniDLNA扫描完成可能需要一段时间):

Screenshot_20170301-213444.png

以上内容配置完毕后,在手机上打开BubbleUPnp播放器,划出侧边栏,"RENDERER"(渲染器)选择:"Local Renderer","LIBRARY"(媒体库)选择"volumio:minidlna",在底栏的"LIBRARY"中可以看到Volumio媒体库中的文件。播放及控制步骤同第一部分。

Screenshot_20170301-214448.png

  1. 在Volumio上播放树莓派SD卡中的本地音乐

(服务器:MiniDLNA | 渲染器:Volumio | 控制器:BubbleUPnp)

在第二部分中我们已经安装了MiniDLNA服务器,所以我们可以使用BubbleUPnp控制Volumio播放树莓派SD卡中的本地音乐。也就是说,服务器和渲染器都在Volumio系统中。在BubbleUPnp中,"RENDERER"(渲染器)选择:"Volumio","LIBRARY"(媒体库)选择"volumio:minidlna"。

Screenshot_20170301-215550.png

  1. 使用BubbleUPnp播放手机中的本地音乐

(服务器:BubbleUPnp | 渲染器:BubbleUPnp | 控制器:BubbleUPnp)

这就不关DLNA的事儿了,纯粹就是本地播放手机中的音乐(滑稽脸)。

参考资料:
DLNA - 百度百科:
https://wapbaike.baidu.com/item/DLNA/10415195

HOW TO START THE DLNA SERVER FOR VOLUMIO 1.5 ON THE PI - Volumio.org:
https://volumio.org/forum/how-start-the-dlna-server-for-volumio-the-t2401.html

添加新评论