KSPlayer icon indicating copy to clipboard operation
KSPlayer copied to clipboard

Deinterlacing does not work with .m3u8 streams

Open chillout23 opened this issue 2 years ago • 14 comments

If the stream is encapsulated into HLS (.m3u8) TracyPlayer does not automatically enable deinterlacing on interlaced streams.

Currently this work perfect with mpegts (.ts) streams. @kingslay can you please fix this so it also detects .m3u8?

chillout23 avatar Nov 06 '23 23:11 chillout23

可以提供下url吗

kingslay avatar Nov 06 '23 23:11 kingslay

@kingslay I emailed you the url.

chillout23 avatar Nov 07 '23 00:11 chillout23

看了下是因为流信息里面没有说他是interlaced 流。所以就不会进行处理了。下面是ffmpeg打印出来的信息 Duration: N/A, start: 5087.080000, bitrate: N/A Program 0 Metadata: variant_bitrate : 0 Stream #0:0: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn Metadata: variant_bitrate : 0 Stream #0:1: Audio: mp2 ([3][0][0][0] / 0x0003), 48000 Hz, stereo, s16p, 256 kb/s Metadata: variant_bitrate : 0

kingslay avatar Nov 07 '23 08:11 kingslay

@kingslay, I understand. In that case I have no suggestions how to solve this. This works in VLC media player, both .ts and .m3u8 can auto detect interlaced.

chillout23 avatar Nov 07 '23 11:11 chillout23

mpv可以自动检测出来吗?因为mpv也是基于ffmpeg的。如果mpv可以的话,那可以去看下他们的代码。看下他们是怎么实现的。但是vlc是针对ffmpeg做了很多的优化。所以一般vlc的的功能更强大,比较难把vlc的实现方案应用我的这个库里。

kingslay avatar Nov 07 '23 11:11 kingslay

I understand, I think we can ask Lillyplayer developer if MPV can autodetect both .ts and .m3u8 streams as he has experience with this player. @skrew is this possible for both streaming formats?

chillout23 avatar Nov 07 '23 11:11 chillout23

@skrew can you take a look at this?

chillout23 avatar Dec 03 '23 00:12 chillout23

@kingslay this works also in MPV. I have checked. Can you implement it into KSPlayer?

chillout23 avatar Jul 26 '24 14:07 chillout23

那你可以给我测试的url呢?我这边试下

kingslay avatar Jul 26 '24 14:07 kingslay

Grab this file: https://www.transfernow.net/dl/202407268y2HJdr0

chillout23 avatar Jul 26 '24 15:07 chillout23

@chillout23 这个视频在我的app上是可以判断成 top first。你可以试下我的app

kingslay avatar Jul 27 '24 03:07 kingslay

@kingslay it looks like this being detected as mpegts even though I put .m3u8 on the file extension. So you need to try this with a live stream. I will find you another link shortly. Thank you.

chillout23 avatar Jul 29 '24 11:07 chillout23

我用ffprobe 发现无法检查出这个视频流是top first, ffprobe是用field_order来判断是不是Interlace。我搜索了下mpv里面的代码。发现mpv没有调用field_order。所以我猜测mpv 不是用ffmpeg的方法来检查的,而是用自己的机制来判断。但是我对mpv不是很熟悉,不知道他们是通过什么机制来判断。

kingslay avatar Jul 29 '24 15:07 kingslay

Thank you for checking. Unfortunately I do not have any clues either.

chillout23 avatar Jul 29 '24 22:07 chillout23