日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

webrtc不支持怎么调用设想吐_关于webRTC中video的使用实践

發布時間:2024/3/26 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 webrtc不支持怎么调用设想吐_关于webRTC中video的使用实践 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

此次demo使用chrome49調試測試

前端在操作視頻輸入,音頻輸入,輸出上一直是比較弱的,或者說很難進行相關的操作,經過我最近的一些研究發現,在PC上實際上是可以實現這一系列的功能的,其實現原理主要是得益于google的webRTC技術。

什么是webRTC

WebRTC,名稱源自網頁即時通訊(英語:Web Real-Time Communication)的縮寫,是一個支持網頁瀏覽器進行實時語音對話或視頻對話的API。它于2011年6月1日開源并在Google、Mozilla、Opera支持下被納入萬維網聯盟的W3C推薦標準[1][2][3]。(來自維基百科)

也就是說webRTC是讓網頁瀏覽器進行實時語音對話或者視頻對話的一系列的解決方案。官方demo:https://github.com/webrtc/samples

這個demo里面實際上功能非常多,關于調用攝像頭我們主要關心的是這個demo,可是當大家把代碼拉下來之后發現非常多東西,我在這里給大家簡單的總結一下,并自己寫上幾個簡單的demo,當然想要關心具體實現功能,或者代碼的也可以看源碼。

如何在網頁中調用攝像頭

首先我們需要實現的就是在網頁中調用到攝像頭進行錄制,假如沒有攝像頭的同學也可以去下載一個繁星伴奏,進行模擬,下載地址:http://fanxing.kugou.com/ac/accompany

我們這里需要用到navigator.getUserMedia這個API,當然在chrome下需要使用兼容前綴即navigator.webkitGetUserMedia

代碼如下:

當前瀏覽器不支持 video直接播放,點擊這里下載視頻:下載視頻

varconstraints={video:true};//設置參數LocalMediaStream

varvideo_element=document.getElementById("video");// if(navigator.getUserMedia){//默認API

navigator.getUserMedia(constraints)

.then(function(stream) {

console.info(stream);

window.stream=stream;

video_element.srcObject=stream;

video_element.src=URL.createObjectURL(stream);returnnavigator.mediaDevices.enumerateDevices();

})

.catch(errorCallback);

}else if(navigator.webkitGetUserMedia){//chrome兼容

navigator.webkitGetUserMedia(constraints,function(stream){//成功獲取后回調

console.info(stream);

window.stream=stream;

video_element.srcObject=stream;

video_element.src=URL.createObjectURL(stream);returnnavigator.mediaDevices.enumerateDevices();

},function(data){//失敗回調

console.info(data)

});

}

我們可以看下代碼,HTML部分很簡單 就是一個video標簽,主要功能的實現在js中可以找到navigator.getUserMedia這個API,通過這個就可以調用當前攝像頭,并且返回流信息。

關于navigator.getUserMedia

提示用戶需要權限去使用像攝像頭或麥克風之類的媒體設備,如果用戶提供了這個權限。

語法

navigator.getUserMedia ( constraints, successCallback, errorCallback );

參數

constraints?:

successCallback中傳入的 LocalMediaStream對象所支持的媒體類型。

successCallback:

當應用中傳遞LocalMediaStream對象時觸發的函數。

errorCallback:

當調用媒體設備失敗時觸發的函數.

其中第一個和第二是都是必須的.

第一個需要傳入想要調用哪種媒體類型,具體就像代碼中定義:

var constraints={video:true};

當然也可以寫多個類型,例如

var constraints={video:true, audio: true};

第二個參數則是調用成功后的回調函數,回調函數本身也有一個參數data返回的則是相關的音頻視頻信息。

通過這個對整個API的使用,把獲取到的流信息stream傳給video標簽的src中即可將視頻信息在網頁中顯示出來。

多個設備的處理

假設現在用戶有多個攝像設備,那我們需要讓用戶進行選擇,又應該如何做呢?

首先我們需要給用戶提供他自己的設備名稱讓他進行選擇,在這里我們需要使用navigator.mediaDevices.enumerateDevices()這個API 因此我們可以這樣寫:

顯示設備信息

視頻輸入設備

總結

以上是生活随笔為你收集整理的webrtc不支持怎么调用设想吐_关于webRTC中video的使用实践的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产一区二区三区在线免费 | 精品一区二区人妻 | 日批免费网站 | 亚洲网址在线观看 | 欧美精品一区在线 | 国产一区二区欧美日韩 | 成年人的免费视频 | 欧美三级在线看 | 在线观看黄色动漫 | 亚洲中出 | 精品人妻伦一二三区久久 | 日韩xxxxxxxxx | 狗爬女子的视频 | 精品一区二区三区免费毛片爱 | 日韩欧美精品一区 | 高清日韩av | 国产黄色av | 青娱网电信一区电信二区电信三区 | 在线免费观看av网址 | 精品综合久久久 | 久久久久夜夜夜精品国产 | 69色视频| 国产精品久久久久久久av | 污污视频在线 | 欧美va视频| 国产精品女优 | 欧美一区二区视频免费观看 | 免费福利av | 国产免费视屏 | 国产又爽又黄无码无遮挡在线观看 | 91尤物视频 | 日韩 欧美 亚洲 | 在线观看色网 | 国产资源一区 | 午夜粉色视频 | 日韩一区二区三区av | 白丝女仆被免费网站 | 亚洲精品久久一区二区三区777 | 色呦呦一区二区三区 | 爱爱视频久久 | 国产精品jizz | 永久免费未满蜜桃 | 国产xxx在线 | 嫩草视频在线 | 男女啪啪av | 亚洲天堂av影院 | 毛片免费全部无码播放 | 91精品国产综合久久久蜜臀图片 | 亚洲人成影视 | 青青视频二区 | 粉嫩av一区二区 | 四虎一国产精品一区二区影院 | 欧美69视频 | 99精品免费在线观看 | 男男play呻吟动漫网站 | 天天久久综合网 | 国产真实偷伦视频 | 亚洲区视频在线观看 | 69视频在线 | 青青草原av | 日韩中文字幕在线观看 | 内地级a艳片高清免费播放 91在线精品一区二区 | 好吊妞视频在线观看 | av无码精品一区二区三区宅噜噜 | 美女撒尿无遮挡网站 | 黄色av电影在线观看 | 成人xxxx| 午夜精品久久久久久久91蜜桃 | www.黄色小说.com | 9久久9毛片又大又硬又粗 | 小毛片网站 | 91影院在线免费观看 | 97精品视频在线 | 亚洲国产黄色片 | 欧美成人高清在线 | 国产一区二区三区自拍 | 国产精品久久久久久久久久久久久 | 99热这里只有精品在线观看 | 中文字幕一区久久 | 日本少妇18p| 777黄色| 秋霞无码一区二区 | 中文字幕欧美日韩 | 免费成人在线观看视频 | 黄av网| av色婷婷| 99热这里只有精品在线观看 | 天天插日日干 | 亚洲v国产 | 麻豆av在线播放 | 亚洲性图视频 | 夜夜嗨aⅴ一区二区三区 | 蜜臀av一区二区三区有限公司 | 天天插夜夜 | 亚洲成人网在线 | 在线中文字幕亚洲 | 中文字幕乱码人妻一区二区三区 | 韩国一级淫片 | 亚洲va天堂va欧美ⅴa在线 |