恩山无线论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
当贝投影
查看: 93269|回复: 128

【原创】把TL-WR703N打造成真正的AirPlay播放器

    [复制链接]
发表于 2013-1-24 16:22 | 显示全部楼层 |阅读模式
本帖最后由 sancome 于 2013-3-2 14:39 编辑

更简单的版本已经发布,看这里【原创】把TL-WR703N打造成真正的AirPlay播放器(续)不需U盘直装版

之前看到过一篇文章《TL-WR703N刷PulseAudio固件实现伪AirPlay》,但那毕竟是“伪”的,于是就想着实现真正的AirPlay播放,借助于强大的Google和自己不懈的努力测试,终于算是完成了,这里分享给大家。
要实现的目标:wr703n有线口用来连接电脑进行安装调试,完成之后不再使用,wr703n通过无线连接家里已有的无线网络,iPad也在同一无线网络内,可以AirPlay到wr703n实现音频输出。
需要准备的硬件:wr703一个,因为wr703n的flash只有4MB,无法满足安装软件的要求,所以需要一个U盘(几百兆的就可以了)来扩展,USB HUB一个,USB声卡一个,苹果设备一个,可以AirPlay输出测试。其他诸如音频连接线和音箱等就不做赘述。下图是我准备的东西,给大家做个参考,因为我的USB声卡额外提供了一个USB接口,所以我把U盘插到声卡上,省了一个USB HUB。

IMG_20130124_132115.jpg

需要准备的软件:为了下载文件到wr703n,我们需要一个Web Server(推荐用HFS),还需要一个Telnet和SSH连接的工具(用Putty或者SecureCRT都可以),这两个工具请自己下载,我把需要用到Openwrt文件打包了,下载:http://pan.baidu.com/share/link?shareid=265600&uk=587667030

下面开始安装,用网线把电脑和wr703n连接起来,把电脑的IP设置为192.168.1.2,开始操作。
1、如果是原厂固件,直接用openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-factory.bin升级
2、如果已经是Openwrt,那么在Openwrt下恢复固件:
#cd /tmp
#mtd -r write openwrt-ar71xx-generic-tl-wr703n-v1-squashfs-sysupgrade.binfirmware
刷完重启之后,通过telnet192.168.1.1来登录,更改密码passwd,退出,以后就可以用ssh来登录了。

接下来我们做些准备工作,首先修改opkg的更新源为本地服务器。
#vi /etc/opkg.conf
把第一行和最后一行注释掉,再添加一行

因为wr703n只有4M空间,无法安装所需要的软件,所以我们要把系统挂载到U盘上,依次执行下列命令,这里会把U盘格式化成ext4文件系统。
#mke2fs -j /dev/sda
#mount /dev/sda /mnt
#mkdir /tmp/root
#mount -o bind / /tmp/root
#cp /tmp/root/* /mnt -a
#umount /tmp/root

完成后,修改/etc/config/fstab文件的相应字段,其他字段不动,让系统启动自动挂载。
config mount
        option target   /
        option device   /dev/sda
        option fstype   ext4
        option options  rw,sync
        option enabled  1
        option enabled_fsck 0
执行如下命令让其开机生效
#/etc/init.d/fstab enable
reboot重启,df -h看根分区容量是不是变大了,这样就成功把系统挂载到u盘上了。

现在我们要把wr703n连接到家里的无线网,这里贴出/etc/config/network和wireless文件的例子,请根据实际情况自行修改。
#vi /etc/config/network
config interface 'loopback'
        option ifname 'lo'
        option proto 'static'
        option ipaddr '127.0.0.1'
        option netmask '255.0.0.0'

config interface 'lan'
        option ifname 'eth0'
        option type 'bridge'
        option proto 'static'
        option ipaddr '192.168.1.1'
        option netmask'255.255.255.0'

config interface 'wlan'
        option proto 'dhcp'
        option hostname'ShairPort'

#vi /etc/config/wireless
config wifi-device  radio0
        option type     mac80211
        option channel  auto
        option macaddr  38:83:45:36:41:42
        option hwmode   11ng
        option htmode   HT20
        list ht_capab   SHORT-GI-20
        list ht_capab   SHORT-GI-40
        list ht_capab   RX-STBC1
        list ht_capab   DSSS_CCK-40

config wifi-iface
        option device   radio0
        option network  wlan
        option mode     sta           #无线的模式,不要选错
        option ssid     Tomato        #家里无线网络的SSID名称,根据实际情况修改
        option encryption psk2         #加密方式,根据对端来选择,建议使用WPA2/AES
        option key      12345678     #无线连接密码,根据实际情况修改

修改完成之后就可以重启网络了/etc/init.d/network restart,然后执行ifconfig,看看wlan0口是否已经获取到IP地址了。

下面我们安装一下USB声卡和声音控制的组件
#cd /tmp
#opkg update
#opkg install kmod-usb-audio
#ls /dev     #显示audio、dsp表示声卡安装成功
#opkg install alsa-utils
#alsamixer  #图形界面调节音量, 用上下箭头调节,调节音量至合适大小(建议30)
需要注意的是如果音量最大会出现单声道和爆音的情况,而且Openwrt每次重启之后声卡默认音量都是最大声,所以我们需要设置开机自动减小音量。
#vi /etc/rc.local在exit 0之前添加一行
amixer set PCM 30%  #让声卡音量为30%,防止单声道和爆音
这里的PCM要根据实际情况修改,运行amixer可以列出当前有哪些声卡

