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

MEPlayer可以支持投屏视频画面功能吗 #645

Closed FantasyKingdom closed 5 months ago

FantasyKingdom commented 8 months ago

k神是否可以支持MEPlayer的投屏功能。或者给个思路,我这边自己尝试下。

kingslay commented 8 months ago

这个目前没有办法,因为苹果没有开放投屏的能力,只有avplayer才可以用投屏。

FantasyKingdom commented 6 months ago

@kingslay 我看vidhub这个app播放mkv格式也是能够投屏的,avplayer是不支持mkv格式的,所以肯定不是使用avplayer进行投屏的,感觉应该还有其它办法可以实现。

kingslay commented 6 months ago

vidhub的mac端,还是iOS端支持 mkv格式的投屏呢?

FantasyKingdom commented 6 months ago

vidhub的mac端,还是iOS端支持 mkv格式的投屏呢?

iOS端支持投屏

kingslay commented 6 months ago

有一个比较麻烦的方案。那就是用ffmpeg来解析mkv的格式,然后在用avplayer来进行解码和播放。这是一个可行的思路,不知道他是不是用这个放啊。但是这样改动太大了。

FantasyKingdom commented 6 months ago

有一个比较麻烦的方案。那就是用ffmpeg来解析mkv的格式,然后在用avplayer来进行解码和播放。这是一个可行的思路,不知道他是不是用这个放啊。但是这样改动太大了。

我有一台ios17的手机和ios15的平板,发现这个app投屏的效果是不一致的,ios17的手机投屏后是单纯的视频画面进行投屏了,但是ios15的平板投屏后只是简单的同屏显示而已。

FantasyKingdom commented 6 months ago

仅投屏视频画面是最佳的效果

有一个比较麻烦的方案。那就是用ffmpeg来解析mkv的格式,然后在用avplayer来进行解码和播放。这是一个可行的思路,不知道他是不是用这个放啊。但是这样改动太大了。

我有一台ios17的手机和ios15的平板,发现这个app投屏的效果是不一致的,ios17的手机投屏后是单纯的视频画面进行投屏了,但是ios15的平板投屏后只是简单的同屏显示而已。

仅投屏视频画面是最佳的效果

FantasyKingdom commented 6 months ago

有没有可能是Metal或AVSampleBufferDisplayLayer设置了某些参数,系统就认为它可用于投屏

kingslay commented 6 months ago

应该不可能 他们也有可能是用了dlna投屏

kingslay commented 6 months ago

vidhub的这个投屏需要在tv端安装什么软件吗?

FantasyKingdom commented 6 months ago

vidhub的这个投屏需要在tv端安装什么软件吗?

我是投屏到mac电脑上的,不需要安装任何投屏软件。

它们的投屏机制是这样的,用vidhub播放视频时,需要点击手机下拉控制中心的屏幕镜像,这时就会自动投屏当前播放的视频(仅视频画面,UI等控件不会被投屏出去)到mac电脑,如果退出播放器,返回播放列表,就自动切换到了真正的屏幕镜像模式(包括界面UI都会被投屏出去)。

solidusex commented 6 months ago

vidhub的这个投屏需要在tv端安装什么软件吗?

我是投屏到mac电脑上的,不需要安装任何投屏软件。

它们的投屏机制是这样的,用vidhub播放视频时,需要点击手机下拉控制中心的屏幕镜像,这时就会自动投屏当前播放的视频(仅视频画面,UI等控件不会被投屏出去)到mac电脑,如果退出播放器,返回播放列表,就自动切换到了真正的屏幕镜像模式(包括界面UI都会被投屏出去)。

这个就是系统投屏啊, 只要对端盒子/atv支持airplay协议,都可以投屏过去,限制是你ios不能切换到后台, 这里的代码层就是通知你来了一个外接屏幕,这个外接屏幕是有分辨率的,比如4K, 你把渲染target设置到这个屏幕上就可以按照外界分辨率投屏Airplay了.

FantasyKingdom commented 6 months ago

vidhub的这个投屏需要在tv端安装什么软件吗?

我是投屏到mac电脑上的,不需要安装任何投屏软件。 它们的投屏机制是这样的,用vidhub播放视频时,需要点击手机下拉控制中心的屏幕镜像,这时就会自动投屏当前播放的视频(仅视频画面,UI等控件不会被投屏出去)到mac电脑,如果退出播放器,返回播放列表,就自动切换到了真正的屏幕镜像模式(包括界面UI都会被投屏出去)。

这个就是系统投屏啊, 只要对端盒子/atv支持airplay协议,都可以投屏过去,限制是你ios不能切换到后台, 这里的代码层就是通知你来了一个外接屏幕,这个外接屏幕是有分辨率的,比如4K, 你把渲染target设置到这个屏幕上就可以按照外界分辨率投屏Airplay了.

@kingslay 有计划支持吗,这应该是目前能用的最佳方案了。虽然不能切到后台,但是我试了下锁屏情况下仍然是可以正常投屏的,也没有任何格式限制。

kingslay commented 6 months ago

有计划。但是目前这个优先级不高。