uestccokey / EZFilter

A lightweight (<180KB), easy-to-extend Android filter and dynamic sticker framework for adding filters and stickers for camera, video, bitmap and view.(一个轻量级(<180KB)、易扩展的Android滤镜和动态贴纸框架,支持摄像头、视频、图片和视图添加滤镜和贴纸。)
MIT License
207 stars 56 forks source link

加贴纸的视频保存到本地应该怎么操作呢 #37

Closed gyymz1993 closed 6 years ago

gyymz1993 commented 6 years ago

加贴纸的视频保存到本地应该怎么操作呢

uestccokey commented 6 years ago

离屏渲染参考VideoOffscreenActivity EZFilter.input(输入的视频文件路径).addFilter(贴纸滤镜).output(输出的视频文件路径); 其他的参考VideoFilterActivity 通过获取到的ISupportRecord,进行录制视频到本地

gyymz1993 commented 6 years ago

嗯 我们以前的加滤镜是用gpuImage来实现的 现在需要加动态字幕以及动画效果 并且需要保存处理过的视频

uestccokey commented 6 years ago

GPUImage和我的原理相似,滤镜移植过来稍微修改下就行。你视频添加了滤镜只是用来预览显示,最后保存的时候使用离屏渲染的Api,离屏渲染到本地就行了。 需要注意的是预览时添加的滤镜和离屏渲染时添加的滤镜不能是一个对象,要重新new一个出来。

gyymz1993 commented 6 years ago

image 也就是说我这么写是有问题的 如果我是实时加涂鸦贴纸 然后需要保存那么我的实时效果应该怎么处理呢 直接new出来的 我的实时效果岂不是没有 了 这个是依靠输入流来保存吗

uestccokey commented 6 years ago

涂鸦贴纸,demo里也有,不确定你要做的是不是这个效果,可以参考StickerRenderActivity.java,你需要确定一个开始和结束时机,然后调用startRecording和stopRecording就可以录制你刚刚操作的实时效果了