บทความนี้อธิบายถึงวิธี Java ในการถ่ายภาพหน้าจอ แบ่งปันสำหรับการอ้างอิงของคุณดังนี้:
ฉันได้แนะนำ Java ให้ใช้ FFMPEG สำหรับการแปลงวิดีโอมาก่อน ที่นี่ฉันจะแสดงให้เห็นว่า FFMPEG แสดงภาพหน้าจอวิดีโออย่างไร
รหัสเฉพาะมีดังนี้:
นำเข้า java.io.file; นำเข้า java.util.list; // เฟรมแรกของไฟล์วิดีโอที่สร้างขึ้นคือรูปภาพ // เวอร์ชันภายใต้ Windows Public Class createph {// สตริงสุดท้ายคงที่ ffmpeg_path = "e: /ffmpeg/ffmpeg.exe"; processimg บูลีนแบบคงที่สาธารณะ (สตริง veido_path, สตริง ffmpeg_path) {ไฟล์ไฟล์ = ไฟล์ใหม่ (veido_path); if (! file.exists ()) {system.err.println ("path [" + veido_path + "] ไฟล์วิดีโอที่เกี่ยวข้องไม่มีอยู่!"); กลับเท็จ; } รายการ <String> คำสั่ง = ใหม่ java.util.arrayList <String> (); commands.add (ffmpeg_path); commands.add ("-i"); commands.add (veido_path); commands.add ("-y"); commands.add ("-f"); commands.add ("-f"); commands.add ("image2"); commands.add ("-ss"); commands.add ("8"); // พารามิเตอร์นี้เป็นหน้าจอเมื่อวิดีโอถูกดักจับเป็นเวลากี่วินาที // commands.add ("-t"); // commands.add ("0.001"); commands.add ("-s"); commands.add ("700x525"); commands.add (veido_path.substring (0, veido_path.lastindexof (".")) .replacefirst ("vedio", "ไฟล์") + ".jpg"); ลอง {ProcessBuilder Builder = new ProcessBuilder (); builder.command (คำสั่ง); builder.start (); System.out.println ("สกัดกั้นสำเร็จ"); กลับมาจริง; } catch (exception e) {e.printstacktrace (); กลับเท็จ; }} โมฆะคงที่สาธารณะหลัก (String [] args) {processimg ("c: /video1.avi", "c: /ffmpeg.exe"); -ภาพหน้าจอหลังจากการทำงานมีดังนี้:
ที่แนบมา:
ffmpeg.exe คลิกที่นี่ เพื่อดาวน์โหลดเว็บไซต์นี้
คลิกที่นี่ เพื่อดาวน์โหลด วิดีโอทดสอบในรูปแบบ AV
สำหรับเนื้อหาที่เกี่ยวข้องกับ Java เพิ่มเติมผู้อ่านที่สนใจในเว็บไซต์นี้สามารถดูหัวข้อ: "บทสรุปของทักษะการใช้งานภาพ Java", "บทสรุปของ Java Date และ Time Operation Skills", "บทสรุปของทักษะการดำเนินงาน Java Dom Node", "สรุปของไฟล์ Java และทักษะการดำเนินการไดเรกทอรี"
ฉันหวังว่าบทความนี้จะเป็นประโยชน์กับการเขียนโปรแกรม Java ของทุกคน