The 2024 Wheel Reinvention Jam just concluded. See the results.

Annotation features?

I have not had a chance to try MotionBox yet but since people seemed to be interested, I tweeted out the Patreon in the hopes that it will get some more traction!

Anyway, one suggestion I had apropos of nothing was that you might want to specify some kind of file format or HTML tag extension or something for your browser so time-code links could be read directly by it. Ie., right now on the Handmade Hero Episode Guide (example) there are those sidebar links, and it seems like that would be something that would be great to have automatically read and understood by the video browser for quick jumping around? So it seems like you could define some kind of format for that, and then pages that cared about having additional features enabled in MotionBox could just embed those codes in their HTML or something?

- Casey
And actually, I guess now that I think about it, this feature could be very useful for publishing in the sense that we could just put up a handmadehero.org/motionbox.html or something where that page just has all the episode guide information baked into a single HTML, so you can have a nice table-of-contest-plus-jumpable-annotation experience?

Etc., etc.

I mean basically what I'm saying is that since video browsing seems like a good idea, might as well have a format to create TOCs and jump lists and stuff that is native to MotionBox so that it can provide good textual cues everywhere?

- Casey
That sounds interesting.

I'd like to suggest that existing formats already exists that might solve this, for instance it is my impression that most podcasting relies on RSS feeds for updates. If I recall correctly, RSS 2.0 can be extended; so the basic functionality could just be simple RSS, and we could extend the spec a little if anything was particularly interesting to add for Handmade Hero <-> MotionBox interop.
cmuratori
I have not had a chance to try MotionBox yet but since people seemed to be interested, I tweeted out the Patreon in the hopes that it will get some more traction!

Thank you for that Casey \o/ !

cmuratori
it seems like that would be something that would be great to have automatically read and understood by the video browser for quick jumping around? So it seems like you could define some kind of format for that, and then pages that cared about having additional features enabled in MotionBox could just embed those codes in their HTML or something?

So, I would like to define an open standard for video sources. You could view that as an equivalent of HTML dedicated to videos. For a while I thought about JavaScript or Python. But the more I think about it the more I want to avoid that for performance and scalability reasons. So I'm leaning toward some kind of extended XML. After all it's just video data, so it should be extremely simple and dumb.

This would enable cool things like video mirrors, linked data or *annotations* (I suppose you're referring to markers on the video timeline). Also video tracks are only one part of the equation. The goal is to define complete backends and wrappers for existing video platforms on the Internet, avoiding web clutter and accessing the resources directly.

That being said I'm currently focused on communication / torrent streaming.

Edited by Benjamin Arnaud on
revivalizer
That sounds interesting.

I'd like to suggest that existing formats already exists that might solve this, for instance it is my impression that most podcasting relies on RSS feeds for updates. If I recall correctly, RSS 2.0 can be extended; so the basic functionality could just be simple RSS, and we could extend the spec a little if anything was particularly interesting to add for Handmade Hero <-> MotionBox interop.

RSS might be too limited for what I want to do. That being said, interoperability between video and web browsers is important.
In my opinion a markup language would be a better fit. It would also enable non-coders to join the Motion Freedom effort :-D.
I also thought about linked data but I find it generic and limited. I'm not sure about all this yet.

Edited by Benjamin Arnaud on
Do you currently support the Metalink standard? The latest ratified version supports multiple sources, torrent links and other advanced downloading features like resume support and error checking. It is part of the web standard.

The MKV format has built-in support for subtitles, which could be used for annotations. It has support for DVD/Blu Ray style menus, linking to external MKV and MKA files, internal time codes and other advanced features.

I am not suggesting you try to force every site to use it, but you could use it as an example to create your custom format. MKV is binary only, which hurts non technical users. Of course writing a program that translate from a user friendly format to it isn't extremely hard.

XML is just bad. It looks painful to normal users.
BillDStrong
Do you currently support the Metalink standard? The latest ratified version supports multiple sources, torrent links and other advanced downloading features like resume support and error checking. It is part of the web standard.

Ok, I would be interested in supporting this but mostly to enable direct access to the given video resources. From a video browsing perspective a Metalink would be a playlist. As I'm interested in supporting open search to increase video resources access.

BillDStrong
The MKV format has built-in support for subtitles, which could be used for annotations.

MKV is a specific format and a video source should be format agnostic. That means that a given source might contain different formats for different scenarios.

BillDStrong
XML is just bad. It looks painful to normal users.

I find markup languages being clear and accessible, they are both readable and limited. On the web I would argue that when you stick to HTML + CSS you stay out of trouble. So, why not coming up with an HTML equivalent for video playlists ? Makes sense to me.

Edited by Benjamin Arnaud on
bunjee


BillDStrong
The MKV format has built-in support for subtitles, which could be used for annotations.

MKV is a specific format and a video source should be format agnostic. That means that a given source might contain different formats for different scenarios.


That's correct. That's why I suggested to look at how they do it, as a basis for whatever you choose to create.

bunjee
BillDStrong
XML is just bad. It looks painful to normal users.

I find markup languages being clear and accessible, they are both readable and limited. On the web I would argue that when you stick to HTML + CSS you stay out of trouble. So, why not coming up with an HTML equivalent for video playlists ? Makes sense to me.


I said XML is bad, not markup languages. Markup is useful for programmers and non programmers alike. HTML isn't great, but is simple enough that a lot of people can use it. More important, there are a large number of tools that can convert to HTML, without the extreme verboseness of XML. There are other choices that could also be used, such as Markdown or Json. But XML really isn't human readable. It is just bad from many aspects.


Edited by Bill Strong on
BillDStrong
Markup is useful for programmers and non programmers alike. HTML isn't great, but is simple enough that a lot of people can use it.

Exactly, I guess I should drift away from XML and propose a simple HTML alike markup.
I suppose you could use the widely supported .m3u8 format for playlists and use #EXTINF entries to point to a some kind of subtitle format or another for the annotations themselves, with that format extended as needed.

Miblo has also been working on a dedicated annotation markup language, so he might be able to chip in with ideas.

Edit: I do like Casey's idea of using a kind of Microformat that you could put in your web page so that MotionBox can automatically pick up annotations. Either that or a mb-annotations meta tag in the headers pointing to an annotation file, perhaps?

Edited by Jeroen van Rijn on
Kelimion
I do like Casey's idea of using a kind of Microformat that you could put in your web page so that MotionBox can automatically pick up annotations. Either that or a mb-annotations meta tag in the headers pointing to an annotation file, perhaps?

Yeah, sounds like a really good idea. Also it would make it easier to convert the existing HMH annotations.
I also haven't been able to try out MotionBox yet (until it arrives on Linux), but it seems like it could become the ideal desktop annotations player / browser, both in terms of what it does and its ethos.

The annotation markup language Jeroen mentioned is spec'd out here (with just the [ref] node still needing to be fully worked out). As you'll probably gather, it's designed to be closely tied in to the Handmade.Network – BBCode-style, category-, project- and member-markers – but perhaps it would only need to be extended slightly, if at all, to make it suitable as a general purpose markup across other networks / communities / sites. One big thing HMML is missing at the moment is support for multiple languages, which I imagine some networks would need to support, and it also doesn't (yet?) support multiple videos per "episode". However, I have been finding it pleasant to write for extended periods of time (e.g. this ~5 hour annotation session from the other day), so it could form a reasonable basis for MotionBox's general purpose annotation markup.
Miblo
As you'll probably gather, it's designed to be closely tied in to the Handmade.Network – BBCode-style, category-, project- and member-markers – but perhaps it would only need to be extended slightly, if at all, to make it suitable as a general purpose markup across other networks / communities / sites.

This is interesting Miblo. As you pointed out I'm looking for a general purpose design. I want to design an HTML equivalent dedicated to video sources, with a focus on performance and usability. In that context I suppose annotations should be standard. If you are interested maybe we could work on the specification together. I would like to do a first draft pretty soon.

As for the linux version, some cool folks are already helping.

Edited by Benjamin Arnaud on