下面就以RTSP协议为例,介绍如何通过EasyPusher-Android向流媒体服务器做RTSP直播推流。 二、电脑端通过OBS Studio进行RTSP直播推流 OBS Studio默认不支持RTSP协议,需要先安装OBS-RTSPServer插件,才能实现RTSP推流功能。 有兴趣的朋友可以自行配置OBS Studio以便实现电脑端的RTSP直播推流。 三、手机端通过EasyPusher-Android进行RTSP直播推流 由于EasyPusher仅支持RTSP推流,而SRS不支持RTSP协议,因此服务端只能采用ZLMediaKit。 接着启动手机上的直播录制软件EasyPusher-Android,具体的操作步骤详见之前的文章《移动端的国产直播录制工具EasyPusher》。
移动端进阶之选:移动端开发者也能轻松搭建的服务器 前言: 笔者最近收到了挺多客户端的留言,客户端在等待后台接口的时候遥遥无期,其实客户端只需要几步就能简单搭建一个后台,用于调试接口的,本期就简单搭建一个后台 ,用于客户端调试接口。 image 2.项目启动: TestApplication直接run就能启动项目了的 image application.properties这个是项目的一些配置,举例一下默认是8080端口,我们如果想改下端口的话 * @date 2018-11-12 */ public enum ResponseEnum { SUCCESS("0000","成功"), ERROR("9999","服务器异常 ; name = test; }; responseCode = 0000; responseDesc = "\U6210\U529f"; } 至此,一个完整的、简单的后台搭建完成,客户端的朋友们
传统方案中,开发者需依赖服务器端转码(如将RTSP转为HLS、RTMP或WebRTC),通过中间层技术适配浏览器兼容性。这一模式虽能勉强实现播放,却带来了高昂的隐性成本与性能损耗。 服务器转码的四大致命劣势1. 高延迟:体验的不可承受之重转码过程涉及视频解码、格式转换、协议封装等多环节,导致端到端延迟通常超过3秒,极端情况下可达10秒以上。 2. 成本黑洞:资源消耗与运维负担服务器转码对计算资源(CPU/GPU)的占用呈指数级增长:企业不仅需承担硬件采购成本,还需为带宽、电力、运维团队付出高昂代价。3. 猿大师播放器:颠覆传统,定义Web端RTSP直播新标准面对行业痛点,猿大师播放器以“零转码、低延迟、全兼容”为核心突破点,实现RTSP流在Web端的原生级播放体验,彻底告别服务器转码的枷锁。 原生RTSP协议直连,无需服务器转码彻底摒弃传统转码方案,直接在网页端播放RTSP流,减少中间环节,避免因转码导致的服务器资源消耗与带宽浪费。
下面就以RTSP协议为例,介绍如何通过EasyPusher-Android向流媒体服务器做RTSP直播推流。 二、电脑端通过OBS Studio进行RTSP直播推流OBS Studio默认不支持RTSP协议,需要先安装OBS-RTSPServer插件,才能实现RTSP推流功能。 有兴趣的朋友可以自行配置OBS Studio以便实现电脑端的RTSP直播推流。 三、手机端通过EasyPusher-Android进行RTSP直播推流由于EasyPusher仅支持RTSP推流,而SRS不支持RTSP协议,因此服务端只能采用ZLMediaKit。 接着启动手机上的直播录制软件EasyPusher-Android,具体的操作步骤详见之前的文章《移动端的国产直播录制工具EasyPusher》。
1.移动端视口问题 视口是指浏览器的可视区域,移动端的视口到底是多宽呢? 现在市面上的大部分手机,比如iphone X,它的默认视口宽度为980px,而一个iphone X的屏幕宽度仅仅为375px。 我们可以使用谷歌浏览器的移动端调试工具,来访问百度的搜索结果,可以看到网页明显被缩小了,而且页面宽度定格在980px(不信的话大家可以试试)。 < meta name=”viewport” content=”width=device-width”> 2.移动端误触解决办法 < meta name=”viewport” content=”width 3.移动端尺寸 是同一个网页在不同尺寸手机中的效果。 注意:在移动端,如果使用了背景图(比如雪碧图),记得用同样的方式调整背景图的尺寸。 题外话:移动端看上去是不是很麻烦?视口那么小,还要引入各种东西,里面要添加的又杂又乱,还要计算数值,是不是很麻烦?
这个UI应该是每个移动端网页都必备的,而且使用场景也是非常的丰富,所以这里我们采用一步步循序渐进的方式去重构。 display: block; width: 14px; height: 8px; border-bottom: 2px solid currentColor; border-left: 2px solid currentColor; transform:
”本系列教程为实战教程,是本人移动端重构经验及思想的一次总结,也是对sandal及sheral UI的一次全方位剖析,首发在imweb和w3cplus两大站点及“前端Talk”微信公众号,其余所有标注或没有标注来源的均为转载 的名字是我自己起的(大概的意思是单行列表),要实现的东西为sheral的line list,对应的scss组件为_line-list.scss,下图为line-list的一个缩影: 这个UI应该是每个移动端网页都必备的 display: block; width: 14px; height: 8px; border-bottom: 2px solid currentColor; border-left: 2px solid currentColor; transform:
Button) app.mount('#app') <van-button type="primary">主要按钮</van-button> 安装px转rem插件 npm install postcss-px2rem-exclude lib-flexible -s 新建postcss.config.js module.exports = { plugins: { "postcss-px2rem-exclude ": { remUnit: 75, remPrecision: 2, exclude: /node_modules|folder_name
本文作者:IMWeb 结一 原文出处:IMWeb社区 未经同意,禁止转载 ”本系列教程为实战教程,是本人移动端重构经验及思想的一次总结,也是对sandal及sheral UI的一次全方位剖析, 这个UI应该是每个移动端网页都必备的,而且使用场景也是非常的丰富,所以这里我们采用一步步循序渐进的方式去重构。 display: block; width: 14px; height: 8px; border-bottom: 2px solid currentColor; border-left: 2px solid currentColor; transform:
一、移动端浏览器 ---- 移动端浏览器 比 PC 端浏览器发展要晚 , 使用的技术比较新 , 对 HTML5 + CSS3 支持较好 , 常见的浏览器如下 : UC / QQ / Opera / Chrom / 360 / 百度 / 搜狗 / 猎豹 国内的浏览器 基本都是 根据 Webkit 内核进行修改而来的 , 目前没有自主研发的内核 , 因此 移动端开发适配比较简单 , 兼容主流的浏览器 , 即兼容 Webkit 内核浏览器即可 ; 二、移动端屏幕分辨率 ---- 移动设备的尺寸类型非常多 , Android / iOS 手机分辨率种类很多 , 参考 Android 屏幕适配 专栏 ; 【Android Android 与 iOS 屏幕宽高比种类 | 屏幕像素密度 DPI ) 博客 ; 前端开发时 , 不需要关注上述 屏幕像素密度 dpi , 密度无关像素 dp , 只需要关注 像素尺寸 px 即可 ; 三、移动端网页调试方法
F2 安装 // yarn yarn add @antv/f2 // npm npm i --save @antv/f2 基本使用 Chart 创建图表实例 // html // 图表装载容器 <canvas id='chart'/> import F2 from '@antv/f2' const chart = new F2.Chart({ id: 'chart' // 挂载容器 进阶概念 度量 chart.source(data, defs) 设置数据源时,通过提供第二个参数, 可以设置数据中单一数据值的展示属性 分类 identity 常量 linear 连续数字 [1, 2,
第一步 安装px转rem的插件 npm i lib-flexible postcss-px2rem --s 在根目录添加postcss.config.js文件 module.exports = { plugins : { autoprefixer: {}, "postcss-px2rem": { remUnit: 75, // 设计图为750 * height remPrecision : 2 // rem的小数点后位数 } } }; 在main.js添加 import 'lib-flexible/flexible' px2rem插件安装完成 第二步 安装vant vant文档 这里有个坑,px2rem会把第三方库也跟着转成了rem 卸载之前的postcss-px2rem npm uninstall postcss-px2rem --save-dev 安装postcss-px2rem-exclude { autoprefixer: {}, "postcss-px2rem-exclude": { remUnit: 75, remPrecision: 2,
在前端的移动Web开发中,有一部分事件只在移动端产生,如触摸相关的事件。接下来给大家简单总结一下移动端的事件。 1. PC端事件在移动端的兼容问题 1.1 click事件的200~300ms延迟问题 由于移动端默认的布局视口宽度是980像素,所以网页文字非常小,为了快速让网页还原到原来的大小,Safari最新引入了双击缩放功能 1.2 dblclick事件失效 由于双击缩放的存在,pc端的dblclick事件也失效了。 2. 移动端特有的touch事件 由于移动端设备大都具备触摸功能,所以移动端浏览器都引入了触摸(touch)事件。 封装移动端tap事件 由于点击事件经常使用,如果用click会有延迟问题,一般我们会用touch事件模拟移动端的点击事件, 以下是封装的几个事件,仅供参考。
在前端的移动Web开发中,有一部分事件只在移动端产生,如触摸相关的事件。接下来给大家简单总结一下移动端的事件。 1. PC端事件在移动端的兼容问题 1.1 click事件的200~300ms延迟问题 由于移动端默认的布局视口宽度是980像素,所以网页文字非常小,为了快速让网页还原到原来的大小,Safari最新引入了双击缩放功能 1.2 dblclick事件失效 由于双击缩放的存在,pc端的dblclick事件也失效了。 2. 移动端特有的touch事件 由于移动端设备大都具备触摸功能,所以移动端浏览器都引入了触摸(touch)事件。 封装移动端tap事件 由于点击事件经常使用,如果用click会有延迟问题,一般我们会用touch事件模拟移动端的点击事件, 以下是封装的几个事件,仅供参考。
上一篇我们简单介绍了rtsp协议,本篇我们来看一下rtsp的消息结构! RTSP消息分为两大类,一类是请求消息(request),一类是回应消息(ressponse)! 1(服务器端回复此请求的数据包的序列号也是1); 第二种为User-Agent,表示用户代理,值为 “Lavf58.42.100”; 由于User-Agent为最后一条消息,其后要跟两组回车和换行! 我们接下来看一下回应消息的格式: 2 回应消息(response) ? 回应消息由RTSP版本+状态码+解释开头,之后跟一条或多条消息! 回复消息以Response标识,该消息中RTSP的版本号为1.0; 服务器回复的状态码为401; 针对状态码401的解释为Unauthorized(未授权); 包含两种类型的消息: 一是WWW-Authenticate :告诉请求端授权认证需要的信息; 二是Date:表示当前日期和时间!
移动端基础 移动端浏览器我们主要针对webkit内核进行兼容 现在移动端碎片化比较严重,分辨率和屏幕尺寸大小不一 1.移动端调试方法 Charome DevTools(谷歌浏览器) 的模拟手机调试 搭建本地web服务器,手机和服务器一个局域网内,通过手机访问服务器 使用外网服务器,直接IP或域名访问 2.视口 视口(viewport)就是浏览器显示页面内容的屏幕区域。 4.1单独移动端页面(主流) 通常情况下,网址域名前面加m(mobile)可以打开移动端。 通过设备判断,如果是移动端打开,则自动跳转到移动端页面。 2.css初始化 normalize.css 移动端CSS初始化推荐使用normalize.css 保护了有价值的默认值 修复了浏览器bug 是模块化的 拥有详细文档 官网地址:
移动端浏览器我们主要针对webkit内核进行兼容 现在移动端碎片化比较严重,分辨率和屏幕尺寸大小不一 1、移动端调试方法 Charome DevTools(谷歌浏览器) 的模拟手机调试 搭建本地 web服务器,手机和服务器一个局域网内,通过手机访问服务器 使用外网服务器,直接IP或域名访问 2、视口 视口(viewport)就是浏览器显示页面内容的屏幕区域。 4.1单独移动端页面(主流) 通常情况下,网址域名前面加m(mobile)可以打开移动端。 通过设备判断,如果是移动端打开,则自动跳转到移动端页面。 ,需花费很大精力去调兼容性问题 媒体查询 bootstarp 5.移动端技术解决方案 5.1移动端浏览器 移动端浏览器基本以webkit内核为主,所以就考虑webkit兼容性问题。
实习期间主要在写微信端H5,遇到的最大问题就是适配各个不同尺寸的屏幕。公司就我自己一个前端,只能自己摸索着来。 方法2:定高不定宽 对于流式布局的页面,我们只要把宽度设置为百分比,而高度设置为px,这样宽度就可以自适应,高度由于是流式布局,损失一点美感,再搭配简单的媒体查询,不会对布局造成太大的影响。
移动端浏览器我们主要针对webkit内核进行兼容 现在移动端碎片化比较严重,分辨率和屏幕尺寸大小不一 1.移动端调试方法 Charome DevTools(谷歌浏览器) 的模拟手机调试 搭建本地web服务器,手机和服务器一个局域网内,通过手机访问服务器 使用外网服务器,直接IP或域名访问 2、视口 视口(viewport)就是浏览器显示页面内容的屏幕区域。 4.1单独移动端页面(主流) 通常情况下,网址域名前面加m(mobile)可以打开移动端。 通过设备判断,如果是移动端打开,则自动跳转到移动端页面。 2.css初始化 normalize.css 移动端CSS初始化推荐使用normalize.css 保护了有价值的默认值 修复了浏览器bug 是模块化的 拥有详细文档 官网地址: