视频通讯中文字图片设置的解决方案

在前面发布的“AnyChat发布单向视频解决方案”中,一些应用场景需要在Web的视频上迭加文字、图片等内容来提高用户体验,AnyChat研发团队针对这种需求开放了新的API接口来实现,在AnyChatr4479版本中提供了相关的API接口。

新增API接口功能特点包括:

1、可以在视频上动态迭加文字信息,文字颜色、字体、大小、迭加位置可设置;

2、可以同时迭加不超过5条的文字信息到视频上;

3、可以动态更新文字信息迭加位置,实现文字信息的运动效果;

4、可以在视频上动态迭加图片信息,图片透明度、迭加位置可设置;

5、可以同时迭加不超过5张图片到视频上;

6、可以动态更新图片的迭加位置,实现迭加图片的运动效果;

7、支持JPEG、PNG、BMP等常用图形格式的迭加;

8、支持包含透明通道的PNG格式图片迭加;

9、支持本地图片、互联网图片的迭加,互联网图片后台缓冲,不影响视频的流畅性;

10、文字、图片迭加时采用双缓冲技术,迭加过程中视频画面不闪烁;

新增API接口定义与工作原理:

1.  varANYCHATWEB_VIDEO_SO_OVERLAY  =  8;       //
在视频上迭加文字、图片等内容

2.

3.  //
在本地视频上迭加文字

4.  var szOverlayMessage ="<MESSAGE1><VALUE>Hello,AnyChat!</VALUE><XPOS>0</XPOS><YPOS>50</YPOS><FONTCOLOR>#FFFF80</FONTCOLOR></MESSAGE1>"

5.  GetID("ANYCHAT_VIDEO_LOCAL").SetSDKOptionString(ANYCHATWEB_VIDEO_SO_OVERLAY,szOverlayMessage);

6.

7.  //
在本地视频上迭加图片

8.  var szOverlayImage ="<IMAGE1><VALUE>http://www.anychat.cn/temp/transparent.png</VALUE><XPOS>40</XPOS><YPOS>40</YPOS></IMAGE1>"

9.  GetID("ANYCHAT_VIDEO_LOCAL").SetSDKOptionString(ANYCHATWEB_VIDEO_SO_OVERLAY,szOverlayImage);

复制代码

其中GetID("ANYCHAT_VIDEO_LOCAL")是获取视频显示插件的DMO对象,相关的API接口中作用于该视频显示插件。

其中szOverlayMessage、szOverlayImage是一个XML格式的字符串,包括了需要迭加的相关信息:

1、文字内容的关键字为:<MESSAGE1></MESSAGE1>……<MESSAGE5></MESSAGE5>;

2、图片内容的关键字为:<IMAGE1></IMAGE1>……<IMAGE5></IMAGE5>;

3、需要动态更新迭加内容(如移动图片)时,只需要重复调用上述API,并修改其中的相关参数即可(需要整条内容一起更新);

4、当需要取消迭加内容显示时,只需要调用一次空内容的指令即可,如varszOverlayMessage = "<MESSAGE1></MESSAGE1>”;

当前支持的XML指令关键字列表:

1、MESSAGEx,表示迭加的内容是文字,其中x表示某一段文字,目前支持1- 5;

2、IMAGEx,表示迭加的内容是图片,其中x表示某一张图片,目前支持1- 5;

3、FONTSIZE,表示迭加文字的字体大小,用数字表示,如20;

4、FONTCOLOR,表示迭加文字的字体颜色,用字符串表示,如:#FFFF80;

5、FONTNAME,表示迭加文字的字体名称,用字符串表示,如“宋体”;

6、XPOS,表示迭加信息的x坐标,用数字表示,以视频图像左上角为起点(0);

7、YPOS,表示迭加信息的y坐标,用数字表示,以视频图像左上角为起点(0);

8、VALUE,表示迭加的值,用字符串表示,当迭加内容是图片时,表示图片路径;

9、OPACITY,表示迭加透明度,用数字表示,0- 100,如果图片是PNG格式且包含透明通道,可不用设置该参数;

PS:所迭加的文字、图片只是视频显示上的渲染,不会影响到录像文件的内容(包括本地录像、服务器录像)。

更多视频通讯技术问题可咨询技术论坛:http://bbs.anychat.cn/forum.php

时间: 2024-11-08 10:53:39

视频通讯中文字图片设置的解决方案的相关文章

请问在pulltorefreshGridView中的图片设置了大小之后怎么就不显示了呢

