webrtcsupport
Advanced tools
Comparing version 1.1.0 to 1.2.0
// created by @HenrikJoreteg | ||
var prefix; | ||
var isChrome = false; | ||
var isFirefox = false; | ||
var ua = window.navigator.userAgent.toLowerCase(); | ||
// basic sniffing | ||
if (ua.indexOf('firefox') !== -1) { | ||
if (window.mozRTCPeerConnection || navigator.mozGetUserMedia) { | ||
prefix = 'moz'; | ||
isFirefox = true; | ||
} else if (ua.indexOf('chrome') !== -1) { | ||
} else if (window.webkitRTCPeerConnection || navigator.webkitGetUserMedia) { | ||
prefix = 'webkit'; | ||
isChrome = true; | ||
} | ||
@@ -24,12 +18,16 @@ | ||
var AudioContext = window.webkitAudioContext || window.AudioContext; | ||
var supportVp8 = document.createElement('video').canPlayType('video/webm; codecs="vp8", vorbis') === "probably"; | ||
var getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.msGetUserMedia || navigator.mozGetUserMedia; | ||
// export support flags and constructors.prototype && PC | ||
module.exports = { | ||
support: !!PC, | ||
dataChannel: isChrome || isFirefox || (PC && PC.prototype && PC.prototype.createDataChannel), | ||
support: !!PC && supportVp8 && !!getUserMedia, | ||
supportRTCPeerConnection: !!PC, | ||
supportVp8: supportVp8, | ||
supportGetUserMedia: !!getUserMedia, | ||
supportDataChannel: isChrome || isFirefox || (PC && PC.prototype && PC.prototype.createDataChannel), | ||
supportWebAudio: !!(AudioContext && AudioContext.prototype.createMediaStreamSource), | ||
supportMediaStream: !!(MediaStream && MediaStream.prototype.removeTrack), | ||
supportScreenSharing: !!screenSharing, | ||
prefix: prefix, | ||
webAudio: !!(AudioContext && AudioContext.prototype.createMediaStreamSource), | ||
mediaStream: !!(MediaStream && MediaStream.prototype.removeTrack), | ||
screenSharing: !!screenSharing, | ||
AudioContext: AudioContext, | ||
@@ -39,3 +37,4 @@ PeerConnection: PC, | ||
IceCandidate: IceCandidate, | ||
MediaStream: MediaStream | ||
MediaStream: MediaStream, | ||
getUserMedia: getUserMedia | ||
}; |
@@ -6,7 +6,10 @@ // Once node.js gains a robust module integrating WebRTC that can | ||
support: false, | ||
supportRTCPeerConnection: false, | ||
supportVp8: false, | ||
supportGetUserMedia: false, | ||
supportDataChannel: false, | ||
supportWebAudio: false, | ||
supportMediaStream: false, | ||
supportScreenSharing: false, | ||
prefix: undefined, | ||
dataChannel: false, | ||
webAudio: false, | ||
mediaStream: false, | ||
screenSharing: false, | ||
AudioContext: undefined, | ||
@@ -16,3 +19,4 @@ PeerConnection: undefined, | ||
IceCandidate: undefined, | ||
MediaStream: undefined | ||
MediaStream: undefined, | ||
getUserMedia: undefined | ||
}; |
{ | ||
"name": "webrtcsupport", | ||
"description": "Browser module to detect support for webrtc and extract proper constructors.", | ||
"version": "1.1.0", | ||
"version": "1.2.0", | ||
"author": "Henrik Joreteg <henrik@andyet.net>", | ||
@@ -6,0 +6,0 @@ "browser": "index-browser.js", |
@@ -29,6 +29,10 @@ # webrtcsupport | ||
support: // boolean whether basic WebRTC support exists | ||
dataChannel: // boolean whether WebRTC data channels are supported | ||
supportRTCPeerConnection: // boolean whether basic support for RTCPeerConnection exists | ||
supportVp8: // boolean guess whether VP8 is supported by the browser | ||
supportGetUserMedia: // boolean whether getUserMedia is supported by the browser | ||
supportDataChannel: // boolean whether WebRTC data channels are supported | ||
supportWebAudio: // boolean whether WebAudio API is supported | ||
supportMediaStream: // boolean whether MediaStream is supported | ||
supportScreenSharing: // boolean guess of whether screensharing is supported, | ||
prefix: // returns browser prefix (either moz or webkit for now) | ||
screenSharing: // boolean guess of whether screensharing is supported, | ||
webAudio: // A support for web audio API | ||
AudioContext: // the audio context constructor from the web audio API | ||
@@ -38,2 +42,3 @@ PeerConnection: // constructor for creating a peer connection | ||
IceCandidate: // constructor for ice candidate | ||
getUserMedia: // getUserMedia function | ||
} | ||
@@ -40,0 +45,0 @@ |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
8501
97
54