zoukankan      html  css  js  c++  java
  • 推荐内置android控件的开源项目alcinoe

    开源地址:https://github.com/Zeus64/alcinoe

    该控件包,含以下几个控件:

    1.基于OpenGL实现的视频播放器 ALVideoPlayer.

    ALVideoPlayer将一个视频绘制到一个TEXTURE。可以将视频完全集成到delphi form中,并且可以将任何需要的控件放在顶部,因为它支持Z-ORDER。官方的delphi视频播放器只是form顶部的原生视频播放器窗口,因此不支持Z-ORDER。

    在android下作者使用ExoPlayer。ExoPlayer支持诸如动态自适应HTTP流媒体(DASH),HLS,SmoothStreaming和Common Encryption等功能,MediaPlayer不支持这些功能。它的设计很容易定制和扩展。在Ios下使用的AVPlayer也支持HLS,比如exoplayer。

    2.实现了内置控件TEdit/TMemo,支持ios与android.

    这个重要,官方说10.3为android实现内置控件TEdit,现在我们提前有用的了!内置控件有什么好处,当然是效率与无bug.到现在Firemonkey的TEdit/TMemo还有bug.

    3.高效的doublebuffered firemonkey控件,实现了原生绘制速度

    • Rectangle
    • Circle
    • Text (Can also draw html text on ios/android/win/macos)
    • Glyph
    • etc.

    我试着运行了作者提供的Demo,真是快的不得了,作者不是吹牛的。是Delphi自带的2陪速度。

    4.改进了firemonkey控件

    • ScrollBox
    • TabControl
    • RangeTrackBar

    还有其他方面的内容,具体可以去看,上面的内容已经足够吸引我用了!

     在试用过程中,发现在android 4.4.4上出错,在android 7.1.1正常,已经提交了问题,不知作者会不会修改,来支持低版本的android了。

    后记:作者很勤奋,今早就给出了修正,解决在android 4.4.4上的问题:

    找到fSurfaceTexture.setOnFrameAvailableListener(FOnFrameAvailableListener, fHandler);改成下面这样:

      try
         fSurfaceTexture.setOnFrameAvailableListener(FOnFrameAvailableListener, fHandler);
      except
         fSurfaceTexture.setOnFrameAvailableListener (FOnFrameAvailableListener); // api android <21
      end;

    同时,作者也说:But by calling without locking the handle there are crashes in the video ...
    Any light on it would help a lot.

    在android 4.4.4上能运行了,于是做了进一步测试:

    左侧图是使用ALFmxControls的绘图效率,平均近52帧,右侧图为Delphi原生绘制效率,平均11帖,近5陪的差别。

    在我的红米1S上能得到这样效率,真不可思异,要知道,作为测试机,这可是近三年多的机器,只能证明作者这个控件实现的太牛了!

    估计看到这里,你也想试试,果真有这么神奇吗。相信我,不骗你,一试便知。反正我是准备在项目中启用这个控件了,虽然说尽量不用第三方控件,以减少项目后期的维护量,但对于这个开源控件来说,值得投入。

    如果真要试用,还得有思想准备,就是整个开源内容近1G大小,拉回来不容易,我是拉了半天整不回来,还是Q友努力传给我的。如果你也需要,也可以找我,我的QQ:391879。

    2018.8.2,作者支持了Delphi 10.2.3 ,并更新了Demo.

  • 相关阅读:
    食物链(并查集)
    字母奔跑
    19+199+1999+……+1999…9(1999个9)和是多少?
    利用union判断CPU是大端模式还是小端模式
    闰年个数(非循环)
    计算catlan数f(n)(动态规划)
    模拟循环调度(队列)
    回溯表达式,+不小于4个,乘号不小于2个,列出表达式种数
    枚举{1,2,3,4}子集
    回溯n个元素的子集
  • 原文地址:https://www.cnblogs.com/kinglandsoft/p/9204182.html
Copyright © 2011-2022 走看看