i mon Mon code ressemble à celui: P> uiviewcontroller code> J'ai une prise à
uiview code>, où j'aimerais afficher la vidéo à l'aide de liens externes. Dans ce cas, j'essaie de créer
avilleerlayer code> et de l'ajouter à mon
uiview code> prise.
class VievController: UICollectionViewController {
@IBOutlet weak var playerView: UIView!
override func viewDidLoad(){
let playerItem = AVPlayerItem(URL: NSURL(string: ("https://www.youtube.com/watch?v=_yE_XgoWBso"))!)
let avPlayer = AVPlayer(playerItem: playerItem)
let playerLayer = AVPlayerLayer(player: avPlayer)
playerLayer.frame = playerView.bounds
playerLayer.videoGravity = AVLayerVideoGravityResizeAspectFill
playerView.layer.addSublayer(playerLayer)
avPlayer.play()
}
}//end class
3 Réponses :
Malheureusement, vous ne pouvez pas utiliser Avplayer pour jouer YouTube, Vimeo, etc. Pour ce faire, vous devrez utiliser UIWebView. P>
let url = NSBundle.mainBundle().URLForResource("ding.mp3", withExtension: nil) guard let newURL = url else { print("Could not find file:") return } do { backgroundMusicPlayer = try AVAudioPlayer(contentsOfURL: newURL) backgroundMusicPlayer.numberOfLoops = 0 backgroundMusicPlayer.prepareToPlay() backgroundMusicPlayer.play() } catch let error as NSError { //print(error.description) } You jus need to import avfoundation framework then use this above code
J'ai demandé à propos de chargement de la vidéo de lien externe pas de Bundle
Below code help you to solve the issue Adjust the frame according to your needs - (void)viewDidLoad { [super viewDidLoad]; NSError *setCategoryError = nil; [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error: &setCategoryError]; NSString *urlString=[NSString stringWithFormat:@"%@",@"http://www.youtube.com/watch?v=zPP6lXaL7KA&feature=youtube_gdata_player"]; AVAsset *asset = [AVAsset assetWithURL:[NSURL urlWithString:urlString]]; avPlayerItem = [[AVPlayerItem alloc]initWithAsset:asset]; self.songPlayer = [AVPlayer playerWithPlayerItem:avPlayerItem]; self.avPlayerLayer = [AVPlayerLayer playerLayerWithPlayer: self.songPlayer]; self.avPlayerLayer.frame = self.view.layer.bounds; UIView *newView = [[UIView alloc] initWithFrame:self.view.bounds]; [newView.layer addSublayer:avPlayerLayer]; [self.view addSubview:newView]; [ self.songPlayer play]; }
Votre réponse peut être correcte i> être correcte, mais la question demande spécifiquement aux exemples de code SWIFT B>, pas objectif - c. S'il vous plaît éditer. Merci!
Il suffit de mettre en place Avplayerviewcontrollerdelegate et votre bon à aller