Linux连接Apple TV

可以使用Open AirPlay提供的airplay.jar包来实现。

基本命令如下:

1
java -jar airplay.jar -h ip:[port] -a password -d

命令来实现桌面到电视,-d改-p filename可以直接播放图片。

声音投射命令:

1
pactl load-module module-raop-sink server=appltv_address

但是这个方案现在有几个问题:

  1. 分辨率有问题,1080p的桌面在电视机上有明显的画质下降;
  2. jdk必须使用Oracle的,OpenJDK会异常;
  3. 投射桌面必须用X.org会话登录桌面,Xwayland会话不可以,只会黑屏;
  4. 只投射画面,声音需要单独用pactl来将PulseAudio音频流播放到设备,否则声音还从电脑扬声器出来,但是现在Fedora 29上会初始化raop模块失败,故现在没实现声音;
  5. Apple TV不能以无密码的方式投射,会有403错误,设置密码后带密码参数正常。

所以实际在Fedora 29下,Java版本使用了Oracle JDK 11.0.1的tar包,使用env命令修改PATH和JAVA_HOME两个环境变量来运行成功。

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据