Java:JMF 从player截图

JavPlayer 1.07:Java媒体播放器压缩包 本文还有配套的精品资源,点击获取 简介:JavPlayer 1.07 是一个多媒体播放器的压缩文件包,专门用于播放Java相关视频和多媒体内容。该压缩包可能包括了一个动态链接库(DLL)文件,主执行文件,以及包含许可证和使用说明的文本文件。JavPlayer 可能具备3D图形渲染、视频录制、屏幕截图和解码功能,同时支持其他常见的多媒体格式。用户可通过提供的说明和快捷方式文件... 阅读详情
package implementation;

import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.image.BufferedImage;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;


import javax.media.Buffer;
import javax.media.Player;
import javax.media.control.FrameGrabbingControl;
import javax.media.format.VideoFormat;
import javax.media.util.BufferToImage;

import com.sun.image.codec.jpeg.ImageFormatException;
import com.sun.image.codec.jpeg.JPEGCodec;
import com.sun.image.codec.jpeg.JPEGEncodeParam;
import com.sun.image.codec.jpeg.JPEGImageEncoder;

public class PhotoCatch {
	private Buffer buffer;
	private BufferToImage bufferToImage;
	private Image image;
	private FrameGrabbingControl fgc;
	
	public PhotoCatch(Player player){
		fgc = (FrameGrabbingControl) player.getControl("javax.media.control.FrameGrabbingControl");
		this.buffer = fgc.grabFrame();
		bufferToImage = new BufferToImage((VideoFormat) buffer.getFormat());
		image = bufferToImage.createImage(this.buffer);
	}
	public void upDate(){
		this.buffer = fgc.grabFrame();
		bufferToImage = new BufferToImage((VideoFormat) buffer.getFormat());
		image = bufferToImage.createImage(this.buffer);
	}
	public int getImageWidth(){
		return image.getWidth(null);
	}
	public int getImageHeight(){
		return image.getHeight(null);
	}
	public void saveImage(String address){
		saveImage(image,address);
	}
	
	private void saveImage(Image image, String path) {
		if(this.image == null)
			System.out.println("image is null");
		BufferedImage bi = new BufferedImage(image.getWidth(null), image.getHeight(null), BufferedImage.TYPE_INT_RGB);
		Graphics2D g2 = bi.createGraphics();
		g2.drawImage(image, null, null);
		FileOutputStream fos = null;

		try {

			fos = new FileOutputStream(path);
		} catch (FileNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}

		JPEGImageEncoder je = JPEGCodec.createJPEGEncoder(fos);
		JPEGEncodeParam jp = je.getDefaultJPEGEncodeParam(bi);
		jp.setQuality(0.5f, false);
		je.setJPEGEncodeParam(jp);
		try {
			je.encode(bi);
			fos.close();
		} catch (ImageFormatException e) {
			// TODO Auto-generated catch block
			System.out.println("错误4");
		} catch (IOException e) {
			// TODO Auto-generated catch block
			//e.printStackTrace();
			System.out.println("错误5");
		}
	}
}

每次需要重新截图时候,一定要进行更新!因为JMF API 中

Class BufferToImage

This is a utility class to convert a video Buffer object to an AWTImage object that you can then render using AWT methods.

You can use this class in conjunction with the FrameGrabbingControl to grab frames from the video renderer and manipulate the image. 


bufferToImage是共用的,如果不进行更新的话。buffer会失效,导致无法转换为image,也就无法成功截图了!

java-使用java开发的视频播放器videoplayer java_使用java开发的视频播放器videoplayer 立即下载

相关推荐

JMF截取音频和视频

JMF截取音频和视频 : 1、利用麦克风和摄像机一类的设备截取音频和视频 2、并保存成多媒体文件。 3、完善软件的功能;

Java使用Player播放mp3

大家平时闲了都会听听歌,散散心,于是很多人就问,在Java里边如何播放歌曲呢,唉,别说,在Java里边还真能歌曲,下面我为大家揭晓。 我们都知道Java里边做什么都需要对应的jar包,首先贴上maven得地址: <dependency> <groupId>javazoom</groupId> <artifactId&...

weixin_30580341的博客 1749

java Img转视频的Jim2mov以及JMF、thumbnailator-0.4.8

这个是我博客:《截图录屏工具——图片组转视频流》的资源,单独下载并不能做视频转换

java中player类用法_[Java教程]同步辅助类CountDownLatch用法

[Java教程]同步辅助类CountDownLatch用法0 2016-07-06 12:00:05CountDownLatch是一个同步辅助类,犹如倒计时计数器,创建对象时通过构造方法设置初始值,调用CountDownLatch对象的await()方法则使当前线程处于等待状态,调用countDown()方法就将计数器减1,当计数到达0时,则所有等待线程全部开始执行。它提供的常用方法...

weixin_42635064的博客 1123

Java 视频播放器

实现视频播放 照相 mp3播放 支持视频播放

