導航:首頁 > 編程語言 > java上傳視頻截圖

java上傳視頻截圖

發布時間:2023-01-27 03:52:28

Ⅰ 求助:java web開發實現截圖,客戶機截取本機圖片,上傳到伺服器

要想客戶端截圖,除非開發一個插件,並且客戶端要安裝才行
否則隨便打開一個網頁都能截圖的話那就是病毒了,你也不想隨便打開一個網頁就把你屏幕上的內容截圖發到網站吧,呵呵

Ⅱ java視頻文件上傳,截取圖未保存成功,求解!!!

使用ffmpeg,下載ffmpeg相關組件到電腦中,然後用java調用命令的方式(RunTime.exec相關方法),使用ffmpeg的功能。

Ⅲ java 項目開發 實現上傳視頻。

上傳視頻?只是上傳的話,相當於,上傳文件了
html如下
<form action="MultipartTestServlet" enctype="multipart/form-data" method="post">
<input type="text" name="username" /><br />
<input type="file" name="myfile" /><br/>
<input type="submit" />
</form>

java如下
MultipartTestServlet.java

package com.bug.servlet;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileUpload;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.RequestContext;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.apache.commons.fileupload.servlet.ServletRequestContext;

public class MultipartTestServlet extends HttpServlet {

public MultipartTestServlet() {
super();
}

public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

request.setCharacterEncoding("gbk");
RequestContext requestContext = new ServletRequestContext(request);

if(FileUpload.isMultipartContent(requestContext)){

DiskFileItemFactory factory = new DiskFileItemFactory();
factory.setRepository(new File("c:/tmp/"));
ServletFileUpload upload = new ServletFileUpload(factory);
//upload.setHeaderEncoding("gbk");
upload.setSizeMax(2000000);
List items = new ArrayList();
try {
items = upload.parseRequest(request);
} catch (FileUploadException e1) {
System.out.println("文件上傳發生錯誤" + e1.getMessage());
}

Iterator it = items.iterator();
while(it.hasNext()){
FileItem fileItem = (FileItem) it.next();
if(fileItem.isFormField()){
System.out.println(fileItem.getFieldName() + " " + fileItem.getName() + " " + new String(fileItem.getString().getBytes("iso8859-1"), "gbk"));
}else{
System.out.println(fileItem.getFieldName() + " " +
fileItem.getName() + " " +
fileItem.isInMemory() + " " +
fileItem.getContentType() + " " +
fileItem.getSize());

if(fileItem.getName()!=null && fileItem.getSize()!=0){
File fullFile = new File(fileItem.getName());
File newFile = new File("c:/temp/" + fullFile.getName());
try {
fileItem.write(newFile);
} catch (Exception e) {
e.printStackTrace();
}
}else{
System.out.println("文件沒有選擇 或 文件內容為空");
}
}

}
}
}

}
web.xml中加入

<servlet>
<servlet-name>MultipartTestServlet</servlet-name>
<servlet-class>com.bug.servlet.MultipartTestServlet</servlet-class>
</servlet>

需要的包到這三個地方下載
http://jakarta.apache.org/commons/fileupload/下載
http://jakarta.apache.org/commons/io/下載
在http://www.servlets.com/cos/下載

關於視頻的播放,你只能自己再去找了

Ⅳ java怎麼實現視頻上傳

方法/步驟

Ⅳ java使用ffmpeg進行視頻截圖,不成功,程序也沒報錯!

我用的是基於C++的ffmpeg開發,ffmpeg原本是針對linux下的GCC編譯器,當然通版過MinGW也可以在win下進行編譯,但是需要安裝額權外的編譯環境,你可以上chinavideo上去看看,那上面說的很清楚,的你所說的問題也不是很難,多看看開發文檔就可以解決了。

Ⅵ java截屏有哪幾種方法