============问题描述============ 我每个Item就是一个LinearLayout中放的一个ImageView,现在我想设置一下这个ImageView的大小. 代码如下: public void setImgSize(ImageView img){ LayoutParams params =  (LayoutParams) img.getLayoutParams(); params.width = winW/2; params.height = winW/2; img.se

opencv之从视频帧中截取图片

最近在训练一个人脸识别的模型,而项目训练需要大量真实人脸图片样本. 刚好项目用到opencv识别人脸,可以把每一帧图片保存下来,用此方法可以方便的获取大量的脸部样本,大约20分钟可以获取到10000张. #-*- encoding:utf8 -*- import cv2 import os import sys import random # 获取分类器 classifier = cv2.CascadeClassifier('haarcascade_frontalface_default.xml

(转载)[FFmpeg]使用ffmpeg从各种视频文件中直接截取视频图片

你曾想过从一个视频文件中提取图片吗?在Linux下就可以,在这个教程中我将使用ffmpeg来从视频中获取图片. 什么是ffmpeg?What is ffmpeg? ffmpeg是一个非常有用的命令行程序,它可以用来转码媒体文件.它是领先的多媒体框架FFmpeg的一部分,其有很多功能,比如解码.编码.转码.混流.分离.转化为流.过滤以及播放几乎所有的由人和机器创建的媒体文件. 在这个框架中包含有各种工具,每一个用于完成特定的功能.例如,ffserver能够将多媒体文件转化为用于实时广播的流,ffp

视频通讯技术的发展与应用

随着现代通讯技术和业务的发展,人们对通讯的需求已经过最初的单一语音需求转变为对视频和音频的通讯需求,以传送语音.数据.视频为一体的视频通讯业务成为通讯领域发展的热门,以点到点或多点视音频通讯为主要形式的视频会议.远程医疗.远程教育等服务得到越来越多的使用.佰锐科技的AnyChat SDK内部封装了音视频的采集.编码.传输.解码以及播放(显示)功能,只需要几个简单的API调用,即可实现多个用户之间的语音.视频.文字交互,在视频游戏平台.视频会议系统.远程教育系统.部队远程指挥系统等多个行业应用实现

视频通讯应用的音频和视频技术

随着视频通讯应用技术的不断发展和完善,越来越多的行业用户接受和使用视频通信产品.但在传统视频通讯技术标准下,由于受到视频通讯应用技术和音视频编解码技术发展的制约,视频通讯技术到现在还没有从根本上解决通讯过程中的图像和声音问题.低等级的视频质量无法满足用户对高清晰图像质量的特殊需求. 在现实运用中,人们对于视频的图像和声音的要求越来越高,例如:远程医疗.远程手术:远程维修等需要通过视频通讯这一过程实现对现场情况的精确视频传输(高清晰视频应用).所以就需要我们提供更高视频通讯质量的高清晰视频通讯产品

即时通讯(文字,图片,视频)包括坐席调度排队系统初步理解

最近公司跟腾讯合作,要搞一个视频呼叫服务,业务场景是这样的:客户通过小程序或者H5发起视频呼叫,坐席端接入进行视频通话.原本最初接到该需求的时候,有想法自己搞一个视频呼叫服务,后来经过调研发现,想搞视频,我还是很嫩啊!视频技术不是小公司说搞就能搞的,涉及的技术较广,较深,其中包括视频的处理,压缩,网络传输等技术问题, 要搞视频呼叫,需要从技术到网络资源的一整套方案,所以果断放弃自己开发,开始寻找第三方平台的支持!后来由于考虑到产品主要以小程序为载体,所以找了腾讯来合作(后面跟腾讯签了战略合作协议

PPT中缺角文字怎样设置?这样操作简单又便捷

PPT是大家经常使用的演示工具之一,PPT不仅可以制作幻灯片,还可以实现很多文字特效.相信大家都见过缺角文字特效吧,那这是怎样操作的呢?其实在PPT中就可以进行设置,下面看看怎样设置吧. 成品展示: 1.在桌面中新建PPT演示文稿,进入PPT中选择页面在功能栏中[开始]操作中选择新建空白页面进行编辑. 2.黑白颜色是效果最明显对比的,所以这里将背景设置为黑色,右键点击PPT选择[设置背景格式]在填充操作中选择[纯色填充]在颜色后的油漆桶中选择黑色即可.3.之后可以在背景中添加一些小元素,让整个幻

在VC++6.0中给对话框设置背景色或者背景图片

/*********************************************************** *说明: 在VC++6.0中给对话框设置背景色或者背景图片 *备注:测试代码的对话框程序的工程名为:BJ *原理:在OnPaint()中加入代码 ***********************************************************/ // 注意:去掉相应以 /* */ 注释的注释符号后代码生效 void CBJDlg::OnPaint() {

iOS开发中的错误整理,启动图片设置了没有效果;单独创建xib需要注意的事项;图片取消系统渲染的快捷方式

一.启动图片设置了没有效果 解决方案:缓存啊!卸了程序重新安装吧!!!!! 二.单独创建xib需要注意的事项 三.图片取消系统渲染的快捷方式