javaplayer

javaplayer

Javplayer 整合插件版下载使用

Javplayer - 马赛克去除工具工作中去除图片模糊像素,还原高清图片Javplayer - 马赛克去除工具简介版本安装使用调整示例注意事项体验视频小结咨询 工作中去除图片模糊像素,还原高清图片 Javplayer - 马赛克去除工具简介 JavPlayer是一种视频播放器,可在不丢失细节的情况下使马赛克变得不那么明显。Javplayer是一款可以帮助用户去除视频马赛克的视频编辑软件,软件拥有强大的超分辨率算法,能够轻松去除视频、图片文件中的马赛克图层,为您还原最真实的画面,对比各类步兵作品和破坏版,它

weixin_42906256的博客 9万+

java视频播放器

用java开发的视频播放器

JMF(一)

beidou321的专栏 479

DNF单机版搭建全攻略:从零开始到局域网联机(含常见问题解决)

本文提供详细的DNF单机版搭建指南,从环境配置到局域网联机设置,涵盖服务端安装、数据库配置及常见问题解决方案。适合新手和有经验的玩家,帮助快速搭建专属游戏服务器,重温经典游戏体验。

weixin_30832143的博客 847

【算法】—前缀和与差分详解

前缀和指一个数组的某下标之前的所有数组元素的和(即数列的前n项求和),前缀和是一种重要的预处理,能够降低算法的时间复杂度,可以快速地求出某一段的和,对于处理区间之间的问题是往往十分高效相比较其他算法而言,前缀和更像是一种解题的技巧,一种优化方式输入一个长度为 n 的整数序列。接下来再输入 m 个询问,每个询问输入一对 l,r 对于每个询问,输出原序列中从第 l 个数到第 r 个数的和5 32 1 3 6 41 21 32 4123453610。

DAY I 的成长之路 6022

JMF 下载安装与测试 测试成功

  本来就是想在自己写的java里面加入实习的摄像头监控,然后个各种百度了一下,就用JMF来弄了,不过这个东西貌似比较旧,网上的资料虽然说有,但是也不是太多,并且遇到的一下问题也不能解决,总之经过了一天的百度,终于搞定了,其实最大的问题就是安装和设置这方面。   首先就是下载,csdn也有得下载,不过觉得要积分的不太好,毕竟oracle官网有得下:http://www.oracle.c...

a329071489的博客 217

手把手教你编写PCIe设备驱动:基于Linux内核的实战教程

本文详细介绍了基于Linux内核的PCIe设备驱动开发全流程,包括环境准备、设备探测、中断处理、DMA配置等核心内容。通过实战代码示例和Makefile编写指南,帮助开发者快速掌握PCIe驱动开发技术,实现高性能设备驱动开发与优化。

weixin_30687051的博客 193

JMF 视频传输

Java媒体架构(JMF) Java媒体架构(JMF)是一个令人激动的通用的API,它允许Java开发者用许多不同的方法处理媒体。本指南主要通过使用工作的例子提供一个JMF的一些主要的特征的概述。阅读完本指南后,你将会明白JMF体系结构中的主要播放功能。你同样能正确的使用JMF,使用现存的例子和可为更多特殊功能扩展的源代码。 本指南包含着以下主题: · 下载和安装JMF · 主要的JMF类以及它

低调走过 4285

多个MOS管并联应用场景的四大要点

动态运行时,阈值电压Vgsth最低的MOS管首先打开,最后关闭。这种MOS管一般会占据更多的开关损耗,并且在开关转换过程中,承担了更高的电应力。

VBsemi的博客 3748

【UVM实战】第七章:UVM中的寄存器模型(1)寄存器模型简介

寄存器模型简介~

悟已往之不谏 知来者之可追 2070

JMF应用篇 之 用户界面组件

 JMF用户界面组件播放视频在前一节中,我们学习了建立一个通过字符界面播放音频文件的应用程序。JMF中一个最重要的特点就是你不需要为了配置媒体播放器而去了解媒体文件的格式;一切都内置了。举一个例子,再我们前面的例子中,需要使用MP3格式的时候,我们不需要让应用程序为一个MP3文件建立一个特殊的Player。如同你将会再本节所见到的,对于视频文件的操作同样有效。JMF有所有媒体文件类型接口的详细

1779

【Claude】Not logged in 错误:未登录状态的判断与 /login 认证路径 bug报错已解决

login 是首选修复:大多数 "Not logged in" 只需重新执行 /login检查系统时间:时间偏差是 Token 验证失败的常见原因避免密钥库被清理:将 Claude Code 添加到系统清理工具的白名单企业环境用 API Key:如果组织禁用 OAuth,使用 API Key 认证区分凭证类型:理解 Not logged in(无凭证)vs Invalid key(有但无效)

博客 7314

JMF用户界面组件

