Windows 10 IoT Serials 7 – 如何用树莓派制作家庭流媒体播放器
Windows 10平台引入了AllJoyn开源软件框架,它提供了一组服务可以创建动态近端网络,让设备可以相互连接实现功能交互。目前,AllJoyn开源软件框架由AllSeen联盟负责管理。AllSeen联盟的成员都是业界的领导厂商,如微软、索尼、LG、Qualcomm、松下、夏普、思科、海尔等。AllJoyn目的是为物联网设备的彼此互通建立一个开放性的标准,它提供了各种平台的支持,包含:Windows、iOS、Android、Linux、OS X。开发语言则支持:C、Java、Objective-C、JavaScript。本文以树莓派为例,详细介绍如何利用Windows 10 IoT Core设备来制作一个基于AllJoyn的流媒体播放器,并利用iOS和Android应用来进行远程控制和播放。
1. 硬件准备
- 树莓派(2代或者3代),系统版本在10586以上。注意,树莓派2代没有板载的WiFi功能,需要外加WiFi模块。
- 3.5mm接口的音响。注意,由于Windows 10 IoT Core并没有提供HDMI输出的音频,所以需要在树莓派板载的3.5mm音频接口输出音频。
- 显示器(可选),并不是必须。
2. 应用程序部署
这里给出appx应用程序包的下载,链接。用户可以通过Windows Device Portal来部署,具体方法如下:
首先,给树莓派通电,然后通过以太网或者WiFi加入局域网。
接着,在PC上使用浏览器访问http://IP:8080,其中的IP就是树莓派的局域网IP地址。输入用户名和密码,默认为Administrator和p@ssw0rd。
然后,在侧边栏中选择Apps->Apps Manager,如下图所示。

在其中的Install App中,选择下载的文件,其中App Package选择“AllPlayMediaPlayer_1.0.0.0_arm.appxbundle”文件,Certificate选择下载文件中的“AllPlayMediaPlayer_1.0.0.0_arm.cer”文件,Dependency选择下载文件夹Dependency/ARM目录下的所有文件。如下图所示。

然后点击Deploy下的Go按钮,开始部署。经过一段时间以后,部署完成。用户可以通过Apps目录查找应用程序是否已经安装。如果成功安装,则可以看到AllPlay MediaPlayer应用,并可以通过下拉菜单来启动该应用,如下图所示。

之后,应用程序启动,如果用户给树莓派连接了显示器,就可以看到应用程序的界面,如下图所示。

应用程序界面主要显示播放的内容和进度。
3.控制端应用程序
目前,能够从App Store下载到的应用包括AllPlay Radio、AllPlay JukeBox、Panasonic Music Streaming和Monster Soundstage。可以为Andorid下载的程序包括AllPlay Radio、AllPlay JukeBox和Panasonic Music Streaming。下面以iOS的应用AllPlay Radio为例,讲述如何利用该应用程序进行远程控制。
首先,打开应用程序以后,选择菜单,就可以看到各种资源,如下图所示。

选择资源以后,应用程序会播放相应的内容。如下图所示。

4. 问题调试
在Windows应用商店可以下载到IoT Explore for AllJoyn和AllJoyn Device Dashboard,可以用来检测树莓派应用是否已经正常启动。如下图所示。

如果已经正常启动,可以在应用中看到树莓派给外部应用的AllJoyn接口,如下图所示。

如果没有看到该服务,则说明树莓派和当前的设备不在同一个局域网,或者应用程序没有启动。
最后来一张实物图吧,good day~~

