watermark

Java/JSP: How to add WaterMark on Video

天涯浪子 提交于 2021-01-28 18:41:05
问题 I'm trying to add water mark on image and video. For image i got the solution as below Image water marking code Method static void addWatermarkOnImage(String text, File sourceImageFile, File destImageFile) { try { BufferedImage sourceImage = ImageIO.read(sourceImageFile); Graphics2D g2d = (Graphics2D) sourceImage.getGraphics(); // initializes necessary graphic properties AlphaComposite alphaChannel = AlphaComposite.getInstance(AlphaComposite.SRC_OVER, 0.1f); g2d.setComposite(alphaChannel);

屏幕共享功能的应用

断了今生、忘了曾经 提交于 2021-01-27 10:34:26
随着音视频的迅速发展,无论是在商用还是娱乐方面都有很多场景的实际应用,玩法也是越来越多了,随之而来的就是对衍生功能要求的提高。 屏幕共享就是对于商用和娱乐场景最重要的功能之一。以下是根据屏幕共享的应用场景和主要功能做的简单介绍。 应用场景 在线教育:适用于大班课、小班课等多种教育场景,老师端可以通过屏幕共享将上课需要的课件,资料共享给学生,让教学变得更加高效,提高效率节省时间。 游戏直播:游戏主播可以通过实时采集屏幕内容,以直播的方式共享给所有观众,让观众能够以主播同样的视角体验游戏。这样可以提高用户的观看体验,让用户可以有身临其境的感觉。使得用户观看的代入感更强,增加用户的粘性。 视频会议: 主持人可将电脑上的材料共享给远端的与会方,所有人观看屏幕的实时视频流,达到信息共享的目的。主持人不必再提起分发文档,因为参与者可以在演示者的屏幕上看到任何文档或文件,甚至可以要求会议者通过屏幕共享工具的传输功能发送这些文档和文件。 远程演示:在进行远程协作或操作演示时,可以通过采集屏幕和窗口的内容,直观演示具体操作步骤,帮助他人快速理解。屏幕共享允许的在线演示是组织与客户和客户互动的完美方法。借助屏幕共享应用程序,不仅销售人员可以展示他们的产品,而且他们还可以通过提供PC键盘或鼠标的远程控制来邀请客户体验软件程序等项目。这是屏幕共享工具的最佳好处之一。 在线培训

再见!IBM中国研究院

只谈情不闲聊 提交于 2021-01-26 20:17:27
【导读】 IBM中国研究院,悄无声息地「关闭」了。曾风光无限,见证了全球巨头在华研发的盛世辉煌,今天却悄然散做满天星。IBM方面对中国研究院「关闭」也给予回应,称这是IBM在中国的研发布局调整,其中国开发实验室 、IBM 中国系统实验室和客户创新中心也在同一栋大楼里,未来也会继续作为创新中心助力中国发展。 IBM全球12大研究机构之一、中国最具影响力的研究机构——IBM中国研究院,目前被曝已经全面关闭。 近日,据微博网友@马力在知群爆料,IBM CRL(IBM 中国研究院)关闭了,并配以感叹的文字来怀念这个曾经辉煌的研究院,「悄无声息。历史车轮滚滚向前」。 IBM中国研究院成立于1995年9月,如今已是25岁「高龄」,许多知名的科技成果都出自此部门,其中就包括著名的人工智能程序「沃森」。 新智元经求证,消息基本属实,「IBM 中国研究院已于近日关闭,但IBM中国开发实验室 、IBM 中国系统实验室和客户创新中心也在同一栋大楼里。IBM 未来在中国的研发布局,可能会以这些研发实验室和创新中心作为支点。」 这样的消息引起了科技圈的轰动。 一方面,在竞争日益白热化互联网时代当下,这样一家知名度、技术含量都颇高的外企研究院关闭,不免令人唏嘘。 另一方面,IBM近日也公布财报,已经连续十季度营收下降,曾经的「蓝色巨人」似乎已经东山不再。 这是一个时代的落幕,更是一代外企人的落幕

Java高并发BlockingQueue重要的实现类二

