【发布时间】:2011-08-11 22:25:52
【问题描述】:
我想创建需要在 iPad 原生应用上运行的视频。该应用程序需要通过 iPad 展示产品的演示。它也需要是交互式的。我知道我们可以在 Flash 中完成这些,因为 iPad 不支持 Flash,我有哪些选择?
感谢任何指导或提示。提前谢谢你
【问题讨论】:
标签: iphone ios ipad video mobile
我想创建需要在 iPad 原生应用上运行的视频。该应用程序需要通过 iPad 展示产品的演示。它也需要是交互式的。我知道我们可以在 Flash 中完成这些,因为 iPad 不支持 Flash,我有哪些选择?
感谢任何指导或提示。提前谢谢你
【问题讨论】:
标签: iphone ios ipad video mobile
为 iOS 创建交互式视频的最简单方法是使用 Apple 的 HTTP Live Streaming 技术。您必须创建一个视频embed metadata,使用MPMoviePlayerController 或AVPlayerItem 播放它,然后显示可点击区域以响应元数据通知。
元数据应包含您正在跟踪的元素的坐标,例如:一件衣服和产品的标识符。您使用可单击的子视图覆盖此信息,该子视图显示有关产品的更多信息。 iTunes中有好几个这类应用,这里是one。
一旦您获得了可工作的产品和数周的视频,最困难的部分就是在尽可能少的人工交互的情况下执行运动跟踪。一种方法是使用 Adobe After Effects,另一种方法是基于 OpenCV 编写您自己的解决方案。
【讨论】:
一些想法:
您可以在循环中使用没有控件的MPMoviePlayerController。
这是我想到的在视频上使用交互式 HTML 弹出框的解决方案:
您可以有一个数据存储(比如NSDictionary),其中播放时间作为键。
然后,这些值可以是一个自定义类,其中包括视频上交互式弹出框的所有必要数据。
您的自定义类可能看起来像这样
@interface InteractivePopover : NSObject
{
NSString *snippetTitle;
NSString *htmlData; // could include links etc.
CGPoint popoverDisplayPoint;
// other styling attributes etc.
}
现在,当用户点击视频时,它会在下一个“交互”点暂停(通过在当前播放时间之后查找下一个键),并显示(动画)所有您之前设置的弹出窗口展示产品的不同部分。
该类可能是您的数据存储,然后您创建另一个类来处理显示、动画、控制、调整大小(等)这些交互式弹出框。它将为 HTML 创建一个 UIWebView。它还可以控制弹出框的方向和源点指示。
这显然是非常可扩展的,因为您可以将图像、嵌入内容等放入这些交互式弹出框的 HTML 中。
不管怎样,我会这样做的。
【讨论】:
虽然 flash 不会在 ipad 上运行,但您仍然可以使用 flash cs5 为其创建应用程序。
【讨论】: