I'm taking an approach that is fairly general, e.g., for that 2/3rds, and where solving the problem for video clips is just another application.
Roughly, first-cut, my work looks like a new Internet 'search engine', but that has to be only a rough description. That is, while 'search engine' may be the best two word description among widely understood two word descriptions, I don't think that much like a usual search engine can solve the problem. I believe that a solution needs to be a combination of search, discovery, recommendation, curation, and subscription!!!! How 'bout that!
Then there's another point, well connected with your "niche": Trying to provide what is 'most popular' is not promising! I.e., something in a niche is almost by definition not very popular. Or, what is in a niche is in 'the long tail'!
My guess is that we are moving to much more 'specialization' in content so that the fraction of the total content in the long tail and the niches is becoming a much more significant fraction of the total content. So, my 'search engine' is to help people mine this new fraction, the long tail.
How to do that? Well with the problem described, a key concept becomes obvious: Some case of strong 'personalization'!! That is, somehow have to get the user more involved so that the user can better indicate what they want and so that the search engine can, in some useful sense, 'learn' about what the user wants.
I've got the crucial, core, unique 'secret sauce' programmed and now am finishing up the routine parts of, really, just routine, simple Web site construction. And except for the crucial core stuff already done, it's a quite simple Web site. But the routine Web site work has taken me far too long -- those 3000 Web pages of Microsoft documentation of just routine parts of .NET really slowed me down.
Today I'm trying to finish up some work on just a simple session state store: I didn't like what Microsoft offered in ASP.NET, found a bug I wanted to get far away from in part of what they had, so did my own handling of session ID and session state with my own, simple session state store. But my session state store is via TCP/IP in my server farm, and I also need TCP/IP inside my server farm to connect my Web pages to my secret sauce servers. For using TCP/IP, have to build a 'message' service on top of the TCP/IP 'stream' service, so I did that and have used the session state store work to test it.
Then write the rest of the Web pages, load some initial data, and go live.
( To take just one - "Your YouTube series is not competing with other series. It's competing with nobody giving a shit." )