前台方式
1. 利用html2canvas實現前台截屏
html2canvas項目的gitHub地址
html2canvas示例
html2canvas可以將HTML代碼塊進行截取,並生成快照形式的canvas,然後可以利用html5的下載功能提供圖片的下載介面,供用戶下載。
優點:前台技術,實現比較容易。
缺點:此項目使用了html5的技術,因此在對IE的兼容上,只可以在IE9+的版本上使用。
使用時,需要引用jQuery.js和html2canvas.js。(html2canvas.js可以在github上下載)
具體JavaScript代碼如下:
var canvas = function () {
html2canvas($("#chart"), {
onrendered: function (canvas) {
$("#class11").html(canvas);//將id為「class11」部分的代碼轉換為canvas
var type = 'png';//圖片類型為png
var imgData = canvas.toDataURL('png');//將圖片轉換為png類型的流

var _fixType = function (type) {
type = type.toLowerCase().replace(/jpg/i, 'jpeg'); var r = type.match(/png|jpeg|bmp|gif/)[0]; return 'image/' + r;
}; var saveFile = function (data, filename) {
var save_link = document.createElementNS('http://www.w3.org/1999/xhtml', 'a');
save_link.href = data;
save_link.download = filename; var event = document.createEvent('MouseEvents');
event.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
save_link.dispatchEvent(event);
}; //下載時的文件名
var filename = 'fe_' + (new Date()).getTime() + '.' + type; // 下載文件
saveFile(imgData, filename);
}
});

後台方式(java)
1. 利用html2image實現
html2image的地址(google)
html2image是可以識別html標簽並將html轉換成圖片的java項目。
優點:後台轉換,故對瀏覽器的版本基本沒有要求。
缺點:對樣式的識別不是很好,轉換出來的圖片比較簡單,基本沒有可以兼容的樣式。
使用方式:maven中引用如下依賴:
<dependency>
<groupId>com.github.xuwei-k</groupId>
<artifactId>html2image</artifactId>
<version>0.1.0</version></dependency>12345

2. 利用DJNativeSwing項目實現
純java代碼實現。使用DJNativeSwing這個項目,構建一個swing瀏覽器,打開網址,之後截取圖片。(需要eclipse的swt庫支持)
優點:純java實現。
缺點:需要多線程的支持,只在控制台方式實現過(由於本人對於多線程的掌握較弱,目前沒有在spring項目中實現這個方法,求大神指導~~)
3. 利用phantomJs實現
phantomJs的GitHub地址
phantomJs官網
phantom利用的是webKit內核,全面支持web而不需瀏覽器支持,快速,原生支持各種Web標准。
優點:速度快,使用簡單。
缺點:需要在項目的伺服器端引用exe文件進行截圖,並發性能有待考證。

Ⅶ java如何對視頻文件處理包括拉流推流視頻截取等

推流工具OBS Studio
首先在網上下載該工具.然後安裝.然後按照如下步驟操作內
打開軟體點容擊設置

然後按照如下順序,先點擊串流-->服務選擇自定義-->填寫流服務地址
點擊下面的加號,選擇你想推到伺服器的視頻文件
然後點擊推流,致此就行了

拉流軟體VLC media player
首先下載該軟體,並打開.
點擊媒體,然後選擇打開網路串流,填寫流服務地址,點擊播放.支持剛才推到流服務上的視頻,就可以在這里播放了簡單的
如無法正常展示請點擊「」一鍵反饋「
內容不錯,鼓勵一下~

Ⅷ java如何做視頻截圖

用Graphics的createScreenCapture(Rectangle screeRect)方法

Ⅸ 怎樣使用javaweb實現上傳視頻和下載功能

文件上傳就是將客戶端資源,通過網路傳遞到伺服器端。

因為文件數據比較大,必須通過文件上傳才可以完成將數據保存到資料庫端的操作。

文件上傳的本質就是IO流操作。

演示:文件上傳應該如何操作?

瀏覽器端:
1.method=post 只有post才可以攜帶大數據
2.必須使用<input type='file' name='f'>要有name屬性
3.encType="multipart/form-data"
伺服器端:
request對象是用於獲取請求信息。
它有一個方法 getInputStream(); 可以獲取一個位元組輸入流,通過這個流,可以讀取到
所有的請求正文信息.
文件上傳原理:
瀏覽器端注意上述三件事,在伺服器端通過流將數據讀取到,在對數據進行解析.
將上傳文件內容得到,保存在伺服器端,就完成了文件上傳。

注意:在實際開發中,不需要我們進行數據解析,完成文件上傳。因為我們會使用文件上傳的工具,它們已經封裝好的,提供API,只要調用它們的API就可以完成文件上傳操作.我們使用的commons-fileupload,它是apache提供的一套開源免費的文件上傳工具。

代碼演示文件上傳的原理:

在WebRoot下新建upload1.jsp

[html]view plain

Ⅹ 通過ffmpeg實現視頻流截圖

最近忙於新產品技術點突破,針對架構摸索暫時停住。目前需要解決的問題是如何從視頻流中截取一張圖。

在安防領域有各種視頻監控產品,它們遵循的通訊協議也不盡相同,歸納起來主要遵循GB/T 28181、ONVIF、PSIA等協議。

其通信協議如下所示

在CentOS7上安裝ffmpeg

腳本正確調用,接下來就通過Java調用遠程伺服器上腳本實現視頻流截圖,在此藉助 Ganymed SSH-2 for Java ,實現SSH遠程執行腳本。

通過SSH遠程執行腳本有點簡單粗暴,何不將這截圖功能做成服務,向外發布,更加靈活方便。故後期工作如下:
准備一台圖片伺服器,其主要職責有
1.圖片文件存儲
2.響應終端的抓圖請求,並將圖片保存到指定文件夾目錄下
3.響應終端的合圖請求,以上兩者做成服務的形式,終端通過分布式調用服務,完成操作並返回結果狀態
4.接收終端上傳的圖片
硬體需求:
1.因圖片伺服器上安裝ffmpeg工具,其需要對視頻流進行解碼,並按照png格式組織編碼,對計算性能要求高,所以CPU性能要好
2.作為圖片文件存儲伺服器,存儲容量要大
3.接受多終端設備連接,網口帶寬要大

因為要接收反饋結果,cmd命令可以這樣寫

當ffmpeg執行正確時,會輸出succeeded,當ffmpeg不能正確執行時,會輸出failed

新建目錄文件夾,將截圖文件放入指定文件夾中

閱讀全文

與java上傳視頻截圖相關的資料

熱點內容
word繪圖板 瀏覽:359
蘋果minecraftpe注冊 瀏覽:775
ps怎麼存儲文件卡 瀏覽:728
微信清除緩存圖片恢復 瀏覽:305
安卓app會閃退怎麼解決 瀏覽:429
哪些app背單詞是免費的 瀏覽:889
cf擊殺圖標放哪個文件夾 瀏覽:208
為什麼我的爐石不能查看完整數據 瀏覽:179
蘋果7音量按鍵不回彈 瀏覽:296
u盤兩個系統可以放一個文件夾嗎 瀏覽:538
linuxshell變數累加 瀏覽:386
win10控制面板怎麼看 瀏覽:574
如何編程換裝游戲程序 瀏覽:269
怎麼登錄沭陽縣民政局網站 瀏覽:451
iphone6降級ios7 瀏覽:92
怎麼隱藏三星應用程序圖標不見了 瀏覽:203
可以兼職的app 瀏覽:493
iphone圓角圖標製作 瀏覽:659
建設銀行app怎麼申請 瀏覽:163
系統備份文件夾在哪 瀏覽:998

友情鏈接