然后开始正式安装ShairPort模拟Airplay
#opkg install shairport
#opkg install shairport-perl

安装完成之后,我们需要修改/usr/bin/shairport.pl文件的第52行为如下内容,或者可以自己定义名字:
my $apname = "ShairPort";

修改/etc/init.d/shairport文件
#!/bin/sh /etc/rc.common
START=49
start() {
        perl /usr/bin/shairport.pl -D
}
stop() {
        killall perl
}
把其中的START=49 改为69,也就是保证在dbus和avahi-daemon启动之后再启动shairport
iPad上的音乐采样率是44.1KHz,创建一个ALSA配置文件,将采样率从48KHz降低到44.1KHz,使声音不会“颤抖”:
#touch /etc/asound.conf
#vi /etc/asound.conf
写入以下内容:
defaults.pcm.dmix.rate 44100 # Force 44.1 KHz
defaults.pcm.dmix.format S16_LE # Force 16 bits

最后我们设置开机启动
#/etc/init.d/dbus enable
#/etc/init.d/avahi-daemon enable
#/etc/init.d/shairport enable

reboot重启,等到wr703n的灯不再闪烁的时候,打开iPad,看看Airplay目标里有没有多一个”ShairPort”,打开音乐,享受音乐吧!

IMG_20130124_165613.jpg

再补一张自己DIY的盒子,大小刚好合适,就这样开始上岗了,呵呵!

IMG_20130125_124208.jpg

点评

改8m版本的703按楼主方法折腾成功,不过要记得把防火墙那里全部设置成accept才可以被ipad等苹果设备发现  发表于 2013-2-22 14:33

评分

参与人数 2恩山币 +2 收起 理由
mexia + 1 泥马,真给力,我要顶!
a291899192 + 1 灰常不错

查看全部评分

我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-24 17:08 | 显示全部楼层
无线播放音乐到接usb声卡上的音箱?
我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-24 17:53 | 显示全部楼层
刚刷的openwrt,刷完后路由重启,网线插入电脑和路由wan,打开CMD输入telnet 192.168.1.1,但是却说“不能打开到主机的链接”,电脑telnet已开启,ip自动获取或使用“ip192.168.1.x掩码255.255.255.0网关192.168.1.1”都不行,怎么办啊?感觉应该没有变砖。另外戳路由菊花开安全模式也不能telnet,请大神指教
我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-24 21:32 | 显示全部楼层
OP下用ushare,TT下用媒体服务器,就是一个DLAN功能,只要电视,手机支持,可以直接播放挂载硬盘的音视频文件,手机在线电视的同时,可以将手机的画面同时影射到电视上,AIRplay其实也是一个DLAN功能吧。。不知道对不对。。但自己用安卓手机,苹果都成功过。。
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2013-1-24 21:42 | 显示全部楼层
zhuojianshu 发表于 2013-1-24 21:32
OP下用ushare,TT下用媒体服务器,就是一个DLAN功能,只要电视,手机支持,可以直接播放挂载硬盘的音视频文 ...

可能你搞错了,wr703n是通过usb声卡接音箱的,然后通过无线网络接受iPad发送过来的Airplay音频流。你说的那是把wr703做成DLNA服务器,有所区别,建议Google一下Airplay的具体内容。
我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-24 22:38 | 显示全部楼层
文件没了?
我也用703..很想用这个...楼主可以更新一下下载吗?
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2013-1-25 07:06 | 显示全部楼层
换号了 发表于 2013-1-24 22:38
文件没了?
我也用703..很想用这个...楼主可以更新一下下载吗?

百度网盘的文件在啊,你搞错了吧。
我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-25 09:49 来自手机 | 显示全部楼层

RE:

sancome  2013-1-25 07:06
ɡ

ɡ@_@
ζй
我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-25 10:17 | 显示全部楼层
回去试试我的720n
我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-25 10:41 | 显示全部楼层
sancome 发表于 2013-1-25 07:06
百度网盘的文件在啊,你搞错了吧。

晕..手机回复成乱码了?
可可能昨晚百度维护...
谢谢咯.试试
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2013-1-26 09:34 | 显示全部楼层
玩wr703n的人不多了吗?
我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-27 17:30 | 显示全部楼层
我的有时候会加载不了声卡.要重启..能加载U盘
我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-29 13:51 | 显示全部楼层
楼主我只想知道一个问题
我拿移动硬盘+703+IPAD2未越狱,完全脱离电脑,能否完美方便观看移动硬盘里的电影和戏曲,移动硬盘500G USB3.0

因为我是拿给老妈用的,所以不知道如果可以的话,这界面会不会太复杂?
我的恩山、我的无线 The best wifi forum is right here.
 楼主| 发表于 2013-1-29 14:06 | 显示全部楼层
天山上的雪 发表于 2013-1-29 13:51
楼主我只想知道一个问题
我拿移动硬盘+703+IPAD2未越狱,完全脱离电脑,能否完美方便观看移动硬盘里的电影 ...

你说的这个是可以的,就是把WR703N接上移动硬盘作为NAS服务器,iPAD2通过第三方播放器比如GoodPlayer等访问NAS,实现播放,不过跟我这个帖子没什么关系,你在论坛搜搜怎么把WR703N作为NAS吧。
我的恩山、我的无线 The best wifi forum is right here.
发表于 2013-1-30 08:38 | 显示全部楼层
好文啊,研究下rg100a-aa能搞不,能搞就买了usb声卡去
我的恩山、我的无线 The best wifi forum is right here.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )|网站地图

GMT+8, 2022-7-3 07:57

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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