annotations – Data Horde https://datahorde.org Join the Horde! Wed, 27 Jul 2022 09:37:36 +0000 en-US hourly 1 https://wordpress.org/?v=6.5 https://datahorde.org/wp-content/uploads/2020/04/cropped-DataHorde_Logo_small-32x32.png annotations – Data Horde https://datahorde.org 32 32 The History of Invidious https://datahorde.org/the-history-of-invidious/ https://datahorde.org/the-history-of-invidious/#comments Tue, 01 Sep 2020 11:57:39 +0000 https://datahorde.org/?p=1335

Invidious is an alternative front-end to YouTube.

It lets you load YouTube videos in a lightweight, open source, free software interface with no ads and without your browser loading Google trackers.

Or at least, it did. The main Invidious instance is closing down, and its only developer is leaving the project forever.

But more on that later. We need to go back in time.

Terminology note: When I write "Invidious", I am referring to the open source code that anyone can run. There are several public hosted Invidious instances. If I am instead referring to the main instance, invidio.us, then I will make that clear. Only the main instance is deliberately choosing to shut down.

hooktube

HookTube

Before Invidous was HookTube. HookTube was pretty much the same idea from a user perspective, but it was not open source and it used the YouTube API instead of scraping the site. HookTube survived 18 months before it was served a shutdown notice from YouTube’s legal department at some point in 2018. The site still exists, but it now just embeds YouTube, which provides none of the desirable privacy protections. After this shutdown, the site has been altered to advertise the site owner’s various, vaguely fascist "news" sites. It’s not really worth visiting.

CloudTube

Around the time that it closed down, I was using HookTube for my own viewing, and I was very annoyed that it was gone. I quickly read up on the YouTube APIs and started making my own site. Of course mine too would be served a shutdown request as well at some point in the future, but I had a theory to hopefully avoid that: make it open source. If my site was forced to close, anybody would still be able to use my work by running their own copy. I called my site CloudTube.

On July 18th, 2018, I opened CloudTube to the public and announced it on r/privacy. I had two major features up my sleeve that would make the site better than HookTube: subscriptions, and 1080p+ video.

Omar

On the comments of that post was omarroth, which was my first encounter with him. We had a conversation in PMs about his site, Invidious. Unlike CloudTube, Invidious got all of its data by scraping YouTube, which appears to make it impervious to legal requests for reasons that I don’t understand. We discussed how Invidious exposes an API to allow other services to easily extract data from YouTube, too. This is how I first heard of Invidious. Shortly afterwards, I rewote CloudTube to use the Invidious API.

Both of our sites grew, each offering slightly different features. CloudTube remained the only frontend to have 1080p+ playback. Invidious had instant subscription loading.

Omar and I continued to collaborate, particularly when we worked together on the YouTube annotations archive, which ended up being a truly unbelievable success. Our relationship was a purely professional one, though. I never found out a single thing about him as a person. To this day, I have no idea how old he is, whether he has a job, or even what his time zone is.

As 2019 continued, his presence in the project discussion chatrooms dwindled until it became nonexistent, as did his work on adding new features to Invidious. I simply assumed that he was extremely busy with other things in real life, or just wanting to spend time elsewhere. After all, having a successful project does not define you as a person. (Or at least I hope it doesn’t. Ponder that.)

And then it was 2020. Omar’s presence was zero. Radio silence, apart from showing up in the chatroom around once a month to answer one question and then disappear. I don’t blame him for this. I’m just documenting the history.

Announcement

And then finally, August 2020. This announcement: Stepping Away From Open Source

What does this mean for the future of Invidious?

Instances

While the main instance is shutting down, Invidious is open source and other people can and do host their own instances of it. Being able to access the software should not become a problem.

http://invidio.us/ currently offers redirect to alternative instances

Development

Omar was the only developer on Invidious. This could partially be attributed to the fact that Invidious is written in Crystal, a considerably less popular language than things like Node and Python. There are Crystal developers out there, but certainly the use of Crystal will be a barrier to trying to get new developers on to the project.

I have not seen a single other person in the Invidious chatroom that knows Crystal in my two years of participating there. I believe I have read every message since I joined.

Having a developer is important since YouTube updates its interface every couple of months, requiring adjustments to get scrapers to work again. Next time there is one such update, it is very possible that Invidious may become unusable, and nobody will volunteer to repair it.