播放视频 在前一节中,我们学习了建立一个通过字符界面播放音频文件的应用程序。JMF中一个最重要的特点就是你不需要为了配置媒体播放器而去了解媒体文件的格式;一切都内置了。举一个例子,再我们前面的例子中,需要使用MP3格式的时候,我们不需要让应用程序为一个MP3文件建立一个特殊的Player。 如同你将会再本节所见到的,对于视频文件的操作同样有效。JMF有所有媒体文件类型接口的详细资料。 处理视

ap0806223的专栏 1061

vue3 - 详细实现内网使用离线高德地图功能,在vue3中无需网络离线使用高德地图相关功能,高德地图如何离线加载详细教程(内网部署及使用),提供最新完整的瓦片资源下载及相关工具(示例代码,一键复制)

vue3,高德地图,离线使用高德地图,高德地图瓦片官方下载,内网使用高德地图离线无网络,断网情况下使用高德地图,vue离线高德地图教程,内网部署高德地图,无需联网离线使用,vue3+ts实现离线高德地图 内网离线高德地图,如何在高德地图Vue3项目中下载离线地图,地图加载不出来,不显示怎么办,内网使用离线高德地图加载失败问题,vue3实现离线地图+高德瓦片,vue3高德离线地图,如何使用离线高德地图和自定义地图样式,高德离线地图的下载,怎么下载高德地图瓦片,一键把所有瓦片都下载下来,离线加载,内网部署,离线

✅ 精选推荐文章 1万+

关键!C#工业上位机界面设计终极指南:WinForm/WPF怎么选?【工业实战完整版,无废话选型+避坑+落地技巧】

工业上位机UI选型指南:WinForm与WPF核心对比 摘要: 本文基于工业实战视角,对比WinForm与WPF在工业上位机开发中的适用性。WinForm凭借GDI+原生渲染、极致兼容性(完美支持Win7/XP)、低资源占用和硬件底层调用优势,成为老旧工控机、简单监控系统和7×24小时运行设备的首选。WPF则依托DirectX硬件加速、MVVM架构和强大可视化能力,更适合复杂可视化大屏、3D模拟等高端场景及需要长期迭代的大型项目。核心选型原则是:优先考虑稳定性与兼容性,WinForm解决"能不能用

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 728

Java Media Framework 基础教程(二)

第三节. JMF用户界面组件播放视频在前一节中,我们学习了建立一个通过字符界面播放音频文件的应用程序。JMF中一个最重要的特点就是你不需要为了配置媒体播放器而去了解媒体文件的格式;一切都内置了。举一个例子,再我们前面的例子中,需要使用MP3格式的时候,我们不需要让应用程序为一个MP3文件建立一个特殊的Player。如同你将会再本节所见到的,对于视频文件的操作同样有效。JMF有所有媒体文件类型接口的

jackfor001的专栏 1635

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【转】JMF拍照程序的应用

import javax.swing.*; import java.io.*; import javax.media.*; import javax.media.format.*; import javax.media.util.*; import javax.media.control.*; import java.applet.Applet; import java.awt.*; imp...

redglassesgirl的博客 157

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

Java媒体架构基础(二)

 版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明作者:Eric Olson;pawenwen地址:http://www.matrix.org.cn/resource/article/43/43883_JMF.html关键词: Java Media Framework 第三节. JMF用户界面组件播放视频在前一节中,我们学习了建立一个通过字符界面播

hakunamatata2008的专栏 719

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

MP3播放器的设计与实现毕业设计

声音是信息交流的源头,而有规律的声音可以创造意境,给人以美的享受,当其与图形界面相互交融的时候,整个世界就被丰富了起来。多媒体技术是以声音为基础,再加上日益进步的科技还有超前的思维,使得电脑的性能日益提高,与之相关的Java技术也不断被改进,虽然在有的方便还有些欠缺,但是音频技术的出现,为Java语言的发展指出了一条更加光明的方向。Java语言有着占用空间小、可嵌入、跨平台性的优良特点为Java语言的应用提供了很好的平台。简单的播放、暂停、歌曲的上一首、下一首切换、并选择播放模式。

qq835500231的博客 467

MP3播放器的设计与实现

声音是信息交流的源头,而有规律的声音可以创造意境,给人以美的享受,当其与图形界面相互交融的时候,整个世界就被丰富了起来。多媒体技术是以声音为基础,再加上日益进步的科技还有超前的思维,使得电脑的性能日益提高,与之相关的Java技术也不断被改进,虽然在有的方便还有些欠缺,但是音频技术的出现,为Java语言的发展指出了一条更加光明的方向。Java语言有着占用空间小、可嵌入、跨平台性的优良特点为Java语言的应用提供了很好的平台。简单的播放、暂停、歌曲的上一首、下一首切换、并选择播放模式。

QQ79856539的博客 199
上一篇: [转]细数重度玩家的16条强迫症
下一篇: eclipse:自动调整代码格式
gcangle
博客等级 码龄16年 41粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值