Add symlink of adapter.js from apprtc to base
Review URL: https://webrtc-codereview.appspot.com/1160004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@3621 4adac7df-926f-26a2-2b94-8c16560cd09d
diff --git a/samples/js/apprtc/index.html b/samples/js/apprtc/index.html
index f338673..f3e68a7 100644
--- a/samples/js/apprtc/index.html
+++ b/samples/js/apprtc/index.html
@@ -7,7 +7,7 @@
<script src="/_ah/channel/jsapi"></script>
<!-- Load the polyfill to switch-hit between Chrome and Firefox -->
-<script src="../base/adapter.js"></script>
+<script src="/js/adapter.js"></script>
<style type="text/css">
a:link { color: #ffffff; }
diff --git a/samples/js/apprtc/js/adapter.js b/samples/js/apprtc/js/adapter.js
new file mode 100644
index 0000000..a7eba0b
--- /dev/null
+++ b/samples/js/apprtc/js/adapter.js
@@ -0,0 +1,97 @@
+var RTCPeerConnection = null;
+var getUserMedia = null;
+var attachMediaStream = null;
+var reattachMediaStream = null;
+var webrtcDetectedBrowser = null;
+
+function trace(text) {
+ // This function is used for logging.
+ if (text[text.length - 1] == '\n') {
+ text = text.substring(0, text.length - 1);
+ }
+ console.log((performance.now() / 1000).toFixed(3) + ": " + text);
+}
+
+if (navigator.mozGetUserMedia) {
+ console.log("This appears to be Firefox");
+
+ webrtcDetectedBrowser = "firefox";
+
+ // The RTCPeerConnection object.
+ RTCPeerConnection = mozRTCPeerConnection;
+
+ // The RTCSessionDescription object.
+ RTCSessionDescription = mozRTCSessionDescription;
+
+ // The RTCIceCandidate object.
+ RTCIceCandidate = mozRTCIceCandidate;
+
+ // Get UserMedia (only difference is the prefix).
+ // Code from Adam Barth.
+ getUserMedia = navigator.mozGetUserMedia.bind(navigator);
+
+ // Attach a media stream to an element.
+ attachMediaStream = function(element, stream) {
+ console.log("Attaching media stream");
+ element.mozSrcObject = stream;
+ element.play();
+ };
+
+ reattachMediaStream = function(to, from) {
+ console.log("Reattaching media stream");
+ to.mozSrcObject = from.mozSrcObject;
+ to.play();
+ };
+
+ // Fake get{Video,Audio}Tracks
+ MediaStream.prototype.getVideoTracks = function() {
+ return [];
+ };
+
+ MediaStream.prototype.getAudioTracks = function() {
+ return [];
+ };
+} else if (navigator.webkitGetUserMedia) {
+ console.log("This appears to be Chrome");
+
+ webrtcDetectedBrowser = "chrome";
+
+ // The RTCPeerConnection object.
+ RTCPeerConnection = webkitRTCPeerConnection;
+
+ // Get UserMedia (only difference is the prefix).
+ // Code from Adam Barth.
+ getUserMedia = navigator.webkitGetUserMedia.bind(navigator);
+
+ // Attach a media stream to an element.
+ attachMediaStream = function(element, stream) {
+ element.src = webkitURL.createObjectURL(stream);
+ };
+
+ reattachMediaStream = function(to, from) {
+ to.src = from.src;
+ };
+
+ // The representation of tracks in a stream is changed in M26.
+ // Unify them for earlier Chrome versions in the coexisting period.
+ if (!webkitMediaStream.prototype.getVideoTracks) {
+ webkitMediaStream.prototype.getVideoTracks = function() {
+ return this.videoTracks;
+ };
+ webkitMediaStream.prototype.getAudioTracks = function() {
+ return this.audioTracks;
+ };
+ }
+
+ // New syntax of getXXXStreams method in M26.
+ if (!webkitRTCPeerConnection.prototype.getLocalStreams) {
+ webkitRTCPeerConnection.prototype.getLocalStreams = function() {
+ return this.localStreams;
+ };
+ webkitRTCPeerConnection.prototype.getRemoteStreams = function() {
+ return this.remoteStreams;
+ };
+ }
+} else {
+ console.log("Browser does not appear to be WebRTC-capable");
+}
diff --git a/samples/js/base/adapter.js b/samples/js/base/adapter.js
index 4294f34..a7eba0b 100644
--- a/samples/js/base/adapter.js
+++ b/samples/js/base/adapter.js
@@ -58,7 +58,7 @@
// The RTCPeerConnection object.
RTCPeerConnection = webkitRTCPeerConnection;
-
+
// Get UserMedia (only difference is the prefix).
// Code from Adam Barth.
getUserMedia = navigator.webkitGetUserMedia.bind(navigator);