为君一笑 提交于 2021-01-23 23:51:42
DelayQueue > DelayQueue是一个无界阻塞队列,只有在延迟期满时才能从中提取元素。该队列的头部是延迟期满后保存时间最长的Delayed元素。 > 存放到DelayDeque的元素必须继承Delayed接口。Delayed接口使对象成为延迟对象,它使存放在DelayQueue类中的对象具有了激活日期,该接口强制执行下列两个方法: CompareTo(Delayed o):Delayed接口继承了Comparable接口,因此有了这个方法 getDelay(TimeUnit unit):这个方法返回到激活日期的剩余时间,时间单位由单位参数指定 DelayQueue使用场景 关闭空闲链接。服务器中,有很多客户端链接,空闲一段时间后需要关闭。 缓存超过了缓存时间,就需要从缓存中移除。 DelayQueue超时订单处理案例 package com.rumenz.learn.delayqueue; import java.util.concurrent.Delayed; import java.util.concurrent.TimeUnit; //DelayQueue里面的元素必须实现Delayed public class Item<t> implements Delayed { private Long expireTime; private T data;

分布式CAP理论、BASE理论详解

冷暖自知 提交于 2021-01-23 13:56:08
一、什么是CAP? CAP示意图 Consistency (一致性): “all nodes see the same data at the same time”,即更新操作成功并返回客户端后,所有节点在同一时间的数据完全一致,这就是分布式的一致性。一致性的问题在并发系统中不可避免,对于客户端来说,一致性指的是并发访问时更新过的数据如何获取的问题。从服务端来看,则是更新如何复制分布到整个系统,以保证数据最终一致。 Availability (可用性): 可用性指“Reads and writes always succeed”,即服务一直可用,而且是正常响应时间。好的可用性主要是指系统能够很好的为用户服务,不出现用户操作失败或者访问超时等用户体验不好的情况。 Partition Tolerance (分区容错性): 即分布式系统在遇到某节点或网络分区故障的时候,仍然能够对外提供满足一致性和可用性的服务。分区容错性要求能够使应用虽然是一个分布式系统,而看上去却好像是在一个可以运转正常的整体。比如现在的分布式系统中有某一个或者几个机器宕掉了,其他剩下的机器还能够正常运转满足系统需求,对于用户而言并没有什么体验上的影响。 二、取舍策略 取舍策略图 CAP三个特性只能满足其中两个,那么取舍的策略就共有三种: CA without P: 如果不要求P(不允许分区),则C(强一致性)和A

再见 Win10系统!下一代操作系统要来了!!

雨燕双飞 提交于 2021-01-22 18:43:01
据最新消息称,Windows 10X有望于春季结束前向OEM厂商推送。 起初微软希望为双屏设备打造专属的Windows 10X体验,但现实表明它更可能在单屏PC上展开试点。此外与常规的 Windows 10 操作系统相比,“X”主要在视觉上有更大的变化。 通常情况下,Windows 10 的开始菜单是从左下角开始唤出的。但Windows 10X的“开始菜单”,却是在屏幕中间悬浮的,对于很多用户来说,这是很不适应的。 此外,Windows 10X主推原生、渐进式 Web 应用(PWA)、以及可快捷调用的网站应用程序,同新系统“开始菜单”也没有应用文件夹或图标分组。 现在,网上已经泄露了Windows 10X系统截图,我们不妨先来感受下如何: 重新设计后的行动中心 新的文件资源管理器 Windows搜索 开始菜单告别Live Tiles 来源: https://news.mydrivers.com/1/735/735091.htm 来源: oschina 链接: https://my.oschina.net/u/4192546/blog/4920651

Java高并发之BlockingQueue