Windows 10 IoT Serials 7 – 如何用树莓派制作家庭流媒体播放器的更多相关文章
- Windows 10 IoT Serials 5 - 如何为树莓派应用程序添加语音识别与交互功能
都说语音是人机交互的重要手段,虽然个人觉得在大庭广众之下,对着手机发号施令会显得有些尴尬.但是在资源受限的物联网应用场景下(无法外接鼠标键盘显示器),如果能够通过语音来控制设备,与设备进行交互,那还是 ...
- Windows 10 IoT Serials 4 - 如何在树莓派上使用Cortana语音助手
从Windows 10 IoT Core 14986版本开始,微软已经加入Cortana语音助手功能.之前,我们只能使用本地语音识别,需要编写应用程序,下载到设备中才能实现.从现在开始,微软已经从系统 ...
- Windows 10 IoT Serials 2 - Windows 10 IoT RTM 升级教程
7月29日,微软推出了Windows 10 for PC的正式版,其版本号是Build 10240.近两天官方说已经有4700万的下载安装量,同时这个数字还在不断攀升.另外,除了Windows 10 ...
- Windows 10 IoT Serials 3 - Windows 10 IoT Core Ardunio Wiring Mode
Maker社区和智能硬件的朋友一定知道Arduino,很多3D打印机都是用它做的.为了迎合这一大块市场,微软在基于Intel Galileo的Windows 8.1 IoT中就是使用这种基于Ardui ...
- Windows 10 IoT Serials 1 - 针对Minnow Board MAX的Windows 10 IoT开发环境搭建
目前,微软针对Windows IoT计划支持的硬件包括树莓派2,Minnow Board MAX 和Galileo (Gen 1和Gen 2).其中,Galileo (Gen 1和Gen 2)运行的是 ...
- Windows 10 IoT Serials 9 – 如何利用IoTCoreAudioControlTool改变设备的音频设备
大家知道,在Windows 10 IoT Core上,如果用户外接了USB声卡.带有麦克风的摄像头之类的硬件,就会有多个音频设备可以用.但是,系统目前并没有提供直接的UI来设置音频的输入或者输出设备. ...
- Windows 10 IoT Serials 6 - 如何修改IoTStartupOnBoot.cmd文件
使用Windows 10 IoT Core系统的朋友应该会比较熟悉IoTStartupOnBoot.cmd文件,该文件是系统启动以后加载的批处理文件,一般会包含应用.服务和后台的启动,比如WinRM. ...
- Windows 10 IoT Serials 8 – 如何改变UWP应用的目标平台
Windows Insider计划直接加速了Windows系统的迭代,缩短了系统发布的周期.就Windows 10 IoT Core而言,迭代的速度和Windows 10 for PC.Windows ...
- Windows 10 IoT Serials 10 – 如何使用OCR引擎进行文字识别
1. 引言 OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗.亮的模式确定其形状,然后用字符识别方 ...
随机推荐
- C#中let字句
应用场景: 在查询表达式中,存储子表达式的结果有时很有用,这样可以在随后的子句中使用. 可以使用 let 关键字完成这一工作,该关键字可以创建一个新的范围变量,并且用您提供的表达式的结果初始化该变量. ...
- 启动activity与使用Intent通信机制解析
我们都知道,一个activity启动另一个activity最简单的方式就是使用startActivity方法: public void startActivity (Intent intent) 但是 ...
- Eval与Bind的区别
bind和eval都是ASP.NET中的函数,而且都有对将数据获取到Html中的功能.那么,它们在使用的时候有什么区别呢?在我们编程的时候,在某种情况下,用哪个函数更加合适呢? 区别 用法: 1. b ...
- 时间戳 获得当前时间 -iOS
//获取当前时间戳 static inline NSString * getTimeStamp(){ NSTimeInterval d=[[NSDate date] timeIntervalSince ...
- java 多线程安全问题-同步代码块
/* 多线程的安全问题: while(true) { if(tick>0) { //线程0,1,2,3在余票为1时,都停滞在这里,之后分别获得CPU执行权,打印出0,-1,-2等错票 Syste ...
- cli/php.ini和fpm/php.ini的区别
1. 当从命令行执行PHP binary时,cli/php.ini会被使用,你可以通过在命令行运行php --ini来查看. 2. 当PHP运行做为FPM时,会使用fpm/phh.ini,其中一种情况 ...
- Spring Mvc中使用Task实现定时任务,以及遇到的一个问题
Spring中实现定时任务其实很简单,可以使用spring中自带的task 相当于轻量级的Quartz,并且spring 3.0 之后支持注解的方式,使用起来非常简单,方便,具体实现如下: 第一步,修 ...
- IOS缓存管理之YYCache使用
前言: 最近一直在致力于为公司app添加缓存功能,为了寻找一个最佳方案,这几天先做个技术预研,经过这两天的查找资料基本上确定了两个开源框架进行选择,这两个开源框架分别是:PINCache.YYCach ...
- Activiti工作流(一)之基本操作介绍
工作流的概念: 工作流(Workflow),就是"业务过程的部分或整体在计算机应用环境下的自动化",它主要解决的是"使在多个参与者之间按照某种预定义的规则传递文档.信息或 ...
- css4激动人心的新特性及浏览器支持度
CSS3的选择器提供了很多像:nth-child这样有用的选择器,并且得到浏览器支持.CSS的第四代 选择器CSS4选择器),经我们带来了更多有用的选择器. 1.否定伪类:not 否定伪类选择器其实在 ...