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).

Read more

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.

Read more

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).

Read more

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.

Read more

« Page 6 / 11 »