Comments (7)
AVDisplayCriteria 有两个初始化方法,一个是tvOS17 才有的 AVDisplayCriteria(refreshRate: refreshRate, formatDescription: formatDescription)。 displayCriteriaFormatDescriptionEnabled这个开关就是用来控制这个初始化方法的。 另一个是AVDisplayCriteria(refreshRate: refreshRate, videoDynamicRange: videoDynamicRange)。 你应该是有重载了preferredDisplayCriteria,然后走了AVDisplayCriteria(refreshRate: refreshRate, videoDynamicRange: videoDynamicRange) 这个方法吧。
from ksplayer.
I understand that, and I already have the logic to do so. The problem is infrastructural. I don't want the player to automatically set the display criteria. There should be an option to decide this.
Also, when setting the criteria on live streams with KSMEPlayer, the stream goes bad.
As part of this problem there's also the fact that if the user wants to disable and then reenable the matching content while watching a stream, I don't have access to the MetalPlayView
formatDescription, because is private. Therefore I can't set again that format description. Only the track's one.
These are all design problems that can be easily solved.
from ksplayer.
So imagine I have my custom player, which use your engine under the hood.
I want to be able to enable and disable content matching whenever I want, with my logic.
Therefore I need:
- Get informed when MetalView generated the format description, which is the only one working well enough for lives;
- Have access to MetalView generated format description;
- Be able to disable the KS inner logic to set display criteria.
One big step for this project is to well separate the concept of "Player" and "Controller". I use the Player, but I have my Controller. So things can't be mixed up.
To help, take in consideration "AVPlayer" and "AVPlayerController".
from ksplayer.
The commit you posted for this has broken 4K 50fps playback. it's losing loads of frames and is now jerky/stuttering playback - totally unwatchable.
from ksplayer.
The commit you posted for this has broken 4K 50fps playback. it's losing loads of frames and is now jerky/stuttering playback - totally unwatchable.
displayCriteriaFormatDescriptionEnabled 这个值是为false吗?
from ksplayer.
The commit you posted for this has broken 4K 50fps playback. it's losing loads of frames and is now jerky/stuttering playback - totally unwatchable.
displayCriteriaFormatDescriptionEnabled 这个值是为false吗?
It was set to true. tried with false and now it's ok.
from ksplayer.
@kingslay you missed this
`UIApplication.shared.windows.first?.avDisplayManager.preferredDisplayCriteria = nil`
It should also be covered by the flag.
from ksplayer.
Related Issues (20)
- 您好,如何在不播放的情况下,获取视频的总时间长度? 目前貌似没有 api 可以获取? HOT 1
- Stream doesn't start HOT 2
- Compilation warning in AudioEnginePlayer.swift
- Unable to add via Swift Package manager HOT 3
- 双语字幕重叠 HOT 3
- Error sanbox when build application
- Package resolution failed HOT 2
- Fix Apple TV App HOT 1
- Video cache support HOT 5
- Crash when view livestream HOT 1
- 能否自定义一个KSPictureInPictureController? HOT 3
- 使用swift Package Manager更新KSPlayer,添加依赖失败
- 请问咱这个播放器支持3d播放吗? 左右眼 HOT 6
- Transferring to Bluetooth doesn't work until stop-start HOT 1
- pod install for visionos 不兼容 HOT 1
- Playing this URL fails most of the time HOT 12
- Switching from WiFi to Cellular fails HOT 2
- Fix Apple TV App HOT 1
- Does it support video/mp2t format? HOT 1
- side by side vr video on VisionOS? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ksplayer.