问题标签 [apple-tv]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4142 浏览

objective-c - 来自 iPad 的 Airplay - 在 Apple TV 上显示的单独 UIView

我想使用 Airplay 将高清图像发送到 Apple TV。

Airplay 在装有 iOS 5.0.1 的 iPad 2 上运行良好。

当我启动我的应用程序时,我的UIScreen屏幕数组中只有 1 个项目。(当然是 iPad)。我注册了更多屏幕的通知,除非我打开多任务栏并选择我的 Apple TV,否则它永远不会出现。我不想这样做。

我想要一个应用内弹出窗口,我可以在其中选择 Apple TV 或列表中的任何其他播放设备。

我使用MPVolumeView了 ,它确实给了我该列表 - 并让我选择了 Apple TV - 但我仍然没有收到已选择 Apple TV 的回叫通知 - 这样我就可以设置我UIWindow的新视图!(但多任务栏确实确认 Apple TV 现在已勾选,并且来自的图标MPVolumeView也变为蓝色)。

我也尝试过 externalDisplay 示例应用程序,这也只UIScreens在应用程序启动时间列表中显示一个屏幕。

我错过了什么?

谢谢

0 投票
0 回答
143 浏览

audio - 如何让ipad播放与ios5中通过airplay连接的第二个屏幕不同的音频?

是否可以让 ipad 在本地播放音频,同时通过无线播放到连接的苹果电视上播放不同的音频?

通过为第二个屏幕初始化第二个 UIWindow,可以让 Apple tv 显示与 ipad 上显示的不同的 VIDEO,但是是否可以使用 AUDIO 做类似的事情?我什至无法让 ipad 在播放流媒体到我的苹果电视时播放任何声音。可能吗?

0 投票
2 回答
1696 浏览

ios - 是 iOS 5.0.1 中通过 AppleTV 上的 AirPlay 实现 16:9 的第二屏幕

我考虑在我的一个应用程序中扩展支持以通过 AppleTV 处理第二个屏幕。

问题是:

如果我只是镜像我的应用程序,漂亮的 46 英寸液晶电视仅显示我的应用程序的 4:3 信箱图像。如果我更改我的应用程序为 Apple TV 呈现不同的屏幕,是否可以使用完整的 16:9 比例/隔空播放?

0 投票
2 回答
7202 浏览

ios - iOS 屏幕镜像在所选应用上显示过扫描边框

问题:iPhone 屏幕镜像和我的应用程序的专用外部视图在所有侧面显示一英寸的黑色边框。

但是:某些视图在全屏上显示完美,没有黑边,例如,Apple TV 菜单和照片应用程序。

已经尝试过 - 没有效果:

设置:iPhone 4S (5.0.1)、Apple TV 第二代 (4.4.4)

有什么建议我可以另外尝试吗?

0 投票
1 回答
5746 浏览

ios - 新 Apple TV(第 3 代)上的 Airplay,第二个屏幕不是 1080p

我正在开发一个应用程序,该应用程序将 Airplay 镜像用于第二个显示器,该显示器与 iPad 本身具有不同的内容。我正在使用通过 HDMI 连接到能够 1920x1080 的 LCD 的 iPad3 和 ATV3(即 2012 年 3 月发布)。

使用 Airplay 镜像,第二个屏幕的UIScreen可通过[UIScreen 屏幕]数组获得。我可以通过将overscanCompensation设置为 3来消除黑色边框,但我只能显示 1280x720 图像。显示器工作在 1920x1080(即在其菜单中检查,设置为“仅扫描”,Apple TV 界面的其余部分为 1080p)。

当我从UIScreen返回availableModes数组时,它只有一项“1280x720”!

这是否意味着 iOS 5.1 在新的 Apple tv 上只支持 1280x720 的 airplay 镜像而不是 1080p!?还是我做错了什么。

0 投票
0 回答
410 浏览

ios - 这段记忆去哪儿了?

我正在 AppleTV 上进行开发,并且我有一个下载海报的线程。

在我的第一个版本中,我使用 [NSData dataWithContentsOfURL:...] 来执行此操作,尽管没有内存泄漏,但系统内存很快就会耗尽。

然后我转向 coneybeare 在这篇memory-leak-problem-using-nsdata-in-iphone 中推荐的 ASIHTTPRequest

事情变得更好,但仍然没有记忆。

奇怪的是,我的进程的常驻内存非常低且稳定,但系统的可用内存却越来越少。

这是 vm_stat 的输出:

这两个输出随后在很短的时间内得到。请注意“Pages active:”,大约有 18k 个页面消失了。他们去哪儿了?

PS。我在CoreGraphics和VideoToolBox中也发现了类似的问题,就是系统好像会占用很多内存,不释放。CoreAnimation 和 VideoToolBox 有缓存吗?如果是,我该如何清除这些缓存?

一些更新: 1)它似乎与 BRMarqueeTextControl 相关,我认为它是基于 CoreAnimation 的文本控件。

2)单独使用BRMarqueeTextControl不会导致内存问题,单独使用海报下载作业也不会。

3)当这两者结合在一起时,内存很快就会耗尽。