To some degree, this has already begun to happen.

API

Invidious’s API is used to power other projects like CloudTube, and FreeTube (which I’d love to write more about, but perhaps not in this post.)

If Invidious dies, then so does everything that relies on it.

FreeTube is undergoing a rewrite that will add alternatives to the Invidious API for all extractors. For CloudTube, I’ve talked about it a little on my blog here,, but I intend to follow this up with another post when I have more to announce about the future of CloudTube. I use CloudTube myself, and I would like to keep it running even if just for my own sake, so I hope that the future will be bright.

Data

You’re on Data Horde, a digital archiving blog. In what way does Invidious relate to digital archiving?

Well, finally some good news: not all that much. Invidious does not save videos, so apart from user settings and subscriptions, both of which are private, I do not believe there is anything stored by Invidious that we need to scramble to archive. The results of the 2019 annotations archive are safe and sound on archive.org.

This article is less about digital archiving and more about analysing the life of a service that a lot of people around the data community will miss.

The future

Alternatives to Invidious and ways to move forward from here will be discussed in the future in another post, either here on Data Horde, or on my own personal blog, https://cadence.moe/blog.

Thanks for reading.

— Cadence [they/them]

]]>
https://datahorde.org/the-history-of-invidious/feed/ 3
Invidious Shutting Down https://datahorde.org/invidious-shutting-down/ https://datahorde.org/invidious-shutting-down/#comments Sun, 30 Aug 2020 21:49:28 +0000 https://datahorde.org/?p=1323 So, you remember when we wrote about annotations? Well, the site we have them stored on is going down, namely invidious, the open-source YouTube frontend.

Omar, the person running it, has admitted that he’s been feeling some burnout. The problem now is that we have a big project that no longer has anybody to do maintenance work.

This is a bit of a problem since that’s where most of the annotations are. I personally don’t think the annotations themselves are going away just yet when this happens, given that there are a few other instances, such as the one at Snopyta. this could be a problem because if somebody doesn’t take up the reins soon, the annotations could be very much @#$%ed. So if you’re willing, give it a go!

– glmdgrielson

]]>
https://datahorde.org/invidious-shutting-down/feed/ 1
Post-it Notes: Saving YouTube’s Video Annotations https://datahorde.org/post-it-notes/ https://datahorde.org/post-it-notes/#respond Wed, 15 Jan 2020 20:00:00 +0000 YouTube took a decision In late 2018 to discontinue its video annotations feature. These were vital in the era before closed captions were available, not to mention unique in the interactivity they provided. Over the next few weeks, volunteers from across the internet would rush to rescue these video annotations. Below are some of their stories…

So I’m looking around and I find an automatic level of Yoshi’s Island on YouTube by some guy –wait, no, Some Guy. I follow him for a good while. There’s a minor crisis when one of the features of his videos is announced to be discontinued: YouTube annotations. This was how he delivered commentary. Those going away would be a bit of a sticking point.

Screenshot of Some Guy playing through Super Mario World, here video annotations are used to provide text-based commentary.

Flash forward to about a year later. He’s now using VideoPad and griping about the inability to go back and fix his typos (of which there are about 400 as of this current writing). A new project is started for a SMW hack called Magical Crystals. But there’s an ominous note in the description: annotations are going to completely disappear. I of course took this news spectacularly well. And by that I mean I have a backup of all of his videos on a flash drive.

I opened up youtube-dl and got six channels in their entirety out of fear: the previously referenced SomeGuy712x, PinkKittyRose, qzecwx which I’m surprised I remembered how to spell, Shinryu, Kit, and SuperMetalSonic360. It was only after doing that that I realized I was wasting time and storage space. Good job, me.


I then opened up a repository collecting various channels’ worth of annotation data, which you can find here. I looked around for other efforts to save annotations. (This is the only reason I have any sort of social media, namely a Reddit account, by the way.) And that is when I found the Discord server now known as the Internet Trash Heap. They had a worker to find and archive annotation files. I naturally ran three of them. We saved 1.4 billion videos worth. (Yes, I did have to look that figure up.)

In the end, they now survive on Invidious, thanks in part to my only merged PR. I feel a certain level of pride about this. Certainly why Fukkireta brings back memories for me.

Screenshot of the legendary Fukkireta upload, a hallmark of annotation-bombing. No longer works on YouTube, but can be viewed in Invidious.