最后都变了- 提交于 2021-01-22 01:17:02
简介 > 多线程中通过队列很容易共享数据,比如经典的 生产者 和 消费者 模型中,通过队列可以很方便的实现数据共享。假设我们有若干生产者线程,又有若干消费者线程,生产者线程可以通过队列将数据共享给消费者。但是生产者和消费者在某个时间段内,万一发生数据处理速度不匹配的情况呢?如果生产者生产数据的速度远大于消费者消费数据的速度,理想情况下是当生产者产生的数据到达一个阈值之后,那么生产者必须暂停一下(阻塞生产者线程),以便消费者可以把数据消费掉。在 concurrent 包出现之前,开发人员必须手动控制这些细节,导致开发高性能程序难度较大(兼顾效率和安全)。 concurrent 出来之后,带来了 BlockingQueue (在多线程中,在某些情况下挂起线程(即阻塞),一旦条件满足,被挂起的线程又会被自动唤醒) > BlockingQueue 即为阻塞队列,是一个先进先出的队列,在某些情况下,对阻塞队列的访问可能会造成阻塞,被阻塞的情况主要有两种。 当对列满时,进行入队操作时。当一个线程试图对一个已经满了的队列进行入队操作时,也将会被阻塞,除非有一个线程进行了出队列操作。 当队列空时,进行出队操作时。当一个线程试图对一个为空的队列进行出队列操作时,也将会被阻塞,费油有一个线程进行了出队列操作。 > 阻塞队列是线程安全的,主要用在生产者消费者的场景上

IDEA使用Alibaba Cloud Toolkit 发布SpringBoot项目到云服务器

拥有回忆 提交于 2021-01-21 19:11:50
软件安装 1.打开 File->Plugins->Marketplace 2.搜索 Alibaba Cloud Toolkit 3.安装成功后重启IDEA 我们可以看到Tools有Alibaba Cloud 选项了,而我们需要用的是Deploy to Host...这个功能 配置服务器 点击 Deploy to Host ,如果你之前没有配置过服务器SSH信息,这里需要先进行配置 配置发布信息 因为服务器上没有安装Maven,我这里利用IDEA打包后,将包上传到服务器指定路径 maven打包指令 clean package -Dmaven.test.skip=true jar包备份(这里我们备份jar包名加上时间戳) mv /usr/local/yee-admin/yee-admin.jar /usr/local/yee-admin/yee-admin-`date +%Y%m%d-%H%M%S`.jar 查看日志指令 tail -200f /data/logs/yee-admin/info.log 执行发布 可以看到首先执行Maven打包 打包成功之后,上传jar到服务器 上传成功之后执行了service.sh脚本,我们可以看到远程服务器上的启动日志 我们登录服务器,服务正常启动,同时原先的jar包也已经备份好了 服务启动脚本service.sh,根据实际情况修改 #!/usr

【代码实战】华为应用市场专家在线直播AppGallery Connect 服务集成过程

非 Y 不嫁゛ 提交于 2021-01-21 09:54:18
直播时间:2021年1月21日19:00-21:00 直播观看地址: https://developer.huaweiuniversity.com/view_live/6c7d4d17-f4b5-4b4a-8b4f-8d39dec6e43b 原文链接: https://developer.huawei.com/consumer/cn/forum/topic/0204465166611600085?fid=0101271690375130218 原作者:Jessyyyyy 来源: oschina 链接: https://my.oschina.net/u/4478396/blog/4917176

【开发者必看】移动应用趋势洞察白皮书-游戏篇

我们两清 提交于 2021-01-20 10:33:56
自2018年12月游戏版号重新开放审批后,中国游戏市场正式迈入新一轮的行业洗牌阶段。一方面,头部游戏厂商被迫进行调整战略、中小游戏企业大量出局、投资事件大幅缩减等,使得游戏市场的生存压力陡然升高;另一方面看,游戏质量持续加强、产品生命周期延长、山寨游戏数量锐减等,这也让中国游戏市场的发展前景更加健康和明朗。艾瑞分析认为,目前中国游戏市场正处于关键的转型变革阶段,同时行业中也存在诸多的痛点亟待产业链各方共同解决,中国游戏市场——特别是移动游戏市场——极有可能在未来三至五年内,进入新一轮的市场格局变化。近期华为应用市场与艾瑞咨询联合发布了《2020年移动应用趋势洞察报告》,对游戏行业进行了分析。以下为完整版报告。 原文链接: https://developer.huawei.com/consumer/cn/forum/topic/0202439490706010328?fid=23 原作者:AppGallery 来源: oschina 链接: https://my.oschina.net/u/4478396/blog/4914997