【问题标题】:Timing the capture of screen shots using Androids MediaProjector使用 Androids MediaProjector 定时捕获屏幕截图
【发布时间】:2016-12-22 12:25:59
【问题描述】:

我用mtsahkis的例子在Android上实现了一个截屏系统:https://github.com/mtsahakis/MediaProjectionDemo/blob/master/src/com/mtsahakis/mediaprojectiondemo/ScreenCaptureImageActivity.java

基本实现效果很好,但我在理解如何控制屏幕截图的创建速度时遇到了问题。

我可以看到 VirtualDisplay 被提供了一个 ImageReader 和一个处理程序,图像阅读器附加了一个 setOnImageAvailableListener,所以大概这就是限制捕获速度的原因,在我的 Galaxy 边缘上,每秒捕获一次不一致。

有没有更多使用 Handlers 经验的人知道如何在线程上设置一致的时间?创建线程时会这样做吗?

    // start capture handling thread
    new Thread()
    {
        @Override
        public void run()
        {
            Looper.prepare();
            mHandler = new Handler();
            Looper.loop();
        }
    }.start();

最好的

史蒂夫

【问题讨论】:

  • "有更多使用 Handlers 经验的人知道如何在线程上设置一致的计时吗?" -- 如果可能的话,我会惊呆的。

标签: android android-mediaprojection


【解决方案1】:

我联系了媒体投影演示存储库的作者,他的建议是简单地将线程休眠在 onImageAvailable 侦听器中,这对我的目的非常有效。

Thread.sleep(mi_Delay);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-04-06
    • 2014-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多