0 投票
1 回答
291 浏览

apple-tv - .Net(或其他)开发链接,用于将视频流式传输到 Apple TV?

我们是一个学区,正在部署约 800 台 iPad,为每位教师配备一台。明年,我们可能会在每个房间安装 Apple TV,以便将 iPad 无线镜像到教室投影仪。

我很想使用 Apple TV 作为我们的标准来镜像我们所有的 Windows7 笔记本电脑。

AirParrot (http://airparrot.com/) 允许从 Mac OS/X 进行此操作。Apple 没有许可镜像协议,因此 AirParrot 绕过它的方式基本上是将桌面作为 H.264“电影”流式传输到 Apple TV。Apple TV 认为它只是在播放电影。从评论来看,他们似乎已经将滞后时间提高到了可以接受的水平。

我不明白为什么 Windows 7 不能轻易做到这一点,我只是看不到有一个应用程序可以做到这一点。

有任何想法吗?我是一名 .Net 软件开发人员。如果有人至少有关于如何处理来自 .Net 的 Apple TV 视频流的链接,那将是一个很好的第一步。

谢谢!

0 投票
1 回答
838 浏览

iphone - 在 iphone 上使用大量电池将视频从 url 播放到 ATV

我正在编写一个使用 MPMoviePlayerController 播放 url 的应用程序。该应用程序在后台运行,使用 airplay 也适用于 ATV、使用 airserver 的 macmini 和 XBMC。该 url 指向本地网络上的电影文件。我理解的方式是手机不会做任何繁重的工作,而只是将 url 传递给苹果电视,只要 url 指向 AppleTV 支持的媒体,它就会播放。

我遇到的问题是苹果电视必须积极地 ping iphone 并保持 wifi 处于活动状态,因为电池寿命受到了很大的打击。播放一部普通大小的电影会使 iPhone 3GS 的电池寿命减少约 2/3,而在 iPhone 4S 上则减少 1/2。

如果我使用空中服务器在 mac mini 上玩游戏,那么手机的电池寿命会以与手机处于后台并且不播放任何内容相同的速度减少。我注意到如果我在 iphone 上停止 wifi,那么电影将继续在 mac mini 上播放,但在 ATV 上大约 30 秒内停止。我猜 ATV 一直在推出一个事件,说它正在播放,如果它没有收到 OK 作为回报,那么它就会停止播放。

有什么我做错了吗?其他人是否在手机上使用 Airplay 时遇到过同样的电池消耗问题?我试过别人的应用程序,它也做了同样的事情。

0 投票
1 回答
3864 浏览

c# - 到 Apple TV 的 TcpClient 或 HttpWebRequest 在 30 秒后结束?

我正在用 C# 创建一个库,以使用 Airplay 协议将照片和视频发送到我的 Apple TV(特别是与第 3 代一起使用,但希望这不重要)。

https://airlib.codeplex.com/

根据此规范,Airplay 的所有命令都是端口 70 上的 HTTP:http: //nto.github.com/AirPlay.html

我已经成功地在 Apple TV 上播放照片和视频,但无论我做什么,AppleTV 都只能播放 30 秒的视频。似乎我发出播放命令的 C# 客户端在 30 秒后断开连接,这导致 AppleTV 结束播放会话。

我这么认为的原因:

  • 完全终止客户端应用程序会产生与等待 30 秒相同的行为(本质上是强制关闭连接)。
  • 手动关闭 HttpWebRequest 或 TcpClient 连接会产生相同的行为(播放会话中途)。
  • 无论我为阻止 GetResponse() 调用而保留断点多长时间,视频总是在 WebRequest 开始发送消息后 30 秒超时。
  • 为视频使用不同的源(IIS、外部网络服务器)不会改变行为。
  • 即使视频已经缓存在 AppleTV 上并且没有重新流式传输,超时仍然会发生。

我很确定客户端请求需要在整个视频“播放”过程中保持连接,据我所知,我已经对其进行了编码。我真的束手无策。我已经尝试了所有我能想到的方法,包括将请求作为 HttpWebRequest 和作为原始 TcpClient (两者都工作但都超时),将接收/发送超时设置为疯狂的数字,并循环读取 Tcp 流确保有“活动”。

就好像 AppleTV 期待我发送“嘿,继续播放”消息,但我还没有从网络上的任何来源看到类似的消息。我希望这只是我没有做的愚蠢的事情,因为我缺乏 Http/Tcp 知识。

这是我的代码:

注意:使用 telnet 我可以连接到端口 7000 上的 AppleTV 并粘贴此命令以播放整个视频:

我在端口 82 上运行 Cassini Webserver,但这也适用于 IIS。这提供了进一步的证据,表明 .Net 堆栈在 30 秒内正在做一些导致断开连接的事情。

0 投票
1 回答
1642 浏览

ios - Apple TV 开发者指南

我正在寻找 iPhone 与 Apple TV 交互的开发人员指南。我不是在谈论为 Apple TV 开发应用程序。我说的是通过 iPhone 应用程序与 Apple TV 进行交互。谁能指出我正确的方向?