我需要抓取一系列截图并将它们连接成电影.我正在尝试使用java Robot类来捕获屏幕.
但是createScreenCapture()方法在我的机器上花费的时间超过1秒.我甚至无法获得1 fps.有没有办法加快速度?或者还有其他API吗?
编辑:它正在分配缓冲的图像.
BufferedImage image = robot.createScreenCapture(screen); //将屏幕截图保存为jpg
文件文件=新文件("图像/屏幕"+索引+".jpg");
ImageIO.write(image,"jpg",file); 索引++;
将其写入jpg文件大约需要200毫秒,因为获取BufferedImage大约需要1400毫秒.
我有一组图像,我想一个接一个地添加并创建一个电影.我将使用Quicktime for java(我在Mac上).
我在网上搜索了我发现了很多例子,展示了如何使用qtj播放电影,但我找不到任何代码片段或教程,展示我如何使用qtj逐帧创建电影?
作为一个玩具项目,我想编写一个应用程序,它将从网络摄像头拍摄照片,然后检测它们的变化.我想检测是否有人走在网络摄像头前.
你们能告诉我一些如何在连续两次拍摄中发现重大变化的指示吗?
我正在开发一个简单的下载应用程序.在请求以下文件时,firefox和我的应用程序都没有获取content-length字段.但是如果我使用wget服务器发出请求会发送内容长度字段.我确实更改了wgets用户代理字符串以进行测试,它仍然获得了content-length字段.
任何想法为什么会这样?
wget请求
---request begin---
GET /dc-13/video/2005_Defcon_V2-P_Zimmerman-Unveiling_My_Next_Big_Project.mp4 HTTP/1.0
User-Agent: test
Accept: */*
Host: media.defcon.org
Connection: Keep-Alive
---request end---
HTTP request sent, awaiting response...
---response begin---
HTTP/1.0 200 OK
Server: lighttpd
Date: Sun, 05 Apr 2009 04:40:08 GMT
Last-Modified: Tue, 23 May 2006 22:18:19 GMT
Content-Type: video/mp4
Content-Length: 104223909
Connection: keep-alive
Run Code Online (Sandbox Code Playgroud)
firefox请求
GET /dc-13/video/2005_Defcon_V2-P_Zimmerman-Unveiling_My_Next_Big_Project.mp4 HTTP/1.1
Host: media.defcon.org
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.4; en-US; rv:1.9.0.8) Gecko/2009032608 Firefox/3.0.8
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: …Run Code Online (Sandbox Code Playgroud) 我正在编写一个快速服务器来测试应用程序.如果我在客户端关闭套接字,它不会抛出套接字关闭的异常.我一直在写100mb的随机数据(这是假设要做的).如何检测客户端是否关闭连接?
import java.io.PrintWriter;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.Socket;
import java.net.ServerSocket;
import java.util.Random;
public class server {
public static void main(String [ ] args){
int size = 1048576 * 100;
String response ="HTTP/1.0 200 OK\n" +
"Server: server\n" +
// "Date: Sun, 05 Apr 2009 04:40:08 GMT\n" +
// "Last-Modified: Tue, 23 May 2006 22:18:19 GMT\n" +
"Content-Type: application/zip\n" +
"Content-Length: " + size + " \n" +
"Connection: keep-alive\n";
try{
ServerSocket serverSocket = new ServerSocket(4444);
while(true){
System.out.println( "Listenning..." ); …Run Code Online (Sandbox Code Playgroud) java ×4
connection ×1
http ×1
http-headers ×1
performance ×1
quicktime ×1
sockets ×1
swing ×1
video ×1