java 做视频转换主要用到开源的ffmpeg或者mencoder,还要有MP4Box。
注:由于平时都没有时间写博客,所以思路我就不写了,有问题问我,不一定马上回复。
详细介绍:
ffmpeg:http://www.ffmpeg.org/
mencoder:http://en.wikipedia.org/wiki/MEncoder
MP4Box:http://gpac.wp.mines-telecom.fr/mp4box/mp4box-documentation/
主要实现:
1.获取视频元数据信息
2.视频相互转换
3.视频加文字及图片水印
4.视频截图
思路:
配置文件中定义各转换工具的路径:(相关工具去官网下载)
2.获取视频音频的各项属性帮助类
importjava.io.BufferedReader;
importjava.io.InputStreamReader;
importjava.util.List;
importorg.apache.commons.lang.StringUtils;
importorg.apache.log4j.Logger;
importorg.apache.oro.text.regex.MalformedPatternException;
importorg.apache.oro.text.regex.MatchResult;
importorg.apache.oro.text.regex.Pattern;
importorg.apache.oro.text.regex.PatternCompiler;
importorg.apache.oro.text.regex.PatternMatcher;
importorg.apache.oro.text.regex.Perl5Compiler;
importorg.apache.oro.text.regex.Perl5Matcher;
importcom.brainsoon.bsrcm.common.utils.BaseCommonUtil;
importcom.brainsoon.bsrcm.system.support.CacConver;
/**
* 获取视频音频的各项属性帮助类
* 如果需要修改或者添加属性,只要扩展下面的二维数组和修改下面getVideoInfo()方法
* @author tanghui
*
*/
publicclassVideoInfoHelps {
protectedstaticfinalLogger logger = Logger.getLogger(VideoInfoHelps.class);
publicstaticfinalString ffmpegPath;// ffmpeg.exe的目录
static{
ffmpegPath = BaseCommonUtil.getProRealPath("ffmpegPath");
}
/**
* 根据属性获取视频信息
* @param videoPath
* @return
*/
publicstaticVideoInfo getVideoInfo(String videoPath) {
VideoInfo videoInfo = newVideoInfo();
if(CacConver.exitF