Przełączam z MPMoviePlayerController
na AVPlayer
, ponieważ potrzebuję drobniejszej kontroli nad wideo-zamianą. Plik .mov
grałem z MPMoviePlayerController
grałem dobrze, ale po przełączeniu na AVPlayer
słyszę dźwięk z wideo, ale wideo pokazuje tylko tło widoku, które dodałem do AVPlayerLayer
. Oto jak inicjuję AVPlayer
.AVPlayer Video Blank ale Sound Sound
self.player = [[AVPlayer alloc] initWithURL:video];
AVPlayerLayer* playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.player];
playerLayer.frame = self.playerContainer.bounds;
[self.playerContainer.layer addSublayer:playerLayer];
Później po prostu wydaje się.
[self.player play];
Po odtworzeniu wideo słyszę dźwięk, ale nie widzę wideo. Próbowałem też ustawić zPosition bez powodzenia.
playerLayer.zPosition = 1;
Nie używam autolayout, ale mam ten sam problem. http://stackoverflow.com/questions/16872193/avqueueplayer-shows-black-screen-when-called-from-app-delegate Jak możesz go rozwiązać? – Burak
Film był dla mnie CGRectZero i niewidoczny. W rzeczywistości grał, tylko na ekranie 0.0x0.0. –
@Gary Mam dokładnie ten sam problem, ale z projektem MacOS - słyszę dźwięk, ale nie ma wideo tylko czarne okno - oto mój całkowity kod: 'let fileURL = URL (ciąg znaków:" http://commondatastorage.googleapis.com/gtv -videos-wiadro/sample/BigBuckBunny.mp4") niech avAsset = AVURLAsset (URL: fileURL !, opcje: nil) niech playerItem = AVPlayerItem (aktywo: avAsset) magnetowid = AVPlayer (playerItem: playerItem) niech playerView = self.playerView playerView? .player = videoPlayer videoPlayer.play() 'Jakiś pomysł, co muszę dodać, aby wyświetlić wideo? –