android 视频编辑框架(分割,裁剪,旋转,合并,添加logo,背景音乐等等)
来源:互联网 发布:linux怎么查看密码密码 编辑:程序博客网 时间:2024/06/06 06:48
EpMedia
基于FFmpeg开发的Android视频处理编辑框架,简单易用,帮助新手快速使用视频处理功能。包含以下功能:剪辑,裁剪,旋转,镜像,合并,添加LOGO,添加滤镜,添加背景音乐。
github地址:https://github.com/yangjie10930/EpMedia
使用方法:
- build.gradle里添加:
allprojects {repositories {...maven { url 'https://jitpack.io' }}}
- 添加gradle依赖:
compile 'com.github.yangjie10930:EpMedia:v0.8'
单个视频处理:
- 创建待处理视频:
EpVideo epVideo = new EpVideo(url);
- 剪辑
//一个参数为剪辑的起始时间,第二个参数为持续时间,单位:秒epVideo.clip(1,2);//从第一秒开始,剪辑两秒
- 裁剪
//参数分别是裁剪的宽,高,起始位置X,起始位置YepVideo.crop(480,360,0,0);
- 旋转和镜像
//第一个参数为旋转角度,第二个参数为是否镜像,仅支持90,180,270度旋转epVideo.rotation(90,true);
- 添加文字
//参数分别是添加位置的X,Y坐标,文字的字号(单位px),文字颜色,字体文件的路径,内容epVideo.addText(10,10,35,"red",ttfPath,text);
- 添加logo
//添加图片类//参数为图片路径,X,Y,图片的宽,高,是否是动图(仅支持png,jpg,gif图片,如果是gif图片,最后一个参数为true)EpDraw epDraw = new EpDraw(filePath,10,10,50,50,false);epVideo.addDraw(epDraw);
- 添加自定义滤镜
//自定义滤镜,ffmpeg命令支持的滤镜都支持epVideo.addFilter(filter);
- 处理单个视频
EpVideo epVideo = new EpVideo(url);EpEditor epEditor = new EpEditor(this);//输出选项,参数为输出文件路径(目前仅支持mp4格式输出)EpEditor.OutputOption outputOption = new EpEditor.OutputOption(outFile);outputOption.width = 480;//输出视频宽,如果不设置则为原始视频宽高outputOption.height = 360;//输出视频高度outputOption.frameRate = 30;//输出视频帧率,默认30outputOption.bitRate = 10;//输出视频码率,默认10epEditor.exec(epVideo, outputOption, new OnEditorListener() {@Overridepublic void onSuccess() {}@Overridepublic void onFailure() {}
@Override public void onProgress(float progress) {//这里获取处理进度 }
});
- 添加背景音乐
EpEditor epEditor = new EpEditor(this);//参数分别是视频路径,音频路径,输出路径,原始视频音量(1为100%,0.7为70%,以此类推),添加音频音量epEditor.music(videoPath, audioPath, outfilePath, 1, 0.7, new OnEditorListener() {@Overridepublic void onSuccess() {}@Overridepublic void onFailure() {}
@Override public void onProgress(float progress) {//这里获取处理进度 }
});
多个视频处理&合并
- 合并视频
ArrayList<EpVideo> epVideos = new ArrayList<>();epVideos.add(new EpVideo(url));//视频1epVideos.add(new EpVideo(url2));//视频2epVideos.add(new EpVideo(url3));//视频3EpEditor epEditor = new EpEditor(this);//输出选项,参数为输出文件路径(目前仅支持mp4格式输出)EpEditor.OutputOption outputOption = new EpEditor.OutputOption(outFile);outputOption.width = 480;//输出视频宽,默认480outputOption.height = 360;//输出视频高度,默认360outputOption.frameRate = 30;//输出视频帧率,默认30outputOption.bitRate = 10;//输出视频码率,默认10epEditor.merge(epVideos, outputOption, new OnEditorListener() {@Overridepublic void onSuccess() {}@Overridepublic void onFailure() {}
@Override public void onProgress(float progress) {//这里获取处理进度 }
});
- 无损合并视频(对视频格式严格,需要分辨率,帧率,码率都相同)
ArrayList<EpVideo> epVideos = new ArrayList<>();epVideos.add(new EpVideo(url));//视频1epVideos.add(new EpVideo(url2));//视频2epVideos.add(new EpVideo(url3));//视频3EpEditor epEditor = new EpEditor(this);epEditor.mergeByLc(epVideos, new EpEditor.OutputOption(outFile), new OnEditorListener() {@Overridepublic void onSuccess() {}@Overridepublic void onFailure() {}
@Override public void onProgress(float progress) {//这里获取处理进度 }
});
阅读全文
0 0
- android 视频编辑框架(分割,裁剪,旋转,合并,添加logo,背景音乐等等)
- 视频剪辑 (添加水印,裁剪,合并视频,添加背景音乐)
- iOS视频裁剪、拼接、添加水印、添加背景音乐
- Android之FFmpeg(3)--添加为视频添加背景音乐
- android编辑实现背景音乐
- ffmpeg裁剪合并视频
- ffmpeg裁剪合并视频
- ffmpeg裁剪合并视频
- ffmpeg裁剪合并视频
- ffmpeg裁剪合并视频
- 视频 裁剪 合并 ios
- ffmpeg裁剪合并视频
- ffmpeg裁剪合并视频
- ffmpeg裁剪合并视频
- 视频 裁剪 合并 ios
- ffmpeg裁剪合并视频
- ffmpeg裁剪合并视频
- ffmpeg裁剪合并视频
- 可能用到的数据集记录
- 课程调度问题:LeetCode 630. Course Schedule III
- springmvc modelview 返回数据与页面交互处理
- SpringBoot集成Redis来实现缓存技术方案
- 深入理解Spark 2.1 Core (五):Standalone模式运行的原理与源码分析
- android 视频编辑框架(分割,裁剪,旋转,合并,添加logo,背景音乐等等)
- recv什么时候返回
- DataBinding基本功能使用笔记
- JPA中bean的四种状态跟hibernate中的bean三种状态
- Tensorflow入门程序MNIST学习
- jdbc连接mysql sqlserver oracle的工具类
- ThinkPHP中 C(),D(),S()
- ECMAScript6入门(不懂的知识多方汇总,很杂。)
- .net c#学习笔记2