I recently finished (in terms of features) a major code project, but I'm not happy with the quality of the yet. Besides the usual ways code can be buggy, it's especially easy to crash a program written in C (which can be exploited if the program is available online, as this one probably should be).
RFC 7240's "Prefer: wait" instead of "Timeout" header
I emailed the IETF HTTP group about my timeout header idea, and a few people said that RFC 7240's "wait" preference" does what I want. I'm not entirely convinced that this is what was intended by that spec, but it's close enough. In response, I've updated my Express middleware to support the "Prefer" header and "wait" preference.
HTTP "Timeout" header for requesting resources from the future
I've been participating in MPEG's DASH group, and currently a lot of work has been focused on reducing live streaming latency. The latency problem in DASH is that clients have to poll servers to check for new media segments. If they poll too slowly, it introduces latency, but if they poll too quickly, it increases server load. When MPD's are dynamic, a client needs to poll the server until it finds a new MPD, then request newly available segments, then only after the segment has downloaded enough to start, it can continue playback.
The structure of an MPEG-DASH MPD
The MPEG-DASH Media Presentation Description (MPD) is an XML document containing information about media segments, their relationships and information necessary to choose between them, and other metadata that may be needed by clients.
In this post, I describe the most important pieces of the MPD, starting from the top level (Periods) and going to the bottom (Segments).
Videos as images in HTML
Most web browsers only support a few ancient image formats (mainly PNG, JPEG and GIF), but video formats have improved significantly since those formats were defined. Google is attempting to fix this with their WebP image format, based on VP8. Unfortunately, this only works with Google Chrome and Opera. Since what we want is to encode an image using the advancements in VP8 or h.264, I thought it would be interesting to try encoding single-frame videos and using them as images.