Post

Replies

Boosts

Views

Created

Video Quality selection in HLS streams
Hello there, in our team we were requested to add the possibility to manually select the video quality. I know that HLS is an adaptive stream and that depending on the network condition it choose the best quality that fits to the current situation. I also tried some setting with preferredMaximumResolution and preferredPeakBitRate but none of them worked once the user was watching the steam. I also tried something like replacing the currentPlayerItem with the new configuration but anyway this only allowed me to downgrade the quality of the video. When I wanted to set it for example to 4k it did not change to that track event if I set a very high values to both params mentioned above. My question is if there is any method which would allow me to force certain quality from the manifest file. I already have some kind of extraction which can parse the manifest file and provide me all the available information but I couldn't still figure out how to make the player reproduce specific stream with my desired quality from the available playlist.
4
0
9.2k
Mar ’21
Airplay device name
Is there any way of discovering the name of the device when the user started to cast to it? The only thing I found was this let route = AVAudioSession.sharedInstance().currentRoute for output in route.outputs where output.portType == .airPlay { infoDict["deviceName"] = output.portName infoDict["portType"] = output.portType.rawValue } but the output.portName returns the portType instead of the portName.
1
1
1.5k
Jun ’21
Video Quality selection in HLS streams
Hello there, in our team we were requested to add the possibility to manually select the video quality. I know that HLS is an adaptive stream and that depending on the network condition it choose the best quality that fits to the current situation. I also tried some setting with preferredMaximumResolution and preferredPeakBitRate but none of them worked once the user was watching the steam. I also tried something like replacing the currentPlayerItem with the new configuration but anyway this only allowed me to downgrade the quality of the video. When I wanted to set it for example to 4k it did not change to that track event if I set a very high values to both params mentioned above. My question is if there is any method which would allow me to force certain quality from the manifest file. I already have some kind of extraction which can parse the manifest file and provide me all the available information but I couldn't still figure out how to make the player reproduce specific stream with my desired quality from the available playlist.
Replies
4
Boosts
0
Views
9.2k
Activity
Mar ’21
Airplay device name
Is there any way of discovering the name of the device when the user started to cast to it? The only thing I found was this let route = AVAudioSession.sharedInstance().currentRoute for output in route.outputs where output.portType == .airPlay { infoDict["deviceName"] = output.portName infoDict["portType"] = output.portType.rawValue } but the output.portName returns the portType instead of the portName.
Replies
1
Boosts
1
Views
1.5k
Activity
Jun ’21