国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

HTML5實現(xiàn)音頻和視頻嵌入的方法

2024-08-26 00:20:55
字體:
供稿:網(wǎng)友

簡介

HTML5未出來之前,在線的音頻和視頻都是借助Flash或者第三方工具實現(xiàn)的,現(xiàn)在HTML5也支持了這方面的功能。在一個支持HTML5的瀏覽器中,不需要安裝任何插件就能播放音頻和視頻。原生的支持音頻和視頻,為HTML5注入了巨大的發(fā)展?jié)摿Α?/p>

html實現(xiàn)音頻嵌入(傳統(tǒng)方式):這種方式雖然可以實現(xiàn),但是要瀏覽器支持Flash而且并不能實現(xiàn)控制,所以要實現(xiàn)起來很麻煩。

<object height="200" width="200" data="2_1.swf" ></object><embed src="2_1.mp4" type="">

那么也就是說HTML5存在一個很大的問題就是兼容性。音頻

HTML5支持的音頻格式:

HTML5,音頻,視頻,嵌入

視頻

視頻格式:

HTML5,音頻,視頻,嵌入

由上可知,HTML5貌似支持的格式有點少哈,所以當(dāng)你發(fā)現(xiàn)用HTML5放置音頻和視頻不顯示時,應(yīng)該就是格式不支持的問題。注: MP4有3種編碼,mpg4(xdiv),,mpg4(xvid),avc(h264), 只有h264才是公認(rèn)的MP4標(biāo)準(zhǔn)編碼(在這也是被坑了,其他格式的只有聲音沒有圖像。)遇到這種問題,就用視頻格式轉(zhuǎn)換器,轉(zhuǎn)換一下格式就OK啦。

音頻實現(xiàn)起來很簡單:這里工具條使用了瀏覽器默認(rèn)的工具條。

<audio src="htmls/1.mp3"  controls="controls" loop="loop" preload="auto" >你的瀏覽器不支持video元素</audio>

HTML5,音頻,視頻,嵌入
 

視頻雖然也可以使用瀏覽器默認(rèn)的,但無法實現(xiàn)私人訂制,所以從學(xué)技術(shù)的角度講,還是要學(xué)習(xí)一下自己做工具實現(xiàn)功能(audio也可參照此方法)。

audioVideo.html

<!DOCTYPE html>	<html>	<head>		<meta charset="UTF-8">		<title>網(wǎng)頁放置視頻</title>		<style type="text/css">		</style>		<script type="text/javascript" src="js/ControlBar.js"></script>	</head>	<body>		<audio src="htmls/1.mp3"  controls="controls" loop="loop" preload="auto" >			你的瀏覽器不支持video元素		</audio>		<video id="myPlayer" width="600" height="400" src="htmls/2_1.mp4" controls="controls" loop="loop" poster="3.jpg">			你的瀏覽器不支持audio元素			<!-- MP4有3種編碼,mpg4(xdiv),,mpg4(xvid),avc(h264),                  只有h264才是公認(rèn)的MP4標(biāo)準(zhǔn)編碼 -->		</video>		<div id="progress"></div>		<!-- 音量控制 -->		<input id="volume" type="range" min="0" max="1" step="0.1" onchange="Volume(this)">		<!-- 速率和時間進度的信息 -->		<span id="rate">1</span>fps <span id="info"></span>		<button onclick="Play(this)" id="btn1">播放</button>		<button onclick="Fast()">快進</button>		<button onclick="Slow()">慢進</button>		<button onclick="Prev()">后退</button>		<button onclick="Next()">前進</button>		<button onclick="Muted(this)">靜音</button>	</body></html>

顯示(html)與功能實現(xiàn)(js)分離,由外部導(dǎo)入

ControlBar.js

//使用腳本檢測瀏覽器的標(biāo)簽支持情況var support = !!document.createElement("audio").canPlayType;if (!support) {	alert("你的瀏覽器不支持本視頻播放");}// 定義全局的視頻對象var e1 = null;window.addEventListener("load", function() {	e1 = document.getElementById("myPlayer");});/*前進:一分鐘 */function Next() {	e1.currentTime+=10; //設(shè)置屬性currentTime,快進10s}/*后退:一分鐘 */function Prev() {	e1.currentTime-=10; //設(shè)置屬性currentTime,后退10s}/*播放/暫停*/function Play(e) {	if(e1.paused){		e1.play();		document.getElementById("btn1").innerHTML="暫停"	}else{		e1.pause();		document.getElementById("btn1").innerHTML="播放"	}}/*慢進:小于等于1時,每次都只減慢0.2的速率;大于1時,每次減1 */function Slow(){	if(e1.playbackRate<=1){		e1.playbackRate-=0.2;	}else{		e1.playbackRate-=1;	}	document.getElementById("rate").innerHTML=fps2fps(e1.playbackRate);}/*慢進:小于等于1時,每次都只減慢0.2的速率;大于1時,每次減1 */function Fast(){	if(e1.playbackRate<1){		e1.playbackRate+=0.2;	}else{		e1.playbackRate+=1;	}	document.getElementById("rate").innerHTML=fps2fps(e1.playbackRate);}function fps2fps(fps){	if(fps<1){		return fps.toFixed(1);	}else{		return fps;	}}/*靜音*/function Muted(e){	if(e1.muted){		e1.muted=false;		e.innerHRML="X";		document.getElementById("volume").value=e1.volume;	}else{		e1.muted=true;		e.innerHRML="x";		document.getElementById("volume").value=0;	}}/*調(diào)整音量*/function Volume(e){	if(e1.muted==true){		e1.muted=false;	}	e1.volume=e.value;}/* 進度信息:控制進度條,并顯示進度時間*/function Progress(){	var p1=document.getElementById("progress");	p1.style.width=(e1.currentTime/e1.duration)*720+"px";	document.getElementById("info").innerHTML=s2time(e1.currentTime)+"/"+s2time(e1.duration);}function s2time(s){	var m=parseFloat(s/60).toFixed(0);	s=parseFloat(s%60).toFixed(0);	return (m<10? "0"+m:m)+":"+(s<10?"0"+s:s);}/* 網(wǎng)頁加載完畢后,把進度處理函數(shù)添加至視頻對象的timeupdate事件中*/window.addEventListener("load",function(){	e1.addEventListener("timeupdate",Progress);});/*給window.onload事件添加進度處理函數(shù)*/window.addEventListener("load",Progress);

實現(xiàn)的功能:播放,暫停,快進,慢進,前進,后退,音量控制,進度條和時間顯示。由此可見通過Audio或Video的屬性和方法可以實現(xiàn)更復(fù)雜的功能。

HTML5,音頻,視頻,嵌入

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持VeVb武林網(wǎng)。


注:相關(guān)教程知識閱讀請移步到HTML教程頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 彭阳县| 赤壁市| 犍为县| 宣威市| 邓州市| 蚌埠市| 天镇县| 镇江市| 金阳县| 柏乡县| 松溪县| 武定县| 邢台县| 油尖旺区| 涡阳县| 崇州市| 河源市| 平南县| 仪陇县| 云安县| 翼城县| 班玛县| 扶沟县| 满洲里市| 巴林右旗| 黄陵县| 光泽县| 宁化县| 德钦县| 咸阳市| 乐亭县| 太仓市| 重庆市| 简阳市| 荥经县| 松原市| 云安县| 略阳县| 平安县| 富裕县| 潮安县|