Как сделать так, чтобы одновременно воспроизводилось только одно видео? ⇐ IOS
Как сделать так, чтобы одновременно воспроизводилось только одно видео?
Я создал приложение AR, которое воспроизводит видео по определенной привязке изображения. Я хотел расширить это приложение, чтобы оно могло обрабатывать более одного изображения. Теперь, когда я сканирую первое изображение, воспроизводится видео, а когда я сканирую второе изображение, воспроизводится другое видео. Проблема, которая здесь возникает, заключается в том, что оба видео воспроизводятся одновременно.
Код:
func renderer (_ renderer: SCNSceneRenderer, nodeFor привязки: ARAnchor) -> SCNNode? { пусть узел = SCNNode() если пусть imageAnchor = якорь как? ARImageAnchor { //приведенный ниже код необходимо продублировать, чтобы добавить больше новостей if imageAnchor.referenceImage.name == "Гаррипоттер" { let videoNode = SKVideoNode(fileNamed: "harrypotter.mp4") видеоузел.play() let videoScene = SKScene (размер: CGSize (ширина: 480, высота: 360)) videoNode.position = CGPoint(x: videoScene.size.width/2, y: videoScene.size.height/2) videoNode.yScale = -1.0 videoScene.addChild(videoNode) let plane = SCNPlane (ширина: imageAnchor.referenceImage.physicalSize.width, высота: imageAnchor.referenceImage.physicalSize.height) plane.firstMaterial?.diffuse.contents = videoScene пусть planeNode = SCNNode (геометрия: плоскость) planeNode.eulerAngles.x = -.pi / 2 node.addChildNode(planeNode) } if imageAnchor.referenceImage.name == "deatheater" { let videoNode = SKVideoNode(fileNamed: "deatheater.mp4") видеоузел.play() let videoScene = SKScene (размер: CGSize (ширина: 480, высота: 360)) videoNode.position = CGPoint(x: videoScene.size.width/2, y: videoScene.size.height/2) videoNode.yScale = -1.0 videoScene.addChild(videoNode) let plane = SCNPlane (ширина: imageAnchor.referenceImage.physicalSize.width, высота: imageAnchor.referenceImage.physicalSize.height) plane.firstMaterial?.diffuse.contents = videoScene пусть planeNode = SCNNode (геометрия: плоскость) planeNode.eulerAngles.x = -.pi / 2 node.addChildNode(planeNode) } Я пытался использовать 2 условия if, которые помогают воспроизводить видео по определенной привязке изображения. Теперь, когда я сканирую первое изображение, воспроизводится видео, а когда я сканирую второе изображение, воспроизводится другое видео. Проблема, которая здесь возникает, заключается в том, что оба видео воспроизводятся одновременно. Я хочу, чтобы при воспроизведении другого видео первое видео автоматически останавливалось.
Я создал приложение AR, которое воспроизводит видео по определенной привязке изображения. Я хотел расширить это приложение, чтобы оно могло обрабатывать более одного изображения. Теперь, когда я сканирую первое изображение, воспроизводится видео, а когда я сканирую второе изображение, воспроизводится другое видео. Проблема, которая здесь возникает, заключается в том, что оба видео воспроизводятся одновременно.
Код:
func renderer (_ renderer: SCNSceneRenderer, nodeFor привязки: ARAnchor) -> SCNNode? { пусть узел = SCNNode() если пусть imageAnchor = якорь как? ARImageAnchor { //приведенный ниже код необходимо продублировать, чтобы добавить больше новостей if imageAnchor.referenceImage.name == "Гаррипоттер" { let videoNode = SKVideoNode(fileNamed: "harrypotter.mp4") видеоузел.play() let videoScene = SKScene (размер: CGSize (ширина: 480, высота: 360)) videoNode.position = CGPoint(x: videoScene.size.width/2, y: videoScene.size.height/2) videoNode.yScale = -1.0 videoScene.addChild(videoNode) let plane = SCNPlane (ширина: imageAnchor.referenceImage.physicalSize.width, высота: imageAnchor.referenceImage.physicalSize.height) plane.firstMaterial?.diffuse.contents = videoScene пусть planeNode = SCNNode (геометрия: плоскость) planeNode.eulerAngles.x = -.pi / 2 node.addChildNode(planeNode) } if imageAnchor.referenceImage.name == "deatheater" { let videoNode = SKVideoNode(fileNamed: "deatheater.mp4") видеоузел.play() let videoScene = SKScene (размер: CGSize (ширина: 480, высота: 360)) videoNode.position = CGPoint(x: videoScene.size.width/2, y: videoScene.size.height/2) videoNode.yScale = -1.0 videoScene.addChild(videoNode) let plane = SCNPlane (ширина: imageAnchor.referenceImage.physicalSize.width, высота: imageAnchor.referenceImage.physicalSize.height) plane.firstMaterial?.diffuse.contents = videoScene пусть planeNode = SCNNode (геометрия: плоскость) planeNode.eulerAngles.x = -.pi / 2 node.addChildNode(planeNode) } Я пытался использовать 2 условия if, которые помогают воспроизводить видео по определенной привязке изображения. Теперь, когда я сканирую первое изображение, воспроизводится видео, а когда я сканирую второе изображение, воспроизводится другое видео. Проблема, которая здесь возникает, заключается в том, что оба видео воспроизводятся одновременно. Я хочу, чтобы при воспроизведении другого видео первое видео автоматически останавливалось.
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как воспроизводить только одно конкретное видео одновременно на HTML-странице
Anonymous » » в форуме Jquery - 0 Ответы
- 34 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Реактивно-видео, как сделать паузу видео, когда видео не на полном экране или с экрана
Anonymous » » в форуме Android - 0 Ответы
- 11 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Как объединить несколько видео mp4 в одно видео с помощью jcodec в Java?
Anonymous » » в форуме Android - 0 Ответы
- 16 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Извлеките клипы из разных видео и объедините их в одно видео, используя ffmpeg
Anonymous » » в форуме Python - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-