KSPlayer icon indicating copy to clipboard operation
KSPlayer copied to clipboard

Frame Dropped in IPTV apps

Open xDoNySx opened this issue 9 months ago • 12 comments

KSPlayer in any IPTV app causes frame drops. The frame-rate is unstable and creates stutters in streaming playback.

I am using an Apple TV Box 4k latest version.

xDoNySx avatar Mar 09 '25 18:03 xDoNySx

Same here. I tested a lot of IPTV apps and everyone has dropped frame when using KSPlayer :( Same using tracyplayer btw

Benigans avatar May 10 '25 17:05 Benigans

  1. 是不是只在tvOS上才会有这个问题吗?在iOS设备上是不是不会有问题
  2. 这个播放的是不是都是4k的视频的呢?
  3. 是只有直播才会有问题,还是点播也会有问题呢?
  4. 在我的app tracyplayer上。 Asynchronous Decompression 这个开关是否是打开的

kingslay avatar May 11 '25 04:05 kingslay

  1. 是不是只在tvOS上才会有这个问题吗?在iOS设备上是不是不会有问题

    1. 这个播放的是不是都是4k的视频的呢?

    2. 是只有直播才会有问题,还是点播也会有问题呢?

    3. 在我的app tracyplayer上。 Asynchronous Decompression 这个开关是否是打开的

1 - Noticeable on tvOS. Not too sure for iOS, I didn't do so much testing with it. 2 - 4K or 1080p. Same for both. 50fps, 25fps, 24fps etc... 3 - Live TV and VOD. Same for both 4 - After some tests, I'm not so sure that Tracy has the issue. The frame dropped count seem to grow when showing the UI. Not during watching. But there's a lip sync issue with Tracy :( The app I used to see logs is iSTB. And I can see these kind of logs : [1.23.9.0] [18.5.0] [2025-05-12 20:05:07 +0000] [video] video delay=-0.09438122222206857, clock=171.25438122222207, frameCount=8 delay count=1 drop 1 frame [1.23.9.0] [18.5.0] [2025-05-12 20:05:29 +0000] [video] video delay=-0.08602134722229948, clock=193.3260213472223, frameCount=8 delay count=1 drop 1 frame [1.23.9.0] [18.5.0] [2025-05-12 20:05:32 +0000] [video] video delay=-0.08082261111110256, clock=195.9208226111111, frameCount=6 delay count=1 drop 1 frame [1.23.9.0] [18.5.0] [2025-05-12 20:05:32 +0000] [video] video delay=-0.09063738888886519, clock=196.25063738888886, frameCount=8 delay count=1 drop 1 frame [1.23.9.0] [18.5.0] [2025-05-12 20:05:33 +0000] [video] video delay=-0.09037752777786068, clock=196.71037752777787, frameCount=5 delay count=1 drop 1 frame [1.23.9.0] [18.5.0] [2025-05-12 20:05:36 +0000] [video] video delay=-0.08560527777785865, clock=200.18560527777785, frameCount=7 delay count=1 drop 1 frame I tried to deactivate framerate-matching to test and it seems better in the logs. But obviously, visually it's not great since the TV doesn't match the content

Benigans avatar May 13 '25 07:05 Benigans

@Benigans

  1. 你电视的视频格式是设置为 1080 50HZ,还是1080 60HZ呢?
  2. iSTB如果使用mpv内核播放会有丢帧不顺畅的情况吗?

kingslay avatar May 13 '25 11:05 kingslay

@Benigans

  1. 你电视的视频格式是设置为 1080 50HZ,还是1080 60HZ呢?
  2. iSTB如果使用mpv内核播放会有丢帧不顺畅的情况吗?

1 - I set my ATV to 4K 50hz so it doesn't need to switch framerate most of the time (majority of content I watch is 50fps). So the match framerate switch shouldn't do anything in my tests since the content I was watching was 50fps 2 - I tried with MPV and it looked smooth. I just saw a few [vd] warn: Error while decoding frame! but it was when I was closing the player.

I also use the SWIPTV app and I got the same issues using KS. It's dropping some frames but I can't extract logs from this app :/

Benigans avatar May 13 '25 17:05 Benigans

@Benigans 我刚优化了下代码。发布了一个新的 TestFlight包:Build Number: 442。 你试下,用这个最新的包,我的app还会不会有 lip sync 的问题

kingslay avatar Jun 06 '25 04:06 kingslay

@Benigans 我刚优化了下代码。发布了一个新的 TestFlight包:Build Number: 442。 你试下,用这个最新的包,我的app还会不会有 lip sync 的问题

I made some tests and lip sync looks ok. But I didn’t had so much time to test extensively. But still dropped frames on .ts streams and .mkv movies :(

Benigans avatar Jun 06 '25 20:06 Benigans

I can relate to this problem. I had this issue for over 6-8 months.

@kingslay if it helps, it does not happen with my iPhone 15 Pro (A17 Pro chip). It only happens with latest Apple TV 4K (2022) with A15 chip. It does not happen with interlaced content (1080i 25hz). Deinterlacer works and no stuttering at all. The issue is isolated to regular non-interlaced content.

I really hope you can find a fix :)

chillout23 avatar Jun 06 '25 23:06 chillout23

@chillout23 @Benigans 我刚又优化了下代码。你们可以用最新的testflight包(445)试下。并且这个新包我在 高级设置那边增加了一个开关 Show Developer HUD Log。 打开这个开关就可以右上角显示实时帧率和丢帧数了。 这样的话你们就可以在观看视频的时候就可以看到这些性能数据,不需要打开一个新的页面了。打开新的页面或是打开菜单是会导致视频丢帧的,所以我们重点关注的是正常播放的时候会不会有丢帧的情况发生。

kingslay avatar Jun 09 '25 06:06 kingslay

The HUD is great thanks ! It’s difficult to isolate what’s causing the dropped frames. I tried 1080p25 streams, 1080p50, 4k50 and 4k50 HDR. All have dropped frames but it’s really random. I can watch 30min without an issue an then have like 30-40 droppers frames in 10min. It seems to happen more with most demanding streams (like 4k50).

Benigans avatar Jun 10 '25 18:06 Benigans

@Benigans

  1. 现在观看25fps或30fps的电影不会有丢帧的情况了吧
  2. 你观看4k50fps的电影,产生的丢帧,是一下子就丢了十个帧以上,还是间隔的每次都是丢2个帧。
  3. 你观看过程中是否有进行seek呢?如果有seek的话,一般的是会丢帧。

kingslay avatar Jun 11 '25 07:06 kingslay

@Benigans

  1. 现在观看25fps或30fps的电影不会有丢帧的情况了吧
  2. 你观看4k50fps的电影,产生的丢帧,是一下子就丢了十个帧以上,还是间隔的每次都是丢2个帧。
  3. 你观看过程中是否有进行seek呢?如果有seek的话,一般的是会丢帧。

It happens for 25fps too. Generally it’s 1-2 frames dropped and smooth for some time then 1-2 dropped etc.. With 4k50 streams I have some time 10frame dropped at once. For the tests I made, I didn’t touch anything and just watch the stream. When there is a rollback it dropped frame but I don’t talk about that. It’s just about the regular stutters

Benigans avatar Jun 11 '25 19:06 Benigans

This doesn't happen on iOS, which suggests this is a HDMI audio clock sync issue. It sounds like HDMI related.

@kingslay, maybe this will work: --video-sync=display-resample → Uses the display (vsync) clock as master instead of HDMI audio. --video-sync-max-video-change=1.0 → This is the MPV default, could eliminate the problem.

These settings are taken from mpv, but should be found in ffmpeg as well.

chillout23 avatar Aug 14 '25 00:08 chillout23

@Benigans which Apple TV are you using? And also, which TV? I have the latest with A15 chip.

chillout23 avatar Aug 14 '25 20:08 chillout23

@Benigans which Apple TV are you using? And also, which TV? I have the latest with A15 chip.

I have the last one (and also the first 4K model). All tests are made on the newer model

Benigans avatar Aug 15 '25 10:08 Benigans

@Benigans which Apple TV are you using? And also, which TV? I have the latest with A15 chip.

I have the last one (and also the first 4K model). All tests are made on the newer model

Ah ok. It would be very interesting to see if the older 4K models (1st and 2nd gen) have these issues. But I don't know anyone that has this knowledge about framedrops and owning the older model :)

chillout23 avatar Aug 15 '25 11:08 chillout23

@Benigans do you have time to carry out the same tests on the older Apple TV 4K you have?

chillout23 avatar Aug 21 '25 11:08 chillout23

@Benigans do you have time to carry out the same tests on the older Apple TV 4K you have?

Same on the older model :(

Benigans avatar Aug 21 '25 17:08 Benigans

Thanks for testing :) @kingslay, I think you should experiment futher what's next. With so many applications using your library I hope you can find a fix to this issue.

chillout23 avatar Aug 22 '25 10:08 chillout23

  1. @Benigans 谢谢你的测试。你是用最新版本的app进行测试的吗?
  2. 你的电视是4K的吧。你的电视是如何连接Apple TV的呢?是AppleTV直接跟电视连接,还是Apple TV连接到回音壁,然后回音壁在接到电视上。

kingslay avatar Aug 22 '25 11:08 kingslay

  1. @Benigans 谢谢你的测试。你是用最新版本的app进行测试的吗?
  2. 你的电视是4K的吧。你的电视是如何连接Apple TV的呢?是AppleTV直接跟电视连接,还是Apple TV连接到回音壁,然后回音壁在接到电视上。

1- Yes, on the latest TestFlight 2.6.8(505) 2- Main setup is latest AppleTV on an AV Receiver on a 4K TV. But I also have the same issue on a simpler setup : first gen AppleTV 4K directly connected on a 1080p TV with nothing in between

Benigans avatar Aug 22 '25 20:08 Benigans

@kingslay I can also confirm that I have these issues with the latest Apple TV when directly connected to a TV. I have tried multiple TV's. No soundbar or AV receiver. The issue is the same.

[1.23.10.0] [18.6.0] [2025-08-22 21:34:40 +0000] Media details: Video: 'avc1' 1920.0x1080.0 50.0fps Audio: 'aac ' aac (LC) 2 channels [1.23.10.0] [18.6.0] [2025-08-22 21:34:40 +0000] ["readyTime": 0.004237916666170349, "readAudioTime": 0.00018287500006408663, "decodeAudioTime": 0.0005695416666640085, "readVideoTime": 0.00023941666677274043, "findTime": 0.06045554166666989, "firstTime": 1.3115662916661677, "openTime": 0.6978910833331611, "decodeVideoTime": 0.0014223750004020985] [1.23.10.0] [18.6.0] [2025-08-22 21:34:40 +0000] playerStateDidChange - bufferFinished [1.23.10.0] [18.6.0] [2025-08-22 21:34:40 +0000] [video] video delay=-0.18034708333289018, clock=20400.837858194445, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:11 +0000] [video] video delay=-0.09809816666529514, clock=20490.715609277777, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:12 +0000] [video] video delay=-0.09793991666447255, clock=20491.715451027776, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:34 +0000] [video] video delay=-0.09809999999924912, clock=20513.71561111111, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:35 +0000] [video] video delay=-0.09820684722581063, clock=20514.715717958337, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:36 +0000] [video] video delay=-0.09844227777648484, clock=20515.715953388888, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:37 +0000] [video] video delay=-0.09862562499984051, clock=20516.71613673611, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:42 +0000] [video] video delay=-0.09885858333655051, clock=20521.716369694448, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:44 +0000] [video] video delay=-0.09619723611103836, clock=20523.713708347223, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:45 +0000] [video] video delay=-0.09577854166491306, clock=20524.713289652776, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:46 +0000] [video] video delay=-0.09326133333161124, clock=20525.710772444443, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:47 +0000] [video] video delay=-0.09814959721916239, clock=20526.71566070833, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:48 +0000] [video] video delay=-0.0978208194464969, clock=20527.715331930558, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:36:59 +0000] [video] video delay=-0.09801373611117015, clock=20538.715524847223, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:00 +0000] [video] video delay=-0.09823173610857339, clock=20539.67574284722, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:00 +0000] [video] video delay=-0.0966183194432233, clock=20539.714129430555, frameCount=8 delay count=2 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:01 +0000] [video] video delay=-0.09388941666475148, clock=20540.711400527776, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:02 +0000] [video] video delay=-0.09854347222062643, clock=20541.716054583332, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:08 +0000] [video] video delay=-0.08005056944602984, clock=20548.197561680558, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:17 +0000] [video] video delay=-0.09887798611089238, clock=20556.716389097222, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:19 +0000] [video] video delay=-0.09859930555467145, clock=20558.716110416666, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:21 +0000] [video] video delay=-0.09819540277749184, clock=20560.71570651389, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:22 +0000] [video] video delay=-0.09803431944237673, clock=20561.715545430554, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:23 +0000] [video] video delay=-0.09789629166698433, clock=20562.71540740278, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:25 +0000] [video] video delay=-0.0979582361105713, clock=20564.715469347222, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:26 +0000] [video] video delay=-0.09817648610987817, clock=20565.71568759722, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:27 +0000] [video] video delay=-0.09839137499875505, clock=20566.71590248611, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:28 +0000] [video] video delay=-0.0984699722212099, clock=20567.715981083333, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:30 +0000] [video] video delay=-0.09577306944629527, clock=20569.713284180558, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:33 +0000] [video] video delay=-0.08005554166811635, clock=20573.63756665278, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:55 +0000] [video] video delay=-0.09891775000141934, clock=20594.716428861113, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:37:59 +0000] [video] video delay=-0.08007788888789946, clock=20598.957588999998, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:04 +0000] [video] video delay=-0.09804709722084226, clock=21083.715558208332, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:06 +0000] [video] video delay=-0.09809004166527302, clock=21085.715601152777, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:07 +0000] [video] video delay=-0.09791666666205856, clock=21086.715427777774, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:08 +0000] [video] video delay=-0.09778634721806156, clock=21087.71529745833, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:29 +0000] [video] video delay=-0.09811480555435992, clock=21108.715625916666, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:31 +0000] [video] video delay=-0.0974164583349193, clock=21110.714927569446, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:32 +0000] [video] video delay=-0.09590012499756995, clock=21111.71341123611, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:33 +0000] [video] video delay=-0.09502188888654928, clock=21112.712532999998, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:38 +0000] [video] video delay=-0.0988919861119939, clock=21117.716403097224, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:39 +0000] [video] video delay=-0.09871729166479781, clock=21118.716228402776, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:40 +0000] [video] video delay=-0.09854618055396713, clock=21119.716057291665, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:41 +0000] [video] video delay=-0.09837504166716826, clock=21120.71588615278, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:43 +0000] [video] video delay=-0.098091111110989, clock=21122.715602222223, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:44 +0000] [video] video delay=-0.09793374999935622, clock=21123.71544486111, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:45 +0000] [video] video delay=-0.09788970833687927, clock=21124.71540081945, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:55 +0000] [video] video delay=-0.0983194027794525, clock=21134.71583051389, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:56 +0000] [video] video delay=-0.09857049999482115, clock=21135.716081611106, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:46:57 +0000] [video] video delay=-0.09879793055370101, clock=21136.716309041665, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:47:00 +0000] [video] video delay=-0.09954516666766722, clock=21139.67705627778, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:47:02 +0000] [video] video delay=-0.08000009722309187, clock=21141.757511208336, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:47:16 +0000] [video] video delay=-0.0974490694461565, clock=21155.714960180558, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:47:17 +0000] [video] video delay=-0.09700524999789195, clock=21156.71451636111, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:47:18 +0000] [video] video delay=-0.09620093055491452, clock=21157.713712041666, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:47:20 +0000] [video] video delay=-0.098469527776615, clock=21159.715980638888, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:47:21 +0000] [video] video delay=-0.09872074999657343, clock=21160.716231861108, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:47:22 +0000] [video] video delay=-0.09889422222113353, clock=21161.716405333333, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:47:24 +0000] [video] video delay=-0.08010054166516056, clock=21164.037611652777, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:54:57 +0000] [video] video delay=-0.0980870555540605, clock=21616.715598166666, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:54:58 +0000] [video] video delay=-0.09837611110924627, clock=21617.71588722222, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:54:59 +0000] [video] video delay=-0.09857420833213837, clock=21618.716085319444, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:01 +0000] [video] video delay=-0.09884613888789318, clock=21620.71635725, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:02 +0000] [video] video delay=-0.09879711111352663, clock=21621.716308222225, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:03 +0000] [video] video delay=-0.09778141666538431, clock=21622.715292527777, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:04 +0000] [video] video delay=-0.09606604166401667, clock=21623.713577152776, frameCount=7 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:05 +0000] [video] video delay=-0.09391543055608054, clock=21624.711426541668, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:06 +0000] [video] video delay=-0.09816931944442331, clock=21625.715680430556, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:07 +0000] [video] video delay=-0.09802224999657483, clock=21626.715533361108, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:08 +0000] [video] video delay=-0.09787863888777792, clock=21627.71538975, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:21 +0000] [video] video delay=-0.09311295832958422, clock=21640.71062406944, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:22 +0000] [video] video delay=-0.09832418055520975, clock=21641.715835291667, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:23 +0000] [video] video delay=-0.09856652777671115, clock=21642.71607763889, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:23 +0000] [video] video delay=-0.08093931944313226, clock=21642.818450430554, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:24 +0000] [video] video delay=-0.08810027777872165, clock=21643.92561138889, frameCount=8 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:25 +0000] [video] video delay=-0.09904609722070745, clock=21645.256557208333, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:26 +0000] [video] video delay=-0.08216933333096677, clock=21645.919680444444, frameCount=5 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:55:26 +0000] [video] video delay=-0.0806600555551995, clock=21646.418171166668, frameCount=5 delay count=1 drop 1 frame

chillout23 avatar Aug 22 '25 22:08 chillout23

@chillout23

  1. 看你的这个日志。 这个是很有规律的丢帧,差不多是1s丢一帧。有规律的丢帧比较好排查问题。这是一个电影吗?你方便把url发给我吗?我进行调试。
  2. 出现这个规律的丢帧的时候。你用的TV是 1080的,还是4k的。
  3. 你的Apple TV 是有开启匹配帧速率 这个功能的吧。

kingslay avatar Aug 25 '25 02:08 kingslay

@kingslay

  1. For me it happens with any type of content, but to be sure, find something with 1080p with aac stereo audio.
  2. TV is set to 4K.
  3. Match frame rate is turned on, but I have tried to set it off and put manually the refresh rate to the video source (50 hz), same result.

I don't know if it means something but if you look closer into the logs, there is a 7 minute period without any framedrops:

[1.23.10.0] [18.6.0] [2025-08-22 21:47:24 +0000] [video] video delay=-0.08010054166516056, clock=21164.037611652777, frameCount=6 delay count=1 drop 1 frame [1.23.10.0] [18.6.0] [2025-08-22 21:54:57 +0000] [video] video delay=-0.0980870555540605, clock=21616.715598166666, frameCount=5 delay count=1 drop 1 frame

