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
887 stars 184 forks source link

关于多路视频流 #688

Closed Ant1mage closed 5 months ago

Ant1mage commented 7 months ago

大佬对多路视频流拼接有没有好的想法... 目前能想到的是多个 rtsp 解包保存 frame, 渲染前做帧同步. 不知道这种方式是否靠谱呢?

kingslay commented 7 months ago

多路视频流拼接是什么意思呢?你是要把多个视频合并起来一起显示吗?

Ant1mage commented 7 months ago

多路视频流拼接是什么意思呢?你是要把多个视频合并起来一起显示吗?

是的, 类似于多路监控, 多屏幕时间戳需要一致

kingslay commented 7 months ago

那你可以搞多个播放器的view,然后同时显示,如果要保证时间戳一致是比较难的。因为有网络传输的问题,但是如果是内部局域网的话,那时间戳应该相差不会很大。也有一个方式是用ffmpeg在后台把多个流合并成一个流。然后播放合并之后的那个流

Ant1mage commented 7 months ago

那你可以搞多个播放器的view,然后同时显示,如果要保证时间戳一致是比较难的。因为有网络传输的问题,但是如果是内部局域网的话,那时间戳应该相差不会很大。也有一个方式是用ffmpeg在后台把多个流合并成一个流。然后播放合并之后的那个流

ffmpeg 合并消耗应该挺大的吧...因为要支持至少 16 路的视频流, 在客户端做合并应该延迟很大了.

kingslay commented 7 months ago

16路流,如果不在服务端做合并的,那同时播放16路流的话,那客户端的压力也很大,需要设备很好。所以最好是在服务端做合并。

Ant1mage commented 7 months ago

16路流,如果不在服务端做合并的,那同时播放16路流的话,那客户端的压力也很大,需要设备很好。所以最好是在服务端做合并。

目前只考虑在 M1 M2 的 MacOS 下做

kingslay commented 7 months ago

那你可以简单的试下,同时播放16流的效果怎么样。如果很卡的话,那你就只能先用ffmpeg进行合流了。

Ant1mage commented 7 months ago

那你可以简单的试下,同时播放16流的效果怎么样。如果很卡的话,那你就只能先用ffmpeg进行合流了。

好, 感谢大佬