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 RadioAllPlay JukeBoxPanasonic Music StreamingMonster Soundstage。可以为Andorid下载的程序包括AllPlay RadioAllPlay JukeBoxPanasonic Music Streaming。下面以iOS的应用AllPlay Radio为例,讲述如何利用该应用程序进行远程控制。

首先,打开应用程序以后,选择菜单,就可以看到各种资源,如下图所示。

  

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

4. 问题调试

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

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

如果没有看到该服务,则说明树莓派和当前的设备不在同一个局域网,或者应用程序没有启动。

最后来一张实物图吧,good day~~

Windows 10 IoT Serials 7 – 如何用树莓派制作家庭流媒体播放器的更多相关文章

  1. Windows 10 IoT Serials 5 - 如何为树莓派应用程序添加语音识别与交互功能

    都说语音是人机交互的重要手段,虽然个人觉得在大庭广众之下,对着手机发号施令会显得有些尴尬.但是在资源受限的物联网应用场景下(无法外接鼠标键盘显示器),如果能够通过语音来控制设备,与设备进行交互,那还是 ...

  2. Windows 10 IoT Serials 4 - 如何在树莓派上使用Cortana语音助手

    从Windows 10 IoT Core 14986版本开始,微软已经加入Cortana语音助手功能.之前,我们只能使用本地语音识别,需要编写应用程序,下载到设备中才能实现.从现在开始,微软已经从系统 ...

  3. Windows 10 IoT Serials 2 - Windows 10 IoT RTM 升级教程

    7月29日,微软推出了Windows 10 for PC的正式版,其版本号是Build 10240.近两天官方说已经有4700万的下载安装量,同时这个数字还在不断攀升.另外,除了Windows 10 ...

  4. Windows 10 IoT Serials 3 - Windows 10 IoT Core Ardunio Wiring Mode

    Maker社区和智能硬件的朋友一定知道Arduino,很多3D打印机都是用它做的.为了迎合这一大块市场,微软在基于Intel Galileo的Windows 8.1 IoT中就是使用这种基于Ardui ...

  5. 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)运行的是 ...

  6. Windows 10 IoT Serials 9 – 如何利用IoTCoreAudioControlTool改变设备的音频设备

    大家知道,在Windows 10 IoT Core上,如果用户外接了USB声卡.带有麦克风的摄像头之类的硬件,就会有多个音频设备可以用.但是,系统目前并没有提供直接的UI来设置音频的输入或者输出设备. ...

  7. Windows 10 IoT Serials 6 - 如何修改IoTStartupOnBoot.cmd文件

    使用Windows 10 IoT Core系统的朋友应该会比较熟悉IoTStartupOnBoot.cmd文件,该文件是系统启动以后加载的批处理文件,一般会包含应用.服务和后台的启动,比如WinRM. ...

  8. Windows 10 IoT Serials 8 – 如何改变UWP应用的目标平台

    Windows Insider计划直接加速了Windows系统的迭代,缩短了系统发布的周期.就Windows 10 IoT Core而言,迭代的速度和Windows 10 for PC.Windows ...

  9. Windows 10 IoT Serials 10 – 如何使用OCR引擎进行文字识别

    1. 引言 OCR (Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗.亮的模式确定其形状,然后用字符识别方 ...

随机推荐

  1. [工作总结] QA小鸟一年了

    夏至又至,在北京360的一年过去了.作为一名QA,我时常感到迷惑,如何靠大部分的手工测试+少部分的自动化测试来保证产品功能的质量.对于开发完成后,给到我手上的文件和功能说明,我很少有信心说能够通过自己 ...

  2. IPv4地址学习总结

    一. IPv4地址格式 网络互连的一个重要前提条件是要有一个有效的地址结构,并且所有的互连网络用户都应遵守这个地址结构.因为只有这样所有的互连网络用户才能在统一的规定下相互之间通讯.这个地址结构可以有 ...

  3. 苹果手机上开发微信公众号(wap)遇到的问题解决方法

    1.样式 苹果 手机会自行强制css样式,比如input会变得面目全非,你可以加上input{-webkit-appearance: none;}恢复原貌! 2.jquery的live错误,苹果手机上 ...

  4. 模块化写法-IIFE解析

    一.IIFE解释 全拼Imdiately Invoked Function Expression,立即执行的函数表达式.  像如下的代码所示,就是一个匿名立即执行函数: (function(windo ...

  5. OC 常用方法记录

    1.排序 给数组排序 按照字母的升序 //对key按字母升序排序 NSArray *sortedArray = [keys sortedArrayUsingComparator:^NSComparis ...

  6. Docker实战--部署简单nodejs应用

    如何在Docker的container里运行Node.js程序 主体思路:一个简单的Node.js web app,来构建一个镜像,然后基于这个镜像,运行一个容器,从而实现快速部署. 操作环境: 虚拟 ...

  7. ACM 海贼王之伟大航路(深搜剪枝)

    "我是要成为海贼王的男人!" 路飞他们伟大航路行程的起点是罗格镇,终点是拉夫德鲁(那里藏匿着"唯一的大秘宝"--ONE PIECE).而航程中间,则是各式各样的 ...

  8. WDCP下安装PHPWind

    创建整站跟新建站点的区别是创建整站会一并生成ftp跟mysql数据库 这边只要填写一个域名(如果你有域名就填写下域名 如果你没有域名 或者跟我一样到这步去申请域名的可以填写ECS公网ip否则无法访问新 ...

  9. 基于nginx+lua+redis高性能api应用实践

    基于nginx+lua+redis高性能api应用实践 前言 比较传统的服务端程序(PHP.FAST CGI等),大多都是通过每产生一个请求,都会有一个进程与之相对应,请求处理完毕后相关进程自动释放. ...

  10. Java显式锁学习总结之六:Condition源码分析

    概述 先来回顾一下java中的等待/通知机制 我们有时会遇到这样的场景:线程A执行到某个点的时候,因为某个条件condition不满足,需要线程A暂停:等到线程B修改了条件condition,使con ...