Android中的背景视频录制

use*_*959 2 android video-recording

我想编写一个服务,该服务在服务启动时在后台记录,并在服务停止时停止记录.

我在这里找到了一些关于它的板子,但没有一个可行.

谁能帮我?感谢您的帮助!

谢谢!!

Ale*_*tke 6

我从来没有用视频这样做,只拍照,但我认为它会非常相似.希望它会对你有所帮助.

首先要做的事情 - Android不允许您在没有预览表面的情况下拍摄/录制视频.这使得从服务中执行此操作变得更加困难,因为您需要从头开始创建此预览.您可能会发现一些像这样的旧帖子输入虚拟预览.这似乎不再适用于新的API.

但是,有一种方法可以创建这样的预览,使其透明或将其调整为像1x1像素一样愚蠢的东西.有关如何执行此操作的信息可以在这篇文章中找到.

我会问自己,你是否真的需要从服务而不是活动中获取此视频.如果是,请使用窗口管理器创建预览表面(它适用于从我的服务中拍摄照片):

WindowManager winMan = (WindowManager) mCtx.getSystemService(Context.WINDOW_SERVICE);
params = new WindowManager.LayoutParams(WindowManager.LayoutParams.WRAP_CONTENT,            WindowManager.LayoutParams.WRAP_CONTENT,
        WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,
        WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH,
        PixelFormat.TRANSLUCENT);        
winMan.addView(surfaceview, params);

surfaceview.setZOrderOnTop(true);
mHolder.setFormat(PixelFormat.TRANSPARENT);
Run Code Online (Sandbox Code Playgroud)

祝好运.