Inspired by this conversation on Mastodon YouTube hosts 360 videos. Here's one of mine, wandering through the Houses of Parliament. You can drag the video to see all around. If you let YouTube-DL download the "best" version, you'll end up with a video which looks like this: Each lens' view has been horizontally stretched, and then stitched into an over/under view. This is in Google's Equi-angular Cubemap format. Grim! There are two options available to you to get the equirectangular…
Continue reading →
I want to convert YouTube's auto-generated subtitles into a plain transcript. Why is this so hard? This blog post gives a more detailed explanation than my answer to this StackOverflow question. Here's what the subtitles look like when you view a video: And here's what the code which generates those subtitles looks like: 00:00:00.930 --> 00:00:03.080 align:start position:0% and<00:00:01.230><c> now</c><00:00:01.439><c> can</c><00:00:01.709><c> we</c><00:00:01.800><c>…
Continue reading →
This is part of my redecentralisation efforts to liberate my videos from YouTube. MPEG-DASH is a simple method of streaming videos which doesn't require any specialised server software. You convert a high resolution video into a series of smaller resolution videos. You chop each of the videos up into several chunks. As the video plays, your browser then decides which chunk of the video to load next depend on the bandwidth available to it. Easy! Aim From the command line: Upload a video…
Continue reading →
If you've been following this blog, you'll know that Google unjustly shut down my YouTube channel. They've now reinstated it - but I can no longer trust them as custodians of my data. So, here's a quick tutorial on how to download all your videos - and metadata - from YouTube. The Official Way Google offers a "takeout" service which will allow you to package up all your YouTube videos for export. It creates a multi-gigabyte archive - which isn't particularly suitable for hosting elsewhere. …
Continue reading →
In a mixed paradigm environment, how do you ensure content is surfaced which is context specific? By which I mean - how do you make your content serve the user's time-bound constraints? What I'm trying to say is - serendipitous discovery must be restricted based on temporal imperatives. Or, to break it down further, a user may only have a specific amount of time to dedicate to your app; how do you deal with that? In a mobile game, the interface may present the user a choice of "Quick Play"…
Continue reading →
UPDATE! I have reached a settlement with Sky. Update: 16 March, 2011. They have finally paid up! tl;dr Sky News stole my copyrighted work and distributed it without credit or payment. I asked them to pay £1,500. They refused. Full Story During the recent O2 brouhaha I recorded a video showing how the issue could affect people. I deliberately gave it the standard YouTube licence rather than the Creative Commons licence. Later that evening, I was alerted to the fact that Sky News had …
Continue reading →
Sometimes a mobile advert is just so bad that you wonder what drugs the people who commissioned were on. Easy A is new film aimed squarely a the youth market. Perfect fodder for mobile advertising. Cute little advert, doesn't say what it will link to, but other than that, not bad. So let's click through and see what happens. Sweet! YouTube has an excellent mobile optimised site. The ability to share the video on Facebook and Twitter is sure to make this baby go viral. Right? Right? As t…
Continue reading →
I've decided to add a preview of YouTube videos into Dabr, the mobile Twitter service. The code is fairly simple - although I still suck at regular expressions. if (preg_match_all('#youtube.com/watch?v=([_-dw]+)#', $tmp, $matches, PREG_PATTERN_ORDER) > 0) { foreach ($matches[1] as $match) { $images[] = theme('external_link', "http://m.youtube.com/watch?v={$match}", "<img src='http://i.ytimg.com/vi/{$match}/1.jpg' class='twitpic' />"); } } Here's how it looks. A user writes a …
Continue reading →
I haven't seen this mentioned anywhere else. It would appear that the mobile version of YouTube now includes links to QR codes, so you can share the video with your friends. I've only seen this using the Android browser, I'm not sure if it's available on other devices. Browsing http://m.youtube.com/ at the bottom is a new link A link to a QR code Clicking on it takes you to a QR code The QR code It's using the Google Chart API to generate the code. The Googe Chart API in use Will this…
Continue reading →
This blog is XHTML 1.0 Strict. Unfortunately, the code produced by YouTube for embeding their videos isn't. Nor is it compatible with the dotMobi WordPress Mobile Pack. This scrap of code is a WordPress Plugin. it allows me to write something like [youtube id="p5ACl4iBGd0"] The code then outputs either the XHTML 1.0 embeding code or the XHML-MP code which links to the mobile version of the site function youtube_func($attr) { //Get the name of the Wordpress Template being used $name =…
Continue reading →