-
Notifications
You must be signed in to change notification settings - Fork 53
record_file_cover
zanxiaofei edited this page Oct 11, 2017
·
2 revisions
文件录制的过程中,可以通过KSYRecordKit的requestScreenShot接口来获取任意录制的视频截图以作为文件的封面使用
- 通过接口requestScreenShot触发视频截图
- 截图接口为异步,通过GLRender.ScreenShotListener来拿到截取后的图片
/**
* 根据设置的录制分辨率来截取图片
* @param screenShotListener 通过listener返回截取好的图片
*/
public void requestScreenShot(GLRender.ScreenShotListener screenShotListener)
/**
* 根据缩放比例来截取图片
*
* @param scaleFactor 图片的缩放比例:0~1.0.
* @param screenShotListener 通过listener返回截取好的图片
*/
public void requestScreenShot(float scaleFactor, GLRender.ScreenShotListener screenShotListener)
//截图回调
public interface ScreenShotListener {
void onBitmapAvailable(Bitmap bitmap);
}
mRecordKit.requestScreenShot(new GLRender.ScreenShotListener() {
@Override
public void onBitmapAvailable(Bitmap bitmap) {
BufferedOutputStream bos = null;
try {
Date date = new Date() ;
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy_MM_dd_HH_mm_ss") ;
final String filename = "/sdcard/screenshot"+ dateFormat.format(date) + ".jpg";
bos = new BufferedOutputStream(new FileOutputStream(filename));
if (bitmap != null) {
bitmap.compress(Bitmap.CompressFormat.JPEG, 90, bos);
runOnUiThread(new Runnable() {
public void run() {
Toast.makeText(CameraActivity.this, "保存截图到 "+ filename,
Toast.LENGTH_SHORT).show();
}
});
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} finally {
if (bos != null) try {
bos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
});