- 浏览: 108362 次
文章分类
最新评论
-
ren2881971:
dk101 写道谁都有上班的第一天,第一家公司,第一次接触客户 ...
上班第一天 -
dk101:
谁都有上班的第一天,第一家公司,第一次接触客户,努力做好每个第 ...
上班第一天 -
ren2881971:
353145845 写道哥们是搞外包的。?不是 呵呵。 只不过 ...
上班第一天 -
353145845:
哥们是搞外包的。?
上班第一天 -
ren2881971:
yujunlong 写道楼主怎么样啊 ??新找的工作 待遇怎么 ...
今天去面试学到很多东西 记录下
视频网站,将上传视频转换为flv。在页面上播放
- 博客分类:
- j2ee
哈哈 我的博客标题之所以写的这么白话。主要是为了以后方便自己查找资源。
前几天接手到一个上传视频并播放的需求。 可以简单的理解为小型的视频网站。 并具有基本的增删改查功能。
最初实现:
保持原有的上传视频格式,并通过不同的软件,RealPlay Windows media play 来在jsp上实现播放。
后来于哥说.这种需要用户安装软件的形式 很不友好。需要将上传视频的格式统一转换成flv,这样在网页上可以直接播放。
从昨天下午开始着手完成这部分内容。
主要思想是将上传后的视频格式。
通过java 调用服务器端的两个可执行性文件:1.ffmpeg 2. mencoder。
java的ProcessBuilder可以直接调用cmd命令来执行程序自动转化视频。
本来是想支持rmvb格式视频的上传了,但是rmvb不能转换为flv,需要先转化成avi,再由avi转换成flv。但是这样一来。转换的时间太长了。还不如索性就直接提示用户上传指定的视频文件格式了。
这样一来我也省事了,也不用去操心rmvb的转换了。
---------------------------------------------------------------------------------
有了上传后转换好保存的视频。 那我们下一步就是在网上显示了。
上午找了一会。发现如果在网页上实现flv的播放。那么服务器端需要 有swf。
又找了一个别人已经写好的swf。扔在服务端上。就可以播放flv了。
这样在修修改改一些边边角角。 这个需求就算是完成了。
前几天接手到一个上传视频并播放的需求。 可以简单的理解为小型的视频网站。 并具有基本的增删改查功能。
最初实现:
保持原有的上传视频格式,并通过不同的软件,RealPlay Windows media play 来在jsp上实现播放。
后来于哥说.这种需要用户安装软件的形式 很不友好。需要将上传视频的格式统一转换成flv,这样在网页上可以直接播放。
从昨天下午开始着手完成这部分内容。
主要思想是将上传后的视频格式。
通过java 调用服务器端的两个可执行性文件:1.ffmpeg 2. mencoder。
java的ProcessBuilder可以直接调用cmd命令来执行程序自动转化视频。
public class ConvertVideo{ public void convertFlv(String ffmpegPath,String path1,String path2){ List<String> commend = new java.util.ArrayList<String>(); //String flvPath = "e:\\a.flv"; commend.add(ffmpegPath); commend.add("-i"); commend.add(path1); commend.add("-ab"); commend.add("56"); commend.add("-ar"); commend.add("22050"); commend.add("-b"); commend.add("500"); commend.add("-r"); commend.add("15"); commend.add("-s"); commend.add("800x600"); commend.add(path2); int flag = doProcess(commend); if(flag!=-1){ deleteFile(path1); } } public int doProcess(List<String> list){ int exitValue = -1; try{ ProcessBuilder builder = new ProcessBuilder(); builder.command(list); Process p = builder.start(); exitValue = doWaitFor(p); if(exitValue!=-1){ System.out.println(">>>>>>>>> convert finished >>>>>>>>>>>>>"); } return exitValue; }catch(Exception e){ e.printStackTrace(); } return exitValue; } public int doWaitFor(Process p){ InputStream in = null; InputStream err = null; int exitValue = -1; // returned to caller when p is finished try { System.out.println("comeing"); in = p.getInputStream(); err = p.getErrorStream(); boolean finished = false; // Set to true when p is finished while (!finished) { try { while (in.available() > 0) { // Print the output of our system call BufferedInputStream bi = new BufferedInputStream(in); Character c = new Character((char) bi.read()); System.out.print(c); } while (err.available() > 0) { // Print the output of our system call BufferedInputStream bi = new BufferedInputStream(err); Character c = new Character((char) bi.read()); System.out.print(c); } // Ask the process for its exitValue. If the process // is not finished, an IllegalThreadStateException // is thrown. If it is finished, we fall through and // the variable finished is set to true. exitValue = p.exitValue(); finished = true; } catch (IllegalThreadStateException e) { // Process is not finished yet; // Sleep a little to save on CPU cycles Thread.currentThread().sleep(500); } } } catch (Exception e) { // unexpected exception! print it out for debugging... System.err.println("doWaitFor();: unexpected exception - " + e.getMessage()); } finally { try { if (in != null) { in.close(); } } catch (IOException e) { System.out.println(e.getMessage()); } if (err != null) { try { err.close(); } catch (IOException e) { System.out.println(e.getMessage()); } } } // return completion status to caller return exitValue; } public void deleteFile(String str) { File file = new File(str); file.delete(); } }
本来是想支持rmvb格式视频的上传了,但是rmvb不能转换为flv,需要先转化成avi,再由avi转换成flv。但是这样一来。转换的时间太长了。还不如索性就直接提示用户上传指定的视频文件格式了。
这样一来我也省事了,也不用去操心rmvb的转换了。
---------------------------------------------------------------------------------
有了上传后转换好保存的视频。 那我们下一步就是在网上显示了。
上午找了一会。发现如果在网页上实现flv的播放。那么服务器端需要 有swf。
又找了一个别人已经写好的swf。扔在服务端上。就可以播放flv了。
这样在修修改改一些边边角角。 这个需求就算是完成了。
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" height="380" width="500"> <param name="movie" value="<%=path1%>vcastr22.swf?vcastr_file=<%=path1%><%=info[0]%>.flv"> <param name="quality" value="high"> <param name="allowFullScreen" value="true" /> <embed src="<%=path1%>vcastr22.swf?vcastr_file=<%=path1%><%=info[0]%>.flv" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="800" height="600"> </embed> </object>
发表评论
-
如何在jsp中的flash播放服务器上的视频文件
2013-03-12 16:47 3721接到一个需求。说是客户不想把上传播放的视频,放在应用中,想放在 ... -
java定时器例子
2013-03-06 15:40 1643package com.jit.util; import ... -
Filter过滤,未登录的用户页面跳转
2012-12-03 10:37 22570package com.dog.filter; im ... -
鼠标滑动动态显示图片和通过js来动态填充页面数据
2012-11-16 10:39 1548<head> <meta http-e ... -
JDBC笔记
2012-11-09 09:32 709ResultSet接口: 滚动光标改变内容: rs.abs ... -
从数据库中查询图片显示在jsp页面上
2012-11-05 16:59 3784package demo; import java. ... -
上传图片和文件保存到数据库中(SmartUpload)
2012-11-05 16:58 6786package demo; import java. ... -
三级联动通过AJAX 将后台的数据返回在页面上。 主要是下拉框的联动。
2012-11-05 08:54 1283//根据浏览器的类型创建xmlHttpRequest对象 ... -
HttpServletRequestWrapper两个类学习总结(有关中文乱码的例子)
2012-10-29 10:46 1463在学习javax.servlet.http包中发现两个类: H ... -
Cookie与Session。重写URL保持会话跟踪
2012-10-26 14:13 0以下内容是网上另一位不知名的兄弟写的: HttpServ ... -
Servlet&Jsp javax.servlet.http包中的内容
2012-10-26 10:19 1748javax.servlet.http: Interface H ... -
Servlet&Jsp 下载代码备用
2012-10-25 15:31 681package demo; import java. ... -
servlet&jsp上传文件
2012-10-24 21:40 788<servlet> <se ... -
开始完整的学习Servlet&Jsp
2012-10-23 16:23 856虽然目前来说利用Servlet ... -
接口----将数据转换成Json格式,给别人做接口调用
2012-09-04 16:48 21347因为工作需要,要求把数据库中的数据提取出来转换成Json格式 ... -
Web应用中的路径解决问题
2012-09-03 13:48 678在开发网站的时候 经常遇到一些 路径问题。 比如 子文件夹下的 ... -
java验证码
2012-08-27 16:29 807<%@ page contentType=" ...
相关推荐
视频上传+转换成flv+截图保存,使用自定义控件,在网页直接调用。
功能: 同时大量的PDF文件转换到一个特定格式 支持加密的PDF文件 PDF转换为Flash视频的高品质 支持页面范围转换(所有,从至)的个别网页 根据图像的大小的FLV /的SWF,自动拉伸/缩小图片大小 支持Fla
其他格式的视频文件转换为Flv格式的解码器,请解压ffmpeg、mencoder文件夹到站点根目录MakeProcessSoft文件夹下,同时在"站点管理"的”基本设置”更新“FFMpeg视频解码文件完整路径”和“MenCoder视频解码文件完整...
其他问题或升级问题,请查看插件页面上的常见问题文档 1. 支持远程附件的所有功能 2. 支持板块封面图片设置 3. 支持附件在远程和本地之间随意互相转换 4. 支持远程附件和本地附件的备份 5. 支持远程上传功能的开启...
想拥有类似优酷、56网的视频吗,您可以上传主流格式的视频,系统自动转换成Flv格式 4.网络硬盘 您可以自定义文件夹,走到哪里都能有属于您的移动硬盘 5.上传模块 无刷新、批量、进度条控制多文件Flash上传全新...
FLV视频模块,支持超大附件视频上传(G),支持将视频自动转为FLV格式,支持在文章加插入添加好的FLV视频播放。 电子报在线制作 网上商城支持,在线下订单、付款。 高性能站内搜索引擎,文章添加自动生成索引,...
8)增加getImagesPathID属性,当属性不为空时,将在插入图片到编辑器的同时将图片地址即时插入属性指定的页面ID! 9)增加自动及手动内容分页的强大功能,通过getAutoPage(自动分页)及getManualPage(手动分页)属性获取分页...
8)增加getImagesPathID属性,当属性不为空时,将在插入图片到编辑器的同时将图片地址即时插入属性指定的页面ID! 9)增加自动及手动内容分页的强大功能,通过getAutoPage(自动分页)及getManualPage(手动分页)属性获取...
22、FLV视频模块,支持超大附件视频上传(2G),支持将视频自动转为FLV格式,支持在文章加插入添加好的FLV视频播放。 23、WORD文档上传自动转为HTML格式,并过滤到冗余代码并上传图片。 24、RSS支持,可以根据每个...
视频模块 用户可以上传视频,上传后可以自动转换成flv格式,让您的网站也轻松拥用视频功能,增加企业的力体宣传力度。 新闻模块 会员可以在后台发布企业新闻,管理员也可开启会员投稿功能,直接将会员新闻发布到...
视频模块 用户可以上传视频,上传后可以自动转换成flv格式,让您的网站也轻松拥用视频功能,增加企业的力体宣传力度。 新闻模块 会员可以在后台发布企业新闻,管理员也可开启会员投稿功能,直接将会员新闻发布到...
视频模块 用户可以上传视频,上传后可以自动转换成flv格式,让您的网站也轻松拥用视频功能,增加企业的力体宣传力度。 新闻模块 会员可以在后台发布企业新闻,管理员也可开启会员投稿功能,直接将会员新闻发布到...
视频模块 用户可以上传视频,上传后可以自动转换成flv格式,让您的网站也轻松拥用视频功能,增加企业的力体宣传力度。 新闻模块 会员可以在后台发布企业新闻,管理员也可开启会员投稿功能,直接将会员新闻发布到...
1.把上传的文件转换为字节数组 2.流转化为字节数组 2.上传文件根据FileUpload控件上传 3.把Byte流上传到指定目录并保存为文件 复制代码 UpLoadFiles 页面专用类 19.时间操作类 DateFormat 返回每月的第一天和最后一...
1.把上传的文件转换为字节数组 2.流转化为字节数组 2.上传文件根据FileUpload控件上传 3.把Byte流上传到指定目录并保存为文件 复制代码 UpLoadFiles 页面专用类 19.时间操作类 DateFormat 返回每月的第一天和最后一...
7) 将编辑器设置为在缩放或移动过程中持续更新元素外观,以达到更好的所见即所得效果。 8) 增加插入图片的路径类型选择功能,可通过ImgPathType内置的属性选择插入图片地址为相对路径(Relative)如:system_dntb/...
8.网站背景设置、flash幻灯增加参数控制、支持flv文件播放、幻灯可外链图片。 9.外部调用JS,后台可自定义生成代码。 10.文章列表摘要控制、文章内容自动分页、文章页心情投票、文章列表每页显示条数设置、文章...
随机数标签:时间型、文件名型、Guid型12、【增加】计划任务功能13、【改进】标签解析规则,标签内容放在模板、样式中都可以解析,大幅度提升标签的实用性14、【新增】编辑器增加上传flv视频、增加上传附件功能15、...