apple-media

🎛️ Apple 设备全功能远程控制台

基于开源 pyatv 库的 Apple 设备远程控制方案,实现 Apple TV、HomePod 的播放、导航、投流等全功能操控。

收藏
1.8k
安装
677
版本
v1.0.0
CLS 安全性认证2026-06-23
点击查看完整报告 >

使用说明

核心用法

apple-media 是一个纯文档型 Skill,通过封装 pyatv 项目的 atvremote 命令行工具,提供对 Apple TV、HomePod 及 AirPlay 设备的完整控制能力。用户需先通过 pipx install pyatv 安装依赖,随后即可使用 atvremote scan 发现局域网内的苹果设备,并通过设备名称、IP 地址或标识符进行精准控制。

该 Skill 覆盖五大核心场景:设备发现与配对(scan/pair/wizard)、播放控制(play/pause/seek/shuffle/repeat)、音量管理(set_volume/volume_up/down)、内容投流(stream_file/play_url)以及 Apple TV 专属交互(方向键导航、键盘输入、应用启动、电源管理)。特别值得一提的是其多房间音频管理能力,支持通过 add_output_devices 等命令将多个 HomePod 组成立体声或全屋播放组。

显著优点

1. 协议完整度高:基于 pyatv 逆向工程实现,支持 MRP(Media Remote Protocol)、AirPlay、Companion 等多种协议,功能覆盖度远超普通遥控器 App。
2. 局域网自动化友好:纯命令行交互,易于集成到 Home Assistant、Shell 脚本或定时任务中,实现"到家自动播放音乐"等场景。

3. 跨平台兼容pyatv 本身支持 Linux/macOS/Windows,配合 Python 3.13 环境即可运行,打破苹果生态的封闭性。

4. 实时状态推送push_updates 命令可监听播放状态变化,为开发状态面板或自动化触发提供数据基础。

潜在缺点与局限性

  • Python 版本锁死:明确不兼容 Python 3.14+,安装时需显式指定 --python python3.13,对新手有一定门槛。
  • 配对流程繁琐:Apple TV 通常需要多协议配对,首次配置需交互式 PIN 码验证,无法完全无人值守。
  • 网络环境敏感:设备发现依赖 mDNS/Bonjour,跨 VLAN 或复杂网络拓扑下可能出现扫描失败。
  • 功能边界模糊:导航和键盘命令仅适用于 Apple TV,对 HomePod 无效,文档虽注明但易误用。

适合的目标群体

  • 智能家居极客:希望将 Apple TV/HomePod 接入非 HomeKit 自动化体系的技术用户
  • 多平台开发者:需要在 Linux 服务器或 Windows 环境中远程调试 Apple 设备的工程师
  • 家庭影音集成商:为客户部署全屋音频方案,需批量配置多房间音频分组的专业人员
  • CLI 爱好者:偏好终端操作效率,反感频繁切换遥控器 App 的进阶用户

使用风险

  • 依赖项维护pyatv 作为社区逆向项目,可能随 tvOS 更新出现协议兼容性问题,需关注版本更新。
  • 凭证安全:配对凭证明文存储于 ~/.pyatv.conf,多用户系统需注意文件权限(建议 600)。
  • 网络暴露风险play_url 功能可接受任意远程流地址,若脚本参数未做校验,可能存在 SSRF 隐患。
  • 设备误操作turn_offstop 命令不可逆,自动化脚本中需谨慎使用,避免中断重要播放会话。

安全解读

核心功能

apple-media 是一份纯 Markdown 格式的 Apple 媒体设备控制命令参考文档,面向需要通过命令行操控 Apple TV、HomePod 及 AirPlay 设备的用户。Skill 本身不包含可执行代码,仅系统整理 atvremote 工具的使用方法,涵盖设备扫描、媒体播放控制、音量调节、流媒体推送、电源管理、遥控器导航、键盘输入、应用启动、多房间音频组管理、实时状态监听等完整功能矩阵。

显著优点

1. 功能覆盖全面:从基础的播放/暂停/音量,到高级的进度跳转、随机播放/循环模式设置、AirPlay 设备分组、实时推送更新监听,文档结构清晰,命令即查即用。
2. 多设备兼容:同时支持 Apple TV(含导航、键盘、应用控制)、HomePod(纯音频控制)及通用 AirPlay 设备,覆盖苹果生态核心硬件。

3. 定位灵活:支持按设备名称 (-n)、IP 地址 (-s)、设备标识符 (-i) 三种方式精准定位,适配静态 IP 和动态发现场景。

4. 无代码执行风险:纯文档型 Skill,无脚本、无依赖包、无动态代码加载,从根本上杜绝恶意代码注入或权限提升风险。

潜在局限

1. 依赖外部工具:必须预装 pyatv Python 库(通过 pipx 安装),且 Python 3.14+ 存在兼容性问题,需降级至 3.13 及以下版本。
2. 需手动配对:Apple TV 通常需要首次配对流程,HomePod 虽可免配对直接推流,但部分功能(如状态查询)可能受限。

3. 网络环境依赖:设备发现依赖 mDNS/Bonjour,跨子网或复杂网络环境下可能需手动指定 IP 扫描。

4. 无交互界面:纯命令行参考,对不熟悉终端的用户有一定门槛。

适合人群

  • 智能家居自动化爱好者,希望将 Apple TV/HomePod 集成到自托管脚本或 Home Assistant 等生态中
  • 开发者或运维人员,需要批量管理多台 AirPlay 设备
  • 对隐私敏感、偏好本地控制而不依赖 iCloud/Siri 的用户

常规风险

  • 误操作风险stoppause 行为差异显著(stop 结束会话不可恢复),power_off 可能触发设备睡眠而非仅熄屏
  • URL 来源安全play_url 命令若指向不可信来源,存在潜在的内容安全风险(文档建议用户自行替换为可信 URL)
  • 网络配置泄露scan 输出包含设备 IP、MAC 地址等网络拓扑信息,在共享环境中需注意隐私保护

apple-media 内容

手动下载zip · 2.8 kB
SKILL.mdtext/markdown
请选择文件