Youtube content identification technology?

Pedro Moreno and others at Google/Youtube work on it. They use finite-state transducers to recognize sequences of music phone units, similar to phonemes in automatic speech recognition. Check out this article: Eugene Weinstein, Pedro J. Moreno; Music Identification with Weighted Finite-State Transducers, Proceedings of the International Conference in Acoustics, Speech and Signal Processing (ICASSP), 2007. … Read more

How to check if YouTube channel is streaming live

You can do this by using search.list and specifying the channel ID, setting the type to video, and setting eventType to live. For example, when I searched for: https://www.googleapis.com/youtube/v3/search?part=snippet&channelId=UCXswCcAMb5bvEUIDEzXFGYg&type=video&eventType=live&key=[API_KEY] I got the following: { “kind”: “youtube#searchListResponse”, “etag”: “\”sGDdEsjSJ_SnACpEvVQ6MtTzkrI/gE5P_aKHWIIc6YSpRcOE57lf9oE\””, “pageInfo”: { “totalResults”: 1, “resultsPerPage”: 5 }, “items”: [ { “kind”: “youtube#searchResult”, “etag”: “\”sGDdEsjSJ_SnACpEvVQ6MtTzkrI/H-6Tm7-JewZC0-CW4ALwOiq9wjs\””, “id”: { “kind”: … Read more

How to block the annoying “Sign in to YouTube” popup? [closed]

Add the following JavaScript to your browser through an extension (like “User JavaScript and CSS” for Chrome and “Greasemonkey” for Firefox): // SentinelJS is a JavaScript library that lets you detect new DOM nodes const sentinel = function(){var e,n,t,i=Array.isArray,r={},o={};return{on:function(a,s){if(s){if(!e){var f=document,l=f.head;f.addEventListener(“animationstart”,function(e,n,t,i){if(n=o[e.animationName])for(e.stopImmediatePropagation(),t=n.length,i=0;i<t;i++)n[i](e.target)},!0),e=f.createElement(“style”),l.insertBefore(e,l.firstChild),n=e.sheet,t=n.cssRules}(i(a)?a:[a]).map(function(e,i,a){(i=r[e])||(a=”!”==e[0],r[e]=i=a?e.slice(1):”sentinel-“+Math.random().toString(16).slice(2),t[n.insertRule(“@keyframes “+i+”{from{transform:none;}to{transform:none;}}”,t.length)]._id=e,a||(t[n.insertRule(e+”{animation-duration:0.0001s;animation-name:”+i+”;}”,t.length)]._id=e),r[e]=i),(o[i]=o[i]||[]).push(s)})}},off:function(e,a){(i(e)?e:[e]).map(function(e,i,s,f){if(i=r[e]){if(s=o[i],a)for(f=s.length;f–;)s[f]===a&&s.splice(f,1);else s=[];if(!s.length){for(f=t.length;f–;)t[f]._id==e&&n.deleteRule(f);delete r[e],delete o[i]}}})},reset:function(){r={},o={},e&&e.parentNode.removeChild(e),e=0}}}(document); (() => { const isSignedIn = document.cookie.includes(‘APISID=’); if (isSignedIn) return; addStyles(); … Read more