Tenho um pequeno mp4
arquivo de vídeo que adicionei ao meu projeto atual do Xcode6 Beta.
Quero reproduzir o vídeo no meu aplicativo.
Depois de horas pesquisando, não consigo encontrar nada remotamente útil. Existe uma maneira de fazer isso com o Swift ou você precisa usar o Objective-C? Posso ser apontado na direção certa? Não posso ser o único a pensar nisso.
ios
objective-c
swift
avplayer
avplayerviewcontroller
36 por design
fonte
fonte
Respostas:
Claro que você pode usar o Swift!
1. Adicionando o arquivo de vídeo
Adicione o vídeo (vamos chamá-lo
video.m4v
) ao seu projeto Xcode2. Verificar se o seu vídeo está no pacote
Abra o botão
Project Navigator
cmd+1Em seguida, selecione
your project root
>your Target
>Build Phases
>Copy Bundle Resources
.O seu vídeo DEVE estar aqui. Caso contrário, adicione-o usando o botão de adição
3. Código
Abra o seu View Controller e escreva este código.
fonte
initializer for conditional binding must have optional type not nsurl
import AVKit
?outro exemplo do Swift 3. A solução fornecida não funcionou para mim.
uso:
Nota: Marque Copiar recursos do pacote em Fases de construção para garantir que o vídeo esteja disponível para o projeto.
fonte
Você pode configurar
AVPlayer
de outra maneira, que abre para a personalização completa da tela do seu player de vídeoSwift 2.3
Crie
UIView
subclasse para reproduzir vídeo (basicamente você pode usar qualquerUIView
objeto e é apenas necessárioAVPlayerLayer
. Eu configuro dessa maneira porque é muito mais claro para mim)Configure seu player
Uso:
suponha que você tenha vista
e em
viewDidLoad()
Objetivo-C
PlayerView.h
PlayerView.m
VideoPlayer.h
VideoPlayer.m
O recurso de causa desativada (arquivo de vídeo) deve ter a associação de destino definida para o seu projeto
Adicional - link para o perfeito Apple Developer guide
fonte
layer.player = player
(na SwiftPlayerView
) não deveria serlayer.player = newValue
? Como você deseja definir o novo valor, não o atual, que é nulo.Swift 3
fonte
estes códigos são códigos convertidos da resposta gbk no swift 4
1. na sua visão principal do controle:
você precisa da classe VideoPlayer
e uma classe PlayerView para criar uma exibição de vídeo:
fonte
PlayerView for swift 4.2
fonte
solução da gbk em swift 3
PlayerView
VideoPlayer
fonte
Nenhuma das opções acima funcionou para mim Swift 5 para o Local Video Player
depois de ler a documentação da apple, consegui criar um exemplo simples para reproduzir vídeo a partir de recursos locais
Aqui está o snip de código
fonte
Aqui está uma solução para o Swift 5.2
PlayerView.swift:
VideoPlayer.swift
Uso:
e dentro
viewDidLoad()
:fonte