kingslay / KSPlayer

A video player for iOS、macOS、tvOS、visionOS , based on AVPlayer and FFmpeg, support the horizontal, vertical screen. support adjust volume, brightness and seek by slide, SwiftUI, support subtitles.
https://apps.apple.com/app/tracyplayer/id6450770064
GNU General Public License v3.0
1.03k stars 202 forks source link

Current deinterlacer method is not smooth (Yadif Mode 1 does not work properly) #525

Closed chillout23 closed 1 year ago

chillout23 commented 1 year ago

Current deinterlacing option in KSLib is not producing smooth TV-like motion. Please try to implement something like VLC's Yadif x2 or MPV's deinterlacer. They are very smooth and looks very good. Can you take this challenge @kingslay ?

JeremTM93 commented 1 year ago

I am currently testing with yadif 2 and a 25 FPS stream. It's fluid and the image is much more beautiful! Well done @kingslay ! I let the flow run to check stability.

JeremTM93 commented 1 year ago

We should also test on streams in 30 and 60 FPS, right? Shouldn't there be any change for 24 and 50 FPS streams?

chillout23 commented 1 year ago

You can test 30FPS interlaced, if you can find such a stream. There is no such thing as 50 FPS and 60 FPS interlaced stream.

Anyways, I have some audio drifting issues when I am watching stream for a while. Happens if stream cuts out and comes back for a fraction of a second.

chillout23 commented 1 year ago

Update: When I select "Audio Renderer = Off" I have no problems with the audiosync!👍

@kingslay what does exactly "Audio Renderer = On" do? And do you know why it causes the audio to not be in sync?

JeremTM93 commented 1 year ago

We will continue to test different streams. But it's now very fluid, the image is beautiful, it's stable and there's no audio delay. Well done @kingslay, and thank you @cdguy for your involvement 👏

cdguy commented 1 year ago

Update: When I select "Audio Renderer = Off" I have no problems with the audiosync!👍

@kingslay what does exactly "Audio Renderer = On" do? And do you know why it causes the audio to not be in sync?

Audiorenderer is used for spatial audio. @kingslay himself says that this feature should only be used for audio only features. Spatial audio is only beneficial if you have compatible airpods @chillout23

chillout23 commented 1 year ago

All right, thanks @cdguy . It works perfectly now, thanks to everyone involved!