airplay android服务器,在airplay中实现android作为服务器(接收器)

我想在

android中创建airplay,其中我的

Android设备将作为airplay服务器(接收器)工作,iPhone设备将作为接收器工作.我在我的应用程序中使用了jmdns,它是java中的开源库,用于airplay.它的音频工作正常.但是当我来看视频和图像时,即使发现了这个设备,我也很难为之奋斗.这是我创建和注册该服务的代码:

ServiceInfo info = ServiceInfo.create(identifier + "@" + name + "._raop._tcp.local", identifier + "@" + name, port, "tp=UDP sm=false sv=false ek=1 et=0,1 cn=0,1 ch=2 ss=16 sr=44100 pw=false vn=3 txtvers=1");

dns = JmmDNS.Factory.getInstance();

((JmmDNSImpl)dns).inetAddressAdded(new NetworkTopologyEventImpl(JmDNS.create(InetAddress.getByName("localhost")), InetAddress.getByName("localhost")));

try {

Thread.sleep(1000); // If this isn't done the Announcement sometimes doesn't go out on the local interface

} catch (InterruptedException e) {

e.printStackTrace(System.err);

}

dns.registerService(info);

当我将第一行中的._raop更改为._airplay时,该设备已经在iPad中发现了图像和音频.当我选择播放视频的设备时,它显示消息“这个视频正在播放android(服务器名称)”.但是在服务器端我没有得到任何数据包的处理.我在Jmdns学习很多.但是我没有使用jmdns来实现在airplay中的视频和图像.有任何想法吗 ?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
AirPlay SDK 提供了 AirplayServer_Stop 函数来关闭 AirPlay 服务器AirplayServer_Stop 函数用于停止 AirPlay 服务器的运行,可以释放所有服务器占用的资源并关闭所有连接。在调用 AirplayServer_Stop 函数之前,您需要先停止所有的播放器和渲染器,以避免服务器关闭时出现异常情况。 AirplayServer_Stop 函数的声明如下: ``` AirPlayStatus AirplayServer_Stop( AirPlayServerRef inServer ); ``` 其,inServer 参数是 AirPlay 服务器的引用,表示要停止的服务器AirplayServer_Stop 函数的返回值为 AirPlayStatus 类型,表示函数执行的状态。 需要注意的是,AirplayServer_Stop 函数会阻塞当前线程,直到所有连接都关闭并且所有资源都释放完毕。如果您希望在非阻塞方式下关闭服务器,可以使用 AirplayServer_StopAsync 函数。AirplayServer_StopAsync 函数会在后台线程异步关闭服务器,不会阻塞当前线程,但需要您自行处理关闭服务器的回调函数。 以下是使用 AirplayServer_Stop 函数关闭 AirPlay 服务器的示例代码: ``` AirPlayServerRef serverRef = ...; // 获取服务器引用 AirplayServer_Stop(serverRef); // 关闭服务器 ``` 需要注意的是,关闭服务器可能会影响其他正在运行的应用程序,因此需要谨慎操作。在关闭服务器之前,您需要确保所有的连接都已经关闭并且所有资源都已经释放完毕,以避免出现异常情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值