当前位置: 首页 > news >正文

做公众号封面网站wordpress linux 配置

做公众号封面网站,wordpress linux 配置,个人网站 icp 代理,网站系统平台的安全策略是什么html中的video标签可以用来播放常见的音视频格式#xff0c;支持的格式包括:MP3、Ogg、WAV、AAC、MP4、WebM、AVI等#xff0c;当然支持的格式也和浏览器和操作系统有关。这里以一个可以自动播放音视频并绘制波形图的页面为例说明一下video标签的用法。 vid…html中的video标签可以用来播放常见的音视频格式支持的格式包括:MP3、Ogg、WAV、AAC、MP4、WebM、AVI等当然支持的格式也和浏览器和操作系统有关。这里以一个可以自动播放音视频并绘制波形图的页面为例说明一下video标签的用法。 video标签想自动播放需要设置三个可选属性分别是muted、autoplay、controlsmuted负责让音视频播放静音autoplay让音视频自动播放controls属性负责显示对应的控制菜单。除了通过html页面设置标签属性之外我们还可以通过js脚本来设置对应的属性设置方法如下所示: !DOCTYPE html html headtitle播放音视频/titlemeta charsetUTF-8 /head bodyvideo idmyVideo autoplay muted controlssource src./mysong.mp3 typeaudio/mpeg!--source srcvideo.mp4 typevideo/mp4--Your browser does not support the video tag./videoscriptvar videoElement document.getElementById(myVideo);// 自动静音播放videoElement.muted true; videoElement.autoplay true;videoElement.controls true;/script /body /html浏览器为了防止页面自动播放音频干扰用户不允许在用户没有进行交互操作的时候网页自动以非静音的模式播放音视频。所以autoplay属性必须搭配muted属性一块使用。 如果想要绘制音视频播放过程中的音频波形图我们需要拦截对应的音频上下文分析绘制对应的音频数据。对应的实现如下所示: !DOCTYPE html html headtitle绘制音频波形图/titlemeta charsetUTF-8 /head bodyh1绘制音频波形图/h1video idmyVideo controlssource src./mysong.mp3 typeaudio/mpegYour browser does not support the video tag./videocanvas idwaveformCanvas/canvas script// 获取video元素和canvas元素let video,analyser,ctx,canvas,audioContext,timerID,analyserNode;video document.getElementById(myVideo);//播放的时候调用初始化操作video.addEventListener(play,initWaveDraw);//获取画布元素canvas document.getElementById(waveformCanvas);ctx canvas.getContext(2d);function initWaveDraw(){// 创建音频上下文if(!audioContext){audioContext new(window.AudioContext || window.webkitAudioContext)();analyser audioContext.createAnalyser();analyser.connect(audioContext.destination);analyserNode audioContext.createMediaElementSource(video);analyserNode.connect(analyser);timerID setInterval(drawWaveform,200); }}// 绘制波形图function drawWaveform() {// 获取波形数据var bufferLength analyser.fftSize;console.log(drawing wave);var dataArray new Uint8Array(bufferLength);analyser.getByteTimeDomainData(dataArray);// 清空画布ctx.clearRect(0, 0, canvas.width, canvas.height);// 绘制波形图ctx.lineWidth 2;ctx.strokeStyle rgb(0, 255, 255);ctx.beginPath();var sliceWidth canvas.width * 1.0 / bufferLength;var x 0;for (var i 0; i bufferLength; i) {var v dataArray[i] / 128.0;var y v * canvas.height / 2;if (i 0) {ctx.moveTo(x, y);} else {ctx.lineTo(x, y);}x sliceWidth;}ctx.lineTo(canvas.width, canvas.height / 2);ctx.stroke();} /script /body /html显示效果如下图所示: 如果想让播放器自动播放音频并放音我们可以采用一些迂回策略首先让播放器自动静音播放然后设置一个定时器检测用户是否和页面发生了操作交互如果产生了交互就播放音频并绘制波形图。(浏览器默认没有交互的时候不允许播放声音) 对应的实现如下所示: !DOCTYPE html html headtitle绘制音频波形图/titlemeta charsetUTF-8 /head bodyh1绘制音频波形图/h1video idmyVideo controlssource src./mysong.mp3 typeaudio/mpegYour browser does not support the video tag./videocanvas idwaveformCanvas/canvas script// 获取video元素和canvas元素let video,analyser,ctx,canvas,audioContext,timerID, checktimerID, analyserNode;var hasUserInteracted false;video document.getElementById(myVideo);//获取画布元素canvas document.getElementById(waveformCanvas);ctx canvas.getContext(2d);video.muted true; video.autoplay true;video.controls true;// 监听键盘按下事件function handleUserInteraction(){console.log(user has interacted);hasUserInteracted true;}document.addEventListener(click, handleUserInteraction);checktimerID setInterval(checkMouseClick, 1000);setTimeout(function(){ video.addEventListener(volumechange,handleUserInteraction);},2000);//定时检测鼠标事件,开启带声音的播放function checkMouseClick(){if(hasUserInteracted){ initWaveDraw();video.muted false; video.play(); clearInterval(checktimerID);}}function initWaveDraw(){// 创建音频上下文if(!audioContext){audioContext new(window.AudioContext || window.webkitAudioContext)();analyser audioContext.createAnalyser();analyser.connect(audioContext.destination);analyserNode audioContext.createMediaElementSource(video);analyserNode.connect(analyser);timerID setInterval(drawWaveform,200); }}// 绘制波形图function drawWaveform() {// 获取波形数据var bufferLength analyser.fftSize;console.log(drawing wave);var dataArray new Uint8Array(bufferLength);analyser.getByteTimeDomainData(dataArray);// 清空画布ctx.clearRect(0, 0, canvas.width, canvas.height);// 绘制波形图ctx.lineWidth 2;ctx.strokeStyle rgb(0, 255, 255);ctx.beginPath();var sliceWidth canvas.width * 1.0 / bufferLength;var x 0;for (var i 0; i bufferLength; i) {var v dataArray[i] / 128.0;var y v * canvas.height / 2;if (i 0) {ctx.moveTo(x, y);} else {ctx.lineTo(x, y);}x sliceWidth;}ctx.lineTo(canvas.width, canvas.height / 2);ctx.stroke();} /script /body /html
http://www.tj-hxxt.cn/news/234369.html

