java视频在线播放_Java实现视频网站的视频上传与视频播放功能.doc
Java實現視頻網站的視頻上傳、視頻轉碼、視頻關鍵幀抽圖, 及視頻播放功能
視頻網站中提供的在線視頻播放功能,播放的都是FLV格式的文件,它是Flash動畫文件,可通過Flash制作的播放器來播放該文件.項目中用制作的player.swf播放器.
多媒體視頻處理工具FFmpeg有非常強大的功能包括視頻采集功能、視頻格式轉換、視頻抓圖、給視頻加水印等。??
ffmpeg視頻采集功能非常強大,不僅可以采集視頻采集卡或USB攝像頭的圖像,還可以進行屏幕錄制,同時還支持以RTP方式將視頻流傳送給支持RTSP的流媒體服務器,支持直播應用。
1.能支持的格式
ffmpeg能解析的格式:(asx,asf,mpg,wmv,3gp,mp4,mov,avi,flv等)
2.不能支持的格式
對ffmpeg無法解析的文件格式(wmv9,rm,rmvb等),可以先用別的工具(mencoder)轉換為avi(ffmpeg能解析的)格式.
實例是將上傳視頻轉碼為flv格式,該格式ffmpeg支持,所以我們實例中需要ffmpeg視頻處理工具.
?
數據庫MySQL5.5
實例所需要的數據庫腳本
dropdatabaseifexists db_mediaplayer;createdatabase db_mediaplayer;use db_mediaplayer;
createtable tb_media(
id intnotnullprimarykey auto_increment comment '主鍵' ,
title varchar(50) notnull comment '視頻名稱' ,
src varchar(200) notnull comment '視頻存放地址' ,
picture varchar(200) notnull comment '視頻截圖' ,
descript varchar(400) comment '視頻描述' ,
uptime varchar(40) comment '上傳時間'
);
desc tb_media;
項目結構圖:
上傳視頻界面設計
在上傳文件時,Form表單中?enctype屬性值必須為"multipart/form-data".模塊界面設計如下圖:
enctype屬性值說明
application/x-www-form-urlencoded
表單數據被編碼為名稱/值對,這是標準的編碼格式
multipart/form-data
表單數據被編碼為一條消息,頁面上每個控件對應消息中的一部分
text/plain
表單數據以純文本形式進行編碼,其中不含任何控件格式的字符
?
業務接口定義
面向接口編程,接口中定義系統功能模塊.這樣方便理清業務,同時接口的對象必須由實現了該接口的對象來創建.這樣就避免編碼中的某些業務遺漏等,同時擴展性也增強了.
?
package com.webapp.dao;import java.util.List;import com.webapp.entity.Media;
/**
*
* MediaDao.java
*
* @version : 1.1
*
* @author : 蘇若年 發送郵件
*
* @since : 1.0 創建時間: 2013-2-07 上午10:19:54
*
* TODO : interface MediaDao.java is used for ...
*
*/publicinterface MediaDao {
/**
* 視頻轉碼
* @param ffmpegPath 轉碼工具的存放路徑
* @param upFilePath 用于指定要轉換格式的文件,要截圖的視頻源文件
* @param codcFilePath 格式轉換后的的文件保存路徑
* @param mediaPicPath 截圖保存路徑
* @return
* @throws Exception
*/
publicboolean executeCodecs(String ffmpegPath,String upFilePath, String codcFilePath, String mediaPicPath)throws Exception;
/**
* 保存文件
* @param m
總結
以上是生活随笔為你收集整理的java视频在线播放_Java实现视频网站的视频上传与视频播放功能.doc的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: css清除浮动的几种方法_CSS 分享几
- 下一篇: java美元兑换,(Java实现) 美元