0

我目前正在开发一个应用程序,其最终目标是大致类似于适用于 iDevices 的 Android 版本的 Air Play。

流媒体和所有这些都很容易,但我也希望能够包括游戏。这样做的问题是我必须流式传输屏幕。

我已经查看了有关截屏的各种事情(尤其是这个问题及其衍生问题),但我担心频率/延迟。玩游戏时,任何低于 15-20 fps 的速度根本不会降低它,而且我不确定到目前为止我所看到的方法是否可行。

有谁知道这样的事情是否合理,如果可以,会采取什么措施?

编辑:为了更清楚,我基本上是在尝试为 Android 创建一种更有限的“远程桌面”形式。本质上,捕获设备当前正在执行的操作(电影、游戏等)并将其复制到另一台设备上。

我最初的想法是简单地抓取音频缓冲区和帧缓冲区并将它们通过套接字传递到另一个设备,但我担心我所看到的用于捕获帧缓冲区的方法对于预期用途来说太慢了。我看到人们在一些更常见的访问帧缓冲区的方法上发表了 3 FPS 限制的评论以及诸如此类的评论。

我正在寻找的是一种在没有这些限制的情况下获取缓冲区的方法。

4

1 回答 1

0

当您提到“流式传输”视频游戏时,我不确定您要完成什么。

但如果你想模仿 AirPlay,你需要做的就是通过蓝牙/互联网连接到设备并允许声音。然后保存结果或进行相应处理。

但是视频游戏不会“流式传输”屏幕,因为移动设备无法处理大量工作负载。还有其他问题,例如,如果该人在玩游戏时失去互联网连接,您将如何处理游戏?最重要的是,这将需要大量服务器来支持后端和带宽上的游戏工作负载。

但是,如果您正在尝试创建在线游戏。基本上,您需要做的就是从服务器发送和接收消息。这很简单。如果您想“串流”到另一台设备,只需将移动设备连接到扬声器或电视。几乎所有的移动视频游戏或应用程序都只是通过 JSON 或类似的方式发送简单的消息。这减少了开销,语法简单,并且可以跨多个平台使用。

听起来你应该看看这个(转发): https ://stackoverflow.com/questions/2885533/where-to-start-game-programming-for-android

如果不是,这更像是一个关于如何实现视频游戏的开放性问题。

于 2012-10-03T19:38:52.010 回答