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, support subtitles.
GNU General Public License v3.0
869 stars 184 forks source link

在播放某个视频时会出现拖影,闪屏的问题 #705

Open Kimentanm opened 6 months ago

Kimentanm commented 6 months ago

test url: http://27.18.4.54:8088/rtp/239.69.1.123:10376 使用VLC复测没有类似的问题

kingslay commented 6 months ago

这是个交错的视频。你可以测下不同的反交错模式。看下那个的效果更好。 现在默认是1 你可以改成其他的值。 Picker("yadif Mode", selection: $yadifMode) { Text("yadif").tag(0) Text("yadif_2x").tag(1) Text("yadif_spatial_skip").tag(2) Text("yadif_2x_spatial_skip").tag(3) }

cdguy commented 6 months ago

@kingslay @Kimentanm the issue here is not about de-interlace (yadif) filters the satellite signal of this stream is low, out of 50 frames, only 8 to 23 frames are displayed and that's why you see the mosaics.

I don't know if this artefacts issue is solved with it, but MPV uses the -crf filter in ffmpeg (https://github.com/search?q=repo%3Ampv-player%2Fmpv%20crf&type=code)

here is a screenshot using mpv

Ekran görüntüsü 2023-12-28 160052

Ekran görüntüsü 2023-12-28 160106

and using VLC (however if the display FPS is too low, you can see only 1 full clear frame; so the image freezes but you still hear the sound of the stream)

Sometimes I have this issue when I play 4K (50 fps H265) live streams. the green artefacts does not appear when I play the recording of the same content

https://github.com/kingslay/KSPlayer/assets/123307657/9d6a3c65-f426-4e66-9ae3-1ae104d7a3d8