相关文章:

  • 如何做响应式网站设计电子工程王力卓
  • mvc5 网站开发美学 pdf北京网站页面设计
  • 2.2 网站建设的流程如何免费创建一个个人网站
  • 建设工程材料网站wordpress出现自动投稿
  • 搜索引擎网站使用的排名规则网站续费要多少钱
  • 镇江网站建设方式优化如何快速优化网站
  • 自己做音乐网站挣钱吗加拿大28网站建设
  • 网站设计基础知识南王科技:美方裁定公司
  • 学校网站建设评比活动获奖郴州最大的网络科技公司
  • 长沙做一个网站要多少钱河南app定制开发
  • 营销团队的建设与管理太原企业网站seo
  • 海西高端网站建设公司下载ps软件免费版
  • 一个网站的上线流程网站建设所有权
  • 个人博客网站需要备案吗鱼台县建设局网站
  • 长沙网站seo按天计费wordpress评论随机
  • 网站建设 价格低Wordpress 打开xml rpc
  • 网站客户需求分析天津做网站建设公司
  • 提供常州网站优化赣州市人才网招聘信息查询信息
  • 任务一 分析电子商务网站栏目结构天津做推广的公司
  • 淘宝网站建设方式怎样自做网站
  • 企业做网站需要什么网络信息工程师
  • 台州手机端建站模板如何推广
  • 重庆万州网站建设公司电话永久免费crm客户管理系统
  • 杭州建设网站公司哪家好宁波互联网公司排名
  • php网站上传漏洞网站首页面设计
  • cms网站制作网站推广排名
  • 网站上传后打不开wordpress登陆死循环
  • 京东网站 用什么做的wordpress更改轮播图
  • 大数据分析网站东莞网站哪家好
  • 巩义网站建设公司seo的名词解释