问题
I used this library for playing video from URL
, and I am able to play video.
Now I want to change the currently playing video quality like (low, medium, high).
Library uses AVPlayer and how can i change quality with AVPlayer?
I listen about preferredPeakBitRate but I have no idea about it.
Please help me how can i do that?
回答1:
You cannot set video quality directly on the AVPlayer
, however, you can do this by accessing videoComposition
property on AVPlayerItem
which is then supplied to AVPlayer
(via for example replaceCurrentItem:
method or on AVPlayer initialization). So:
- Create or get you
AVPlayerItem
'sAVVideoComposition
instance, and set it'sframeDuration
,renderSize
andrenderScale
properties. Take a look in docs for more info. - Set it to your "movie"
videoComposition
property,AVPlayerItem
instance (again, look in docs for details). - Play that in your player.
If you want to do this on the fly while playing movie, adjustments of time for player item should be done I guess.
来源:https://stackoverflow.com/questions/43095311/how-can-i-change-avplayer-video-quality-while-playing