java实现视频上传和播放要点Word文件下载.docx

上传人:b****1 文档编号:13567313 上传时间:2022-10-11 格式:DOCX 页数:19 大小:248.73KB
下载 相关 举报
java实现视频上传和播放要点Word文件下载.docx_第1页
第1页 / 共19页
java实现视频上传和播放要点Word文件下载.docx_第2页
第2页 / 共19页
java实现视频上传和播放要点Word文件下载.docx_第3页
第3页 / 共19页
java实现视频上传和播放要点Word文件下载.docx_第4页
第4页 / 共19页
java实现视频上传和播放要点Word文件下载.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

java实现视频上传和播放要点Word文件下载.docx

《java实现视频上传和播放要点Word文件下载.docx》由会员分享,可在线阅读,更多相关《java实现视频上传和播放要点Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。

java实现视频上传和播放要点Word文件下载.docx

idintnotnullprimarykeyauto_incrementcomment'

主键'

titlevarchar(50)notnullcomment'

视频名称'

srcvarchar(200)notnullcomment'

视频存放地址'

picturevarchar(200)notnullcomment'

视频截图'

descriptvarchar(400)comment'

视频描述'

uptimevarchar(40)comment'

上传时间'

);

desctb_media;

项目结构图:

 

上传视频界面设计

在上传文件时,Form表单中 

enctype属性值必须为"

multipart/form-data"

.模块界面设计如下图:

enctype属性值说明

application/x-www-form-urlencoded

表单数据被编码为名称/值对,这是标准的编码格式

multipart/form-data

表单数据被编码为一条消息,页面上每个控件对应消息中的一部分

text/plain

表单数据以纯文本形式进行编码,其中不含任何控件格式的字符

业务接口定义

面向接口编程,接口中定义系统功能模块.这样方便理清业务,同时接口的对象必须由实现了该接口的对象来创建.这样就避免编码中的某些业务遗漏等,同时扩展性也增强了.

packagecom.webapp.dao;

importjava.util.List;

importcom.webapp.entity.Media;

/**

*

*MediaDao.java

*@version:

1.1

*

*@author:

苏若年<

ahref="

mailto:

DennisIT@"

>

发送邮件<

/a>

*@since:

1.0创建时间:

2013-2-07上午10:

19:

54

*TODO:

interfaceMediaDao.javaisusedfor...

*/

publicinterfaceMediaDao{

/**

*视频转码

*@paramffmpegPath转码工具的存放路径

*@paramupFilePath用于指定要转换格式的文件,要截图的视频源文件

*@paramcodcFilePath格式转换后的的文件保存路径

*@parammediaPicPath截图保存路径

*@return

*@throwsException

publicbooleanexecuteCodecs(StringffmpegPath,StringupFilePath,StringcodcFilePath,StringmediaPicPath)throwsException;

*保存文件

*@parammedia

publicbooleansaveMedia(Mediamedia)throwsException;

*查询本地库中所有记录的数目

publicintgetAllMediaCount()throwsException;

*带分页的查询

*@paramfirstResult

*@parammaxResult

publicList<

Media>

queryALlMedia(intfirstResult,intmaxResult)throwsException;

*根据Id查询视频

*@paramid

publicMediaqueryMediaById(intid)throwsException;

}

接口的实现,这里列出ffmpeg视频转码与截图模块

publicbooleanexecuteCodecs(StringffmpegPath,StringupFilePath,StringcodcFilePath,

StringmediaPicPath)throwsException{

//创建一个List集合来保存转换视频文件为flv格式的命令

List<

String>

convert=newArrayList<

();

convert.add(ffmpegPath);

//添加转换工具路径

convert.add("

-i"

//添加参数"-i",该参数指定要转换的文件

convert.add(upFilePath);

//添加要转换格式的视频文件的路径

-qscale"

//指定转换的质量

6"

-ab"

//设置音频码率

64"

-ac"

//设置声道数

2"

-ar"

//设置声音的采样频率

22050"

-r"

//设置帧频

24"

-y"

//添加参数"-y",该参数指定将覆盖已存在的文件

convert.add(codcFilePath);

//创建一个List集合来保存从视频中截取图片的命令

cutpic=newArrayList<

cutpic.add(ffmpegPath);

cutpic.add("

cutpic.add(upFilePath);

//同上(指定的文件即可以是转换为flv格式之前的文件,也可以是转换的flv文件)

-f"

image2"

-ss"

//添加参数"-ss",该参数指定截取的起始时间

17"

//添加起始时间为第17秒

-t"

//添加参数"-t",该参数指定持续时间

0.001"

//添加持续时间为1毫秒

-s"

//添加参数"-s",该参数指定截取的图片大小

800*280"

//添加截取的图片大小为350*240

cutpic.add(mediaPicPath);

//添加截取的图片的保存路径

booleanmark=true;

ProcessBuilderbuilder=newProcessBuilder();

try{

mand(convert);

builder.redirectErrorStream(true);

builder.start();

mand(cutpic);

//如果此属性为true,则任何由通过此对象的start()方法启动的后续子进程生成的错误输出都将与标准输出合并,

//因此两者均可使用Process.getInputStream()方法读取。

这使得关联错误消息和相应的输出变得更容易

}catch(Exceptione){

mark=false;

System.out.println(e);

e.printStackTrace();

}

returnmark;

系统中可能存在多个模块,这些模块的业务DAO可以通过工厂来管理,需要的时候直接提供即可.

因为如果对象new太多,会不必要的浪费资源.所以工厂,采用单例模式,私有构造,提供对外可访问的方法即可.

importcom.webapp.dao.impl.MediaDaoImpl;

*DaoFactory.java

2013-2-07下午02:

18:

51

classDaoFactory.javaisusedfor...

publicclassDaoFactory{//工厂模式,生产Dao对象,面向接口编程,返回实现业务接口定义的对象

privatestaticDaoFactorydaoFactory=newDaoFactory();

//单例设计模式,私有构造,对外

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 笔试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1