chillout23 avatar Aug 25 '25 14:08 chillout23

你这个可以稳定复现丢帧的视频可以发给我吗?我这边看下能不能复现这个稳定的丢帧。

kingslay avatar Aug 25 '25 14:08 kingslay

I don't have any video to share with you right now. I just use my playlist from my provider. Maybe @Benigans has something he can share.

chillout23 avatar Aug 25 '25 14:08 chillout23

@kingslay I send you an email with a link to channel from my provider. I didn't post it here because there's credentials in the link. Hope it can help !

Benigans avatar Aug 25 '25 17:08 Benigans

@Benigans 你发给我的直播链接我这边无法打开。有没有可以稳定复现的vod的视频呢? 因为vod视频可以下载到本地。这样可以减少网络问题。最好是那种会一直持续丢帧的视频。这样好找到原因。

kingslay avatar Aug 26 '25 02:08 kingslay

@kingslay Maybe the stream is geolocked... Too bad because it produced dropped frames :( I'll try to found something but I use KS for live streams only.

Benigans avatar Aug 26 '25 07:08 Benigans

@Benigans 你可以在我的app的 设置-视频 那边把 Asynchronous Decompression 这个开关设置为false。看下还会不会有这个丢帧的问题。

kingslay avatar Aug 27 '25 01:08 kingslay