मैं उपयोगकर्ताओं को वीडियो के माध्यम से चक्र करने में सक्षम होने की कोशिश कर रहा हूं, दृश्य को रीफ्रेश किए बिना एवीप्लेयर यूआरएल को फ्लाई पर बदल रहा हूं। हालांकि, अभी मैं एक बार वीडियो चलाए जाने पर AVPlayer ऑब्जेक्ट्स को तुरंत चालू कर रहा हूं (जिसके परिणामस्वरूप ऑडियो एक दूसरे पर खेला जा सकता है), जो मुझे लगता है कि ऐसा करने का सबसे अच्छा तरीका नहीं है। क्या छवि दृश्य में छवि को बदलने के समान ही एक और अधिक प्रभावी तरीका है? , गीत नामों की एक tableViewनया एवीप्लेयर ऑब्जेक्ट बनाने के बिना नए यूआरएल से वीडियो चलाएं
player = AVPlayer(URL: fileURL)
playerLayer = AVPlayerLayer(player: player)
playerLayer!.frame = self.view.bounds
self.view.layer.addSublayer(playerLayer!)
player!.play()
जैसा कि मैंने कहा था, बनाने के बाद AVPlayer ऑब्जेक्ट तक नहीं पहुंचें; बल्कि, केवल अपने वर्तमान इटैम के साथ काम करते हैं। –
@ जेम्सबुश वास्तव में आपका एक बेहतर तरीका है। एक और विकल्प AVQueuePlayer का उपयोग करना है, सभी संभावित यूआरएल को एक AVPlayerItems सरणी जोड़ें और फिर उस सरणी को कतार में डालें और फ्लाई पर सरणी को फिर से ऑर्डर करें। यह अगले वीडियो को बफरिंग शुरू करने की अनुमति देगा जबकि पिछला वीडियो अभी भी – MikeG
या [self.player prerollAtRate: 1.0 completHandler:^(BOOL समाप्त हुआ) { [self.player play]; [self.player setRate: 1।0]; }]; –