– glmdgrielson


Over the past year, a lot of progress has been made in restoring YouTube annotations.

When YouTube removed annotations on January 15, 2019, they removed the XML data for them, but not the code needed to render them. Because of this, I wrote a Firefox extension called AnnotationsReloaded, which replaced the response to the request for annotation data with the archived data.

tech234a's Annotations Reloaded plugin, available as a Firefox extension

This worked until YouTube removed the rendering code from their player, which had started to break in August and was almost completely gone by the end of September. Because of this, glmdgrielson, afrmtbl, myself, and others began to work on re-implementing annotation rendering with new JS code. This code is now used in Invidious and in a new browser extension, also named Annotations Restored.

Also, an API has been added to Invidious for retrieving annotation data. A Reddit user by the name of Archivist has also collected some YouTube metadata, so we may be able to further expand the collection of data available on the API in the future.

– tech234a


The strange thing about YouTube’s annotation removal was that it was unnatural. So unnatural in fact, that even a year later the annotation switch in the YouTube player is still there.

General opinion at the time was either neutral, or in favor of the removal. People considered annotations to be a relic, which had served its purpose. Much like the removal of the video responses feature, the community celebrated the removal of annotations, bidding farewell to an outdated and frequently abused feature.

Yet it would seem that behind that vocal cheering was silent weeping… That common silence is strangely what brought us all together, which is kind of ironic when you think about how annotations themselves were at one point an alternative to comments. You could use annotations to connect channels or videos, many collabs often did.

A screenshot from "What if the Earth were Hollow", a collab between Minute Physics and Vsauce, linked through a video annotation.

The degree of connectivity between annotations was astounding. Back in January of 2019 while trying to make a tool of my own for gathering the video annotations, I started on a list of chuggaaconroy videos and ran a crawl from annotation link to annotation link. I was able to scan maybe upwards of 100 thousand videos. Unfortunately, I was not able to grab these, due to some kinks in the program. Still, with what we did end up salvaging I’m fairly certain it’s possible to see that interlinkage.

77804 links crawled, you'll have to take my word for it that it was eventually in the hundred thousands...
This is sadly the best screenshot I could find, but believe me I saw 6 digits, you’ll have to take my word for it.

So in fact, those of us freaking out in that large web of videos all knew each other, maybe like neighbors, we just hadn’t met yet… Funny enough my own biggest contribution was perhaps bringing some publicity to the whole endeavor.


The last few days remaining… It’s January, my efforts seem too insignificant and I’m not convincing anyone to join me. All seems lost…

In a shocking turn of events I managed to hit the jackpot with a certain post I made on Reddit. It was just a set of tools I’d made so people could back things up locally or on the WayBackMachine. Not my finest work to say the least, with me actually messing up the .exe versions. Nonetheless, I was able to stir much discussion in the comments helping a lot of people -myself included- find out about several independent archiving efforts, including the group who would later go down in history as the Internet Trash Heap.

That thread as far as I’m concerned is a treasure in its own right, and even if the actual topic that post was about is no longer relevant it really reflects the zeitgeist of those anxious days.

I’m glad to report those are just pleasant memories now…

– The Mad Programer


I, unfortunately, did not contribute much directly to archiving annotations. I first found out annotations were going to be removed completely from a tweet by Neil Cicierega about how he was editing the descriptions of an interactive video project he made so that the project would work without annotations.

Being someone who already cared about loss of digital heritage, I was quite worried about all the information which would surely go away. I tried in vain to beg YouTube via social media, but obviously this didn’t do anything. However, I did find the Discord server dedicated to mitigating this problem by gathering up all the annotations before they could be deleted.

{
  "batch_count": 231336,
  "batch_finished": 231336,
  "batch_remaining": 0,
  "content_size": 477980701872,
  "estimated_video_count": 2313360000,
  "estimated_video_finished": 2313360000,
  "estimated_video_remaining": 0,
  "worker_count": 1674,
  "worker_active": 43
}

In the end, while not all annotations could be grabbed, the project was still able to scan billions of videos and thus saved a sizable portion of them, especially ones from popular channels. While I don’t especially miss the feature (though YouTube hasn’t really added anything new which could replace their functionality), I am glad that this chunk of Internet history was not lost forever.

-A.S.t.R.I.

]]>
https://datahorde.org/post-it-notes/feed/ 0