我正在使用 FMX 在 Delphi 10.2 Tokyo 中创建软件。我想在所有组件后面使用TMediaPlayerControl
. 我将其发送TMediaPlayerControl
到后面并播放视频,但视频不在组件后面播放,而是在它们之上播放。
我TMemo
在客户区放了一个,TMediaPlayerControl
在它后面放了一个。它应该做的是在 . 后面播放视频TMemo
,而不是在TMemo
.
如何在后台播放视频TMemo
?
我正在使用 FMX 在 Delphi 10.2 Tokyo 中创建软件。我想在所有组件后面使用TMediaPlayerControl
. 我将其发送TMediaPlayerControl
到后面并播放视频,但视频不在组件后面播放,而是在它们之上播放。
我TMemo
在客户区放了一个,TMediaPlayerControl
在它后面放了一个。它应该做的是在 . 后面播放视频TMemo
,而不是在TMemo
.
如何在后台播放视频TMemo
?
如果你想这样做,你将需要一个可以直接在 openGL 表面上渲染的视频播放器(即实际上在 delphi 表单上渲染)。据我所知,他们是唯一一个可以做到这一点的视频播放器,它是TalVideoPlayer
在alcinoe ( https://sourceforge.net/projects/alcinoe/ ) 中实现的。当前的实现仅适用于 ios / android,但 windows 实现接缝非常简单,macos 版本非常简单,因为它使用与 ios 相同的 api
您可以使用 libvlc 直接呈现为表单或任何您想要的。调用 libvlc_media_player_set_display_window() 以设置媒体播放器应在其中呈现其视频输出的窗口句柄。因此,您可以在所有组件后面的背景中显示视频。
我正在使用来自 http://prog.olsztyn.pl/paslibvlc的包装类和组件, 确实非常简单
检查 FMX Delphi 10.4.2 - 工作正常(libVLC 3.014 - 最新)