Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/98.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios AR应用程序可根据ARImageAnchor播放不同的视频_Ios_Swift_Xcode_Augmented Reality_Arkit - Fatal编程技术网

Ios AR应用程序可根据ARImageAnchor播放不同的视频

Ios AR应用程序可根据ARImageAnchor播放不同的视频,ios,swift,xcode,augmented-reality,arkit,Ios,Swift,Xcode,Augmented Reality,Arkit,我正在为iOS创建一个AR应用程序,用于检测多维数据集上的图像(->要识别的6个不同图像)。当检测到一个图像时,应播放一个视频-对于每个不同的图像,应播放不同的视频(对于图像1,应播放视频1…) 我的问题是,我不知道如何跟踪当前跟踪的图像以及基于此播放的视频 现在,该应用程序跟踪不同的图像,但始终播放相同的视频(视频“1”.mp4) 如何识别当前图像锚并链接相关视频?您可以为ARReferenceImage指定一个名称,因此一种方法是为图像和相关视频文件指定相同的名称 guard let ima

我正在为iOS创建一个AR应用程序,用于检测多维数据集上的图像(->要识别的6个不同图像)。当检测到一个图像时,应播放一个视频-对于每个不同的图像,应播放不同的视频(对于图像1,应播放视频1…)

我的问题是,我不知道如何跟踪当前跟踪的图像以及基于此播放的视频

现在,该应用程序跟踪不同的图像,但始终播放相同的视频(视频“1”.mp4)


如何识别当前图像锚并链接相关视频?

您可以为ARReferenceImage指定一个名称,因此一种方法是为图像和相关视频文件指定相同的名称

guard let imageAnchor = anchor as? ARImageAnchor,
             let name = imageAnchor.referenceImage.name,
             let fileUrlString = Bundle.main.path(forResource: name, ofType: "mp4") else {
    return
}

let videoItem = AVPlayerItem(url: URL(fileURLWithPath: fileUrlString))
let player = AVPlayer(playerItem: videoItem)
let videoNode = SKVideoNode(avPlayer: player)

player.play()
guard let imageAnchor = anchor as? ARImageAnchor,
             let name = imageAnchor.referenceImage.name,
             let fileUrlString = Bundle.main.path(forResource: name, ofType: "mp4") else {
    return
}

let videoItem = AVPlayerItem(url: URL(fileURLWithPath: fileUrlString))
let player = AVPlayer(playerItem: videoItem)
let videoNode = SKVideoNode(avPlayer: player)

player.play()