`
- 浏览:
414046 次
- 性别:
- 来自:
北京
-
- public static void main(String[] args) {
-
- String result = processFLV("E:\\test\\京视传媒\\体育类\\xiao.flv");
-
-
- PatternCompiler compiler =new Perl5Compiler();
- try {
- String regexDuration ="Duration: (.*?), start: (.*?), bitrate: (\\d*) kb\\/s";
- String regexVideo ="Video: (.*?), (.*?), (.*?)[,\\s]";
- String regexAudio ="Audio: (\\w*), (\\d*) Hz";
-
- Pattern patternDuration = compiler.compile(regexDuration,Perl5Compiler.CASE_INSENSITIVE_MASK);
- PatternMatcher matcherDuration = new Perl5Matcher();
- if(matcherDuration.contains(result, patternDuration)){
- MatchResult re = matcherDuration.getMatch();
-
- System.out.println("提取出播放时间 ===" +re.group(1));
- System.out.println("开始时间 =====" +re.group(2));
- System.out.println("bitrate 码率 单位 kb==" +re.group(3));
- }
-
- Pattern patternVideo = compiler.compile(regexVideo,Perl5Compiler.CASE_INSENSITIVE_MASK);
- PatternMatcher matcherVideo = new Perl5Matcher();
-
- if(matcherVideo.contains(result, patternVideo)){
- MatchResult re = matcherVideo.getMatch();
- System.out.println("编码格式 ===" +re.group(1));
- System.out.println("视频格式 ===" +re.group(2));
- System.out.println(" 分辨率 == =" +re.group(3));
- }
-
- Pattern patternAudio = compiler.compile(regexAudio,Perl5Compiler.CASE_INSENSITIVE_MASK);
- PatternMatcher matcherAudio = new Perl5Matcher();
-
- if(matcherAudio.contains(result, patternAudio)){
- MatchResult re = matcherAudio.getMatch();
- System.out.println("音频编码 ===" +re.group(1));
- System.out.println("音频采样频率 ===" +re.group(2));
- }
-
- } catch (MalformedPatternException e) {
- e.printStackTrace();
- }
-
- }
-
-
-
- private static String processFLV(String inputPath) {
-
-
-
-
-
-
- List<String> commend=new java.util.ArrayList<String>();
-
-
- commend.add("ffmpeg");
- commend.add("-i");
- commend.add(inputPath);
-
- try {
-
- ProcessBuilder builder = new ProcessBuilder();
- builder.command(commend);
- builder.redirectErrorStream(true);
- Process p= builder.start();
-
-
- BufferedReader buf = null;
- String line = null;
-
-
- buf = new BufferedReader(new InputStreamReader(p.getInputStream()));
-
- StringBuffer sb= new StringBuffer();
- while ((line = buf.readLine()) != null) {
- System.out.println(line);
- sb.append(line);
- continue;
- }
- int ret = p.waitFor();
-
- return sb.toString();
- } catch (Exception e) {
-
- return null;
- }
- }
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
在java中上传视频时根据需求,使用FFMpeg获取视频的时长
java调用ffmpeg转换视频,并读取转换后视频的分辨率、大小以及时长。主要参考http://blog.sina.com.cn/s/blog_a5116c670102wiwj.html 的代码方式。步骤: 1.研究java如何调用外部程序 2.研究ffmpeg转换视频格式的...
这是一个java利用ffmpeg获取视频缩略图的java工程,里面有什么都有了,你只需要导入你的myeclpise,然后运行,看效果就是了,总共就一个类,二十多行代码
ffmpeg本身没有支持java的AIP,所以在这里使用java中runtime操作ffmpeg获取视频文件的分辨率、码率、时长等信息,以及自动截图功能。 其中有个java项目、ffmpeg-win32程序包
利用ffmpeg工具,获取视频详细信息,并将获取到的视频信息转换成易于处理的json格式。前提都是服务器必须安装了ffmpeg工具环境,否则是无法使用的。
利用ffmpeg获取视频封面图,时长信息
windows下java处理视频的源码,功能有,获取视频格式转码、视频缩略图截取、视频切割、获取视频相关信息等。与“windows下java调用ffmpeg视频处理环境搭建”配套使用。
使用ffmpeg.exe获取文件属性信息,ffmpeg是java开发的用于多媒体文件编辑的命令行工具,有多个版本,功能比较强大,C#中可以在进程外异步调用这个工具 using (System.Diagnostics.Process pro = new System....
util 类 内含 java-1.0.2.jar 开发人员可以使用JAVE 在不同的格式间转换视频和音频 例如将 AVI 转成 MPEG 动画 等等 ffmpeg 中可以完成的在 JAVE 都有对应的方法
在windows使用FFmpeg获取视频缩略图的工具类
java+FFmpeg+JavaCV实现无控件HTML页面视频实时预览,录像等,RTSP协议
主要介绍了java使用FFmpeg合成视频和音频并获取视频中的音频等操作,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
截取视频中的某一帧的图像含ffmpeg.jar 和调用方法和类
java 服务器处理使用ffmpeg处理视频工具类,使用前先按照ffmpeg,并将其安装目录的bin路径加入环境变量,目前主要实现压缩,转码,增加字幕(可设定字体及位置),获取视频时长及源数据信息等功能,也可再此基础上...
2)、可选择使用javaCV推流、ffmpeg推流两种方式。 3)、javaCV仅支持拉去或推送H264压缩方式的流。 4)、ffmpeg采用命令的方式拉流和推流,支持H265和H264。 5)、支持获取流的访问数,可设置自动关闭0访问数的...
附件中包含了ffmpeg.exe 文件 与参数说明 这个exe功能很强大(视频转换,音频转换,获取视频音频时间长度,视频截图,视频音频截取等)。 参数整理的很辛苦 txt的,还要慢慢调试(参数大部分验证通过) 参数...
主要为大家详细介绍了Java通过调用FFMPEG获取视频时长,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
ffmpeg的调用工具,获取视频信息,帧(封面图片)。代码已封装好,注释相信,直接调用
项目介绍FMJ (FFMpeg for Java)通过Java调用FFMpeg命令的方式来对音视频进行处理(获取信息、截图等等)。FFMpeg安装FFMpeg官网建议使用 ffmpeg-2.6.1 版本Linuxyum install ffmpegapt-get install ffmpegMacbrew ...
从视频上传到上传完成后用ffmpeg处理视频,转码,获取时长,缩略图,截取视频。