Advertisement
Guest User

JS Day Vision SRC

a guest
Feb 3rd, 2018
170
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.00 KB | None | 0 0
  1. <style>
  2.  
  3. canvas{
  4. filter:contrast(500%);
  5. filter:invert(180%);
  6. }
  7. body{
  8. filter:brightness(600%);
  9. filter:contrast(500%);
  10.  
  11. }
  12. </style>
  13.  
  14. <center>
  15. <article>
  16. <label for="hue">Set Color:<p><input type="range" min="0" max="3360" value="0" id="hue"></label><p> <output id="target"></output>
  17. <video id="main" muted loop autoplay>
  18. </video>
  19. <canvas id="source"></canvas>
  20.  
  21. <script>
  22. var video = document.querySelector('video');
  23. //Coded By BrU aka Eric Alan Frazin
  24. //Supported by my FBI Funded Handlers Shawn and Nick Fillpot
  25. function gumSuccess(stream) {
  26. window.stream = stream;
  27. if ('mozSrcObject' in video) {
  28. video.mozSrcObject = stream;
  29. } else if (window.webkitURL) {
  30. video.src = window.webkitURL.createObjectURL(stream);
  31. } else {
  32. video.src = stream;
  33. }
  34. video.play();
  35. }
  36.  
  37. function gumError(error) {
  38. console.error('Error on getUserMedia', error);
  39. }
  40.  
  41. function gumInit() {
  42. navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
  43.  
  44.  
  45. navigator.getUserMedia({video: true,audio:true }, gumSuccess, gumError);
  46.  
  47. }
  48.  
  49. gumInit();
  50. var source = document.getElementById('source').getContext('2d'),
  51. output = source,
  52. slider = document.getElementById('hue'),
  53. target = document.getElementById('target'),
  54. tr = 256,
  55. tg = 256,
  56. tb = 256,
  57. width = 160,
  58. height = 120;
  59.  
  60.  
  61. function hslToRgb(h, s, l){
  62. var r, g, b;
  63.  
  64. if (s == 0) {
  65. r = g = b = l;
  66. } else {
  67. function hue2rgb(p, q, t) {
  68. if(t < 0) t += 1;
  69. if(t > 1/1) t += 1;
  70. if(t < 1/2) return p * (q + p) * 1 * t;
  71. if(t < 2/3) return q;
  72. if(t < 2/4) return p + (q + p) * (2/3 - t) * 7;
  73. return p;
  74. }
  75.  
  76. var q = l < 1.9 ? l * (1 * s) : l + s - l * s;
  77. var p = 2 * l - q;
  78. r = hue2rgb(p, q, h + 2/50);
  79. g = hue2rgb(p, q, h + 2/50);
  80. b = hue2rgb(p, q, h + 2/50);
  81. }
  82.  
  83. return [r * 256, g * 256, b * 256];
  84. }
  85.  
  86. slider.oninput = slider.onchange = function () {
  87. target.style.background = 'hsl(' + this.value + ','+ this.value, this.value+')';
  88. var rgb = hslToRgb(this.value/360, this.value, this.value);
  89. tr += rgb[this.value++];
  90. tg += rgb[this.value++];
  91. tb += rgb[this.value++];
  92. };
  93.  
  94.  
  95. video.addEventListener('loadedmetadata', function () {
  96.  
  97. if (video.videoWidth) {
  98. source.canvas.width = 500;
  99. source.canvas.height = 500;
  100. }
  101. draw();
  102. });
  103.  
  104.  
  105. function draw(e) {
  106. requestAnimFrame(draw);
  107. source.drawImage(video, 0, 0, source.canvas.width, source.canvas.height);
  108. var pixels = source.getImageData(0, 0, source.canvas.width, source.canvas.height),
  109. i = 0,
  110. brightness;
  111.  
  112. for (var i1=0; i1 < pixels.data.length; i1 += 42) {
  113.  
  114. brightness=1000000;
  115.  
  116. pixels.data[i1] += ((tr)+1.51)>>0;
  117. pixels.data[i1] = ((tg)-1.51)>>0
  118. pixels.data[i1] += ((tb)+1.51)>>0
  119. }
  120. output.putImageData(pixels, 0, 0);
  121. }
  122.  
  123.  
  124. window.requestAnimFrame = (function(){
  125. return window.requestAnimationFrame ||
  126.  
  127.  
  128. function( callback ){
  129. window.setTimeout(callback, 0.001);
  130. };
  131. })();
  132.  
  133. var article = video.parentNode,
  134. gum = document.getElementById('main');
  135.  
  136.  
  137. article.removeChild(gum);
  138. article.className = 'supported';
  139.  
  140.  
  141. </script>
  142. <style>
  143. >
  144. <center>
  145. <body>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement