首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏得物技术

    媒体在客服IM消息通信中的秒发实践

    引言 媒体是指在即时通信过程中传输的图片、语音、视频、文件等媒体介质的展示方式。 一、背景 客服一站式平台旨在为得物生态内的客服域服务人员提供一站式的服务办公平台。 我们有多条业务线,客服在和用户聊天的过程中,有很多场景需要发送媒体。跟普通的文本传输相比,媒体可以直观的让用户了解到消息内容,但是在传输过程中也面临着文件大、内存消耗大、传输过程漫长等问题。 四、总结 媒体发送在很多IM场景中均会涉及到,用什么样的技术实现能够让客服和用户之间沟通和交流更便捷是本文阐述的重点。 2、流媒体媒体、多媒体的概念 流媒体媒体、多媒体到底有什么区别? 流媒体:一边使用,后台一边下载后面可能要使用到的东西。 媒体:文字、图片、视频、音频混排的页面内容。 多媒体:图片、文字、音频、视频等资料。 其中流媒体是一种传输方式,媒体是不同于纯文本的一种展示方式,多媒体是展示内容的一种手段。

    1.8K61编辑于 2022-08-09
  • 来自专栏全栈程序员必看

    p2p流媒体技术(简述流媒体的特点)

    P2P,看了林哥的博客后对流媒体的概念了解了,感觉不太对劲,于是乎马不停蹄在网上度娘了一把进行验证,果然发现流媒体和P2P是不同的两个东西,但是P2P技术在流媒体领域中应用比较广泛,也难怪之前自己将两者混为一谈 通过在网上查资料和林哥的博客自己对传统媒体,流媒体,加P2P的流媒体技术有了更多的了解,在此与大家共享。 【流媒体进化之路】 1、传统媒体:刚开始的时候大家在网上看视频或音频等媒体是采用传统媒体的方式:从服务器下载完后再能进行播放: 2、流媒体:随着人类生活越来越丰富,品味越来越高(比如:视频要超清滴等 于是乎应用P2P技术流媒体应运而生: (1)最开始只有客户A获取资源示意图: (2)过一会儿后客户B获取资源示意图: (3)再过一会儿客户C访问资源示意图: 【总结】 1、从传统媒体—>流媒体—>含P2P流媒体:技术复杂度逐渐递增,人的体验越来越好; 2、随着人类的生活越来越丰富需求越来越高,从而推动技术在不断的发展; 3、学习的兴趣来源于经历来源于好奇心

    1.7K30编辑于 2022-08-01
  • 来自专栏java,hbase

    Vue2使用文本编译器

    可以先看看我之前的一篇文章,属于基础吧 在页面使用文本编译器_超*的博客-CSDN博客 至于为什么还是用TinyMCE,不用ElementUI自带的文本编译器,因为技穷/(ㄒoㄒ)/~~ 同样参考一篇文章 (进行修改、完善): VUE2下版本的项目加入文本框实现_vue2文本从js文件夹加载_我算哪枝小绿植的博客-CSDN博客  1、下载资源 npm install tinymce -S npm install @tinymce/tinymce-vue@3.0.1 2、 开始 这里说一下,按照原博主的步骤是将node_module文件下的tinymce文件,拷贝一份到静态资源目录中。 /zh_CN.js", //中文语言包路径 language: "zh_CN", //声明文本的语言类型 height: 430, menubar

    72820编辑于 2023-10-15
  • 来自专栏C++

    SDL2:封装媒体显示播放Csdl2

    Github https://github.com/gongluck/SDL2-study/tree/master/Csdl2 Csdl2.h #ifndef __CSDL2_H__ #define _ _CSDL2_H__ #include <SDL.h> #include <string> #include <mutex> class Csdl2 { public: // 状态 H__ Csdl2.cpp #include "Csdl2.h" // 递归锁 #define LOCKCSDL2() std::lock_guard<std::recursive_mutex> _lock (); } bool Csdl2::set_window(const void* hwnd, std::string& err) { LOCKCSDL2(); CHECKCSDL2STOPV OPTSUCCEED(); } bool Csdl2::stop_audio(std::string& err) { LOCKCSDL2(); CHECKCSDL2NSTOPA(err

    72430发布于 2019-06-22
  • 来自专栏李洋博客

    利用og媒体标签,提升网站在搜索引擎中的竞争力

    HI,最近更新的有些频繁,没办法事情即便工作再多有问题就得处理,有客户咨询我,主题SEO功能优化的怎么样,我说主题模板均是SEO标准化达标的,还增加了OG媒体标签功能,又问我什么是OG媒体标签,好吧 它可以帮助我们在社交媒体平台上展示网页的内容,让网页在社交媒体上呈现出更加丰富的效果。简单来说,OG标签就是一套能够让我们的网页在社交媒体上“活”起来的工具。 扩大网站影响力:通过OG标签,我们的网页可以在社交媒体平台上得到更广泛的传播,吸引更多的用户访问。这样的口碑传播,无疑是对我们网站最好的宣传。 meta property="og:updated_time" content="更新时间" /> 对于不同的页面OG标签有不同的释义,这里仅仅给出文章页的信息,当然你肯定会看看自己的网站是否带有OG媒体标签是吧 ,没有也不用担心,本站开发的主题模板均自带SEO功能,包括自定义文章的标题,关键词和描述等等,甚至不需要单独设置就能自动生成OG媒体标签,一劳永逸。

    75510编辑于 2024-03-20
  • 来自专栏Czy‘s Blog

    初探文本之文本概述

    演进之路 Web文本编辑器也是在不断演进,在整个发展的过程中,也是遇到了不少困难,而正是因为这些问题,可以将发展历程分为L0、L1、L2三个阶段的发展历程。 基于浏览器提供的contenteditable实现文本编辑。 2. 使用浏览器的document.execCommand执行命令操作。 早期轻量编辑器。 较短时间内快速完成开发。 基于浏览器提供的contenteditable实现文本编辑。 2. 数据驱动,自定义数据模型与命令的执行。 石墨文档、飞书文档。 满足绝大部分使用场景。 无法突破浏览器自身的排版效果。 现在主流的L2文本编辑器都是借助于Canvas来绘制所有的内容,而因为Canvas只是一个画板,所以无论是排版还是选区、光标等等都需要自行计算与实现。 正如游戏角色所突破的瓶颈期,文本编辑器在L0跃迁至L1发生的改变是自定义数据模型的抽离,在L1跃迁至L2的改变则是自定义的排版引擎。

    2.5K10编辑于 2022-11-28
  • 来自专栏iOS逆向与安全

    iOS文本使用指南: 1、封装文本API,采用block实现链式编程 2、 超链接属性 3、HTML字符串与文本互转

    引言 【持续更新中】 原文: https://kunnan.blog.csdn.net/article/details/114014827 I、封装文本API,采用block实现链式编程 iOS开发效率工具 :完整SDK源码【封装文本API,采用block实现链式编程】(block 的妙用:结合block和方法的优点实现iOS的链式编程) 1、文章:https://blog.csdn.net/z929118967 /article/details/107835195 2、从CSDN资源下载完整SDK代码:https://download.csdn.net/download/u011018979/14038715 (包含超链接属性)【本文包含完整demo源码,demo支持中英文切换】 1、文章:https://blog.csdn.net/z929118967/article/details/103902362 2、 placeholderLabel 私有API 问题:iOS13无法直接访问_placeholderLabel.textColor 解决方案:使用 NSMutableAttributedString 文本

    1.8K10发布于 2021-03-08
  • 来自专栏云原生知识宇宙

    打造超级容器开发环境(四):部署容器

    编写 Kubernetes 的 YAML 来部署 devcontainer,示例:

    33810编辑于 2024-06-10
  • 来自专栏媒矿工厂

    W3C: 媒体制作 API (2)

    但首先让我重复一句在自由软件多媒体开发界经常听到的老话:“memcpy就是谋杀”。在这个开玩笑的句子背后有一个重要的事实:为了最大限度地提高性能,需要尽可能少的内存拷贝。 图2 执行帧复制操作的时间 YUV 420 4K标准动态范围的视频帧在 CPU 缓存中需要 6.6ms 和 17ms。这只是因为我运行的 CPU 有很多缓存,而且才复制了一帧而已。 两个例子 图3 必要的拷贝操作1 图4 必要的拷贝操作2 下面是两个简单的设计方案,可以解决列表中最后两个问题。 附上演讲视频:http://mpvideo.qpic.cn/0bc3bqaceaaateaod2td3zrfadgdeigaaiqa.f10002.mp4? WebRTC和媒体元素在Chrome中也与Web audio共享相同的音频基础设施。这使得它很难带来一个只对网络音频有利的大变化。

    1.3K20编辑于 2022-05-25
  • 来自专栏科技向令说

    响铃:母婴社区进入竞争深水区,媒体会是下一个风向标?

    例如母婴媒体化,3月29日,知名母婴社区“宝宝知道”2018年度母婴高峰论坛在京召开,除了超300位母婴品牌机构、行业大咖及知名母婴媒体共同探讨母婴行业的发展与趋势,最引人注目的就是宝宝知道关于媒体的一系列内容运营和营销传播动作 众所周知,以短视频为代表的媒体形态已经持续火热多时,火山小视频、抖音频频成为内容领域的焦点。那么,母婴社区做媒体内容,和大众内容媒体之间有什么关联? 1 把内容当整体,母婴内容与大众内容有三个相同的逻辑 如果我们把内容当做整体,不区分内容属性,母婴的媒体内容和大众媒体内容在当前有三个共同的发展逻辑。 优质内容和优质渠道抱团,这种生态下母婴媒体内容才会有更广阔的发展空间。 此外,媒体方面,宝宝知道观看视频的用户达56.7%,其中每天观看超过30分钟的占其中64.1%,媒体给宝宝知道带来了更长的用户停留时间(这正是互联网产品质量、变现能力的重要指标)。

    46120发布于 2018-08-21
  • 来自专栏半生瓜のblog

    【QT】QT文本

    文本 QTextEdit支持文本处理,即文档中可使用多种格式,如文字、图片、表格等。 PlainText为纯文本。 由此可类比, windows的记事本就是纯文本编辑器,word就是文本编辑器。 文档的光标主要基于QTextCursor类,文档的框架主要基于QTextDocument类。 一个文本的文档结构主要分为几种元素:框架(QTextFrameFormat)、文本块(QTextBlock)、表格(QTextTable)、列表(QTxtList)。 frameFormat.setMargin(10);//设置边距 frameFormat.setPadding(5);//设置填衬 frameFormat.setBorder(2) for(int i =0 ; i < document->blockCount();i++) { qDebug()<<QString("文本块%1,文本块首行行号为:%2,

    2.9K10编辑于 2023-05-13
  • 【vue】 vue2 中使用 Tinymce 文本编辑器

    -- tinymc文本 --> <template>

    <editor v-model="myValue" :init="init" :disabled u5df2\u6fc0\u6d3b)", "Plugins installed ({0}):": "\u5df2\u5b89\u88c5\u63d2\u4ef6 ({0}):", "Premium ) { return { tiny: { value: undefined, }, }; }, methods: { // 保存文本内容 可能会遇到的问题 import “tinymce/icons/default” 路径找不到需要升级tinymce版本 解决方法: 终端执行:npm i tinymce -S 参考文章:tinymce-文本 (vue2) 下班~

    1.2K10编辑于 2025-12-15
  • 来自专栏从零开始学自动化测试

    Selenium2+python自动化23-文本(自动发帖)

    前言 文本编辑框是做web自动化最常见的场景,有很多小伙伴遇到了不知道无从下手,本篇以博客园的编辑器为例,解决如何定位文本,输入文本内容 一、加载配置 1.打开博客园写随笔,首先需要登录 不懂如何加载配置文件的,看这篇Selenium2+python自动化18-加载Firefox配置 ? 三、iframe切换 1.打开编辑界面后先不要急着输入内容,先sleep几秒钟 2.输入标题,这里直接通过id就可以定位到,没什么难点 3.接下来就是重点要讲的文本的编辑,这里编辑框有个 iframe,所以需要先切换 (关于iframe不懂的可以看前面这篇:Selenium2+python自动化14-iframe) ? python自动化23-文本" editbody = u"这里是发帖的正文" driver.find_element_by_id("Editor_Edit_txbTitle").send_keys(edittile

    1.3K80发布于 2018-04-08
  • 来自专栏lib库

    Android文本开发

    如果一个文本是:文字1+图片1+文字2+文字3+图片3+图片4;那么使用LinearLayout包含多个EditText实现的难点: 如何处理记录当前的焦点区域 如何处理在文字区域的中间位置插入ImageView editStr1 = lastEditStr.substring(0, cursorIndex).trim(); //获取光标后的字符串 String editStr2 :文字1+图片1+文字2+文字3+图片3+图片4,那么点击文字1控件则在此输入文字,点击文字3控件则在此输入文字。 插入1,2,3这三张图片,如何保证它们的插入顺序,从而避免插入错位,带着这几个问题看一下插入多张图片操作。 代表文字;2,代表图片 */ private int type; //省略很多set,get方法 } ``` 然后怎么去把文本数据按照有序去放到集合中呢?

    10.2K20发布于 2019-12-25
  • 来自专栏媒矿工厂

    W3C:媒体工作流集成(2

    最后,我们需要以某种方式对网络浏览器进行标准化,这样我们就可以拥有媒体管理能力或媒体管理功能,在那里可以播放媒体、音频字幕和广播媒体,并可以以单一方式呈现。 媒体的无代码 iPaaS 的三个组成部分 在这个图中,我们可以看到媒体的无代码 iPaaS 的三个组成部分,第一个,也是真正的关键,这是媒体的无代码 iPaaS 的一个真正的推动者 -- 媒体提取层。 使用场景 2 另一个是本地化,我们在云中接收一个内容,音频、字幕或两者都接收到,它使用网络浏览器,支持视频和音频的播放,还支持音频、字幕和所有内容的同步。如果它是正确的,它将被传递到另一个目的地。 附上演讲视频:http://mpvideo.qpic.cn/0b2evmaaaaaabmaafwd2wfrfbk6dacvqaaaa.f10003.mp4? dis_k=1e2f14138867cb33ac7a805342eb5eaf&dis_t=1653460574&vid=wxv_2391943808696811521&format_id=10003&support_redirect

    69630编辑于 2022-05-25
  • 来自专栏全栈程序员必看

    p2p在线直播流(何为流媒体)

    看到网上一些吹牛P2P低延时的文章,觉得不是很靠谱,抽空调研了一下这个问题。 P2P低延时的几个方向: 方法一:通过直接采集并编码多媒体帧,将多媒体帧切分成1KB大小的数据颗粒, 采用push策略的进行小包传输,提高传输效率,减小传输延时; cl=zh 专利号 CN 101945129A P2P流媒体直播的低延时传输方法及系统 方法二:采用采用非平衡的 MDC 编码方案 ,节点在启动播放时仅仅请求基本流的数据,所需带宽较小,能有效降低启动时延 re=view 基于宽带城域网的 P2P 流媒体直播模型与方法 方法三:动态路由优化 http://wenku.baidu.com/view/bcb5e56ab84ae45c3b358ca2 .html 增强型P2P技术改善客户体验 另外,感觉很多文章把节目延时和启动延时混在一块。

    61220编辑于 2022-07-25
  • 来自专栏Android知识点总结

    Android多媒体之Camera2的相关操作

    零、前言 Android 5.0+ (API 21) Camera过时.png ---->[源码里让我们用camera2] * @deprecated We recommend using the new {@link android.hardware.camera2} API for new applications. 这里的camera2可不是一个类哦 一、打开相机并预览 1.早听闻camera2很复杂,没想到这么复杂,我都有点小hold不住 视图布局和上一篇一样,只是实现变了而已 1.打开相机:Camera2Activity Camera2Activity.lambda$surfaceCreated$9(Camera2Activity.java:355) at com.toly1994.video.cameral2 -$$Lambda$Camera2Activity$ip57VOWPzaqDJe_HhvMUPkOS6eo.onImageAvailable(Unknown Source:2) 再看看ImageReader

    3.3K50发布于 2019-02-25
  • 来自专栏媒矿工厂

    媒体,连接媒体及应用

    本文解释了MLAF“多媒体链接”标准所带来的好处,以及它的具体应用。 多媒体连接环境 直到二十五年以前,几乎唯一能建立不同媒体之间关系的装置就是大脑。 MPEG为“我有一个媒体对象,我想知道在多媒体数据库中还存在哪些其他相关的媒体对象”这句话所描述的问题提供了大量的资源,并在MPEG-7模型中表示如下图所示: ? 两个虚拟空间之间存在关系; 用户通过混合来自不同来源的一组媒体来创建媒体对象。混合的媒体对象和不同来源的媒体之间存在关系。 MLAF表示的结构(第1点和第2点)基于作为专用MPEG-21注释实现的MPEG-21数字容器。时空范围由两个MPEG-7工具的表达能力和MPEG-21数字项的一般描述能力来表示。 计划在未来某个时间播出的电视节目被上传到广播服务器[1]和bridget创造工具(BAT)[2]; BAT计算并存储程序的音频指纹到音频指纹服务器(AFS)[3]; bridget编辑器使用BAT创建

    1.1K10发布于 2020-02-24
  • 来自专栏全栈程序员必看

    vue文本编辑器的使用_elementui文本

    一、安装 npm install quill --save 二、注册 1.在.main.js中注册文本编辑器 Vue.use(VueEditor) 三、使用 1.以下是写好的文本编辑器,附带功能齐全 (Quill官方中文文档) 2.新建一个Editor文件夹,文件夹下创建一个index.vue文件,将此复制到vue文件里 3.将Editor文件夹放入Vue项目的components组件包里方便其他页面直接引用文本编辑器 indent: '+1' }], // 缩进 [{ size: ['small', false, 'large', 'huge'] }], // 字体大小 [{ header: [1, 2, ]::before, .ql-snow .ql-picker.ql-header .ql-picker-item[data-value="2"]::before { content: "标题2"; --文本编辑器 此处必须设置文本编辑器高度--> <editor v-model="form.content" :min-height="192" /> </el-form-item> </el-col

    3.1K10编辑于 2022-11-04
  • 来自专栏从零开始学自动化测试

    Selenium2+python自动化24-js处理文本

    前言 上一篇Selenium2+python自动化23-文本(自动发帖)解决了文本上iframe问题,其实没什么特别之处,主要是iframe的切换,本篇讲解通过js的方法处理文本上iframe 不懂如何加载配置文件的,看这篇Selenium2+python自动化18-加载Firefox配置 ? 三、定位iframe 1.打开编辑界面后先不要急着输入内容,先sleep几秒钟 2.输入标题,这里直接通过id就可以定位到,没什么难点 3.接下来就是重点要讲的文本的编辑,这里编辑框有个 iframe,所以需要先切换 (关于iframe不懂的可以看前面这篇:Selenium2+python自动化14-iframe) ? python自动化23-文本" editbody = u"这里是发帖的正文" driver.find_element_by_id("Editor_Edit_txbTitle").send_keys(edittile

    1.3K50发布于 2018-04-08
领券