CodeShop

LSM is a non-commercial cycle of conferences, round tables and practical workshops based on Libre Software and its uses. Its aim is to provide a platform for Libre Software users, developers and stakeholders.

We presented a talk called Apache modules for Adaptive Streaming. And a business model? The following is a short synopsis.

We made h264 and smoothstreaming modules for webservers like Apache, Nginx and Lighttpd under an open source license since 2007. For non-commercial use both modules can be used freely – as license we first used GPL and now Creative Commons. For commercial use we provide a commercial license. Our modules have been used by many sites, from small to big to really big. Further development lead us to Unified Streaming (USP): webserver modules again for Apache, Nginx and Lighttpd – but also IIS5/6/7.

USP streams all formats: HLS (Apple), HDS (Adobe), SS (Microsoft) and DASH on many platforms (Linux/Unix, OSX, Windows) and adds many DRM workflows. USP is only available as commercial license and for some platforms only as binary. This we see as a trend: as the capabilities grow, the license closes.

Therefore, next to an insight in streaming technicalities, central to the talk is the question ‘which business model works best for highly specialized non commodity technical software?’.

Licenses involved:
  • Creative Commons
  • GPL
  • Commercial

This summer not only has the Olympics in London, but also the European Football Championship in Polen and Ukraine and the Tour de France – the worlds’s biggest annual cycling event.

All of these are prime time with massive audiences expected, on TV as well as online – and a lot of content is only available online!

In the Netherlands, the NOS/NPO is responsible for delivery of public, nationwide televised and online sport events to Dutch viewers.

As an indication, the Olympics will have up to 14 LIVE HTTP streams which should be viewable by 150.000 people simultaneously on all possible play-outs going over 150Gbps. For this a new platform based on Unified Streaming (USP) was developed.

The NPO has been using Unified Streaming (USP) since 2010 for several new media projects such as the HLS video stream for UitzendingGemist (catch up tv) on iPhone/iPad. This service provides the public on demand access to recent and archived public TV broadcasts. Secondly, USP is used for Radio events as the Top2000 and the ‘GlazenHuis’.

Features of the the new USP based online platform are:
  • many devices with different capabilities, many play-out formats
  • layered caching of HTTP streams (meeting the > 150Gbps target)
  • content protection and geoip
  • DVR for LIVE streams
  • realtime statistics of streams

The NOS/NPO effort brings the innovative use of existing, well known technologies as HTTP and the latest content delivery formats to the widest Dutch audience possible.

About NOS The Netherlands Broadcasting Foundation (Nederlandse Omroep Stichting, NOS) is the largest news organization in the Netherlands and provides independent and accurate coverage of news, sports and international events – in realtime using multimedia channels as www.nos.nl, radio, (connected) tv, mobile applications, social networks, game consoles and other internet connected devices.

About NPO The Netherlands Public Broadcasting (Nederlandse Publieke Omroep, NPO) is known for television channels Nederland 1, 2, 3 and Radio 1, 2, 3FM, 4, 5, 6 and responsible for nationwide delivery of high quality programming in the areas of culture, education, information and entertainment.

NPO, TNO and WebM

July 16th, 2011

For the Netherlands Public Broadcasting (NPO) we implemented a pilot to gain insight if WebM can be used as alternative for the current H.264 solution (used for instance in uitzendinggemist).

In order to do so an encoding setup was created combined with a study into pro’s and cons of opensource software as platform and webm as a codec.

The pilot has 2 parts: presentation of WebM video content on the internet from a live-stream and as VOD service.

The results and the resulting software (trac+svn) are currently hosted by NPO:


Also, the project documentation has been added to NPO’s knowledge center, set up by TNO:



The study into the pro’s and cons of opensource software as platform and webm as a codec was performed by the Netherlands Organisation for Applied Scientific Research (TNO); the result is available here.


If you’re interested in WebM as technology, please have a look here



The advantage of adaptive streaming technology is that the user’s available network bandwith is measured during delivery and the video quality alters automatically, depending on this bandwith. This allows videos to be made available for end-users with bandwiths for Edge (GSM), UMTS (3G) or WLAN.

The Smooth Streaming exporter is available as plug-in for Rhozet Carbon Coder Single and Serverfarm. System requirement for operation in the CarbonCoder is Version 3.14 or higher. The plugin integrates seamlessly with the Rhozet system environment.

The Smooth Streaming exporter plugin for Rhozet’s Carbon Coder is commercially available. Contact us at sales@code-shop.com for details.

The advantage of adaptive streaming technology is that the user’s available network bandwith is measured during delivery and the video quality alters automatically, depending on this bandwith. This allows videos to be made available for end-users with bandwiths for Edge (GSM), UMTS (3G) or WLAN.

Multibitrate iPhone streaming is a complex process during which a video file has to be divided into several parts, called segments. In addition, these segments must be recorded in a master and sub-playlist. It is these playlists, known as ’.m3u files’ as well as the individual segments that actually make iPhone multibitrate streaming possible.

The iPhone Adaptive Streaming exporter is available as plug-in for Rhozet Carbon Coder Single and Serverfarm. System requirement for operation in the CarbonCoder is Version 3.14 or higher. The iPhone Encoder Plugin integrates seamlessly with the Rhozet system environment.

The iPhone Adaptive Streaming exporter plugin for Rhozet’s Carbon Coder is commercially available. Contact us at sales@code-shop.com for details.

onlinelib

July 17th, 2009

Onlinelib provides audio/video streaming and encoding solutions.

We have created an RTSP to RTMP bridge that converts live audio/video streams from RTSP (e.g. QT Broadcaster and Wirecast) to an Adobe FMS compatible server.

H264 Smooth Streaming

May 29th, 2009

We are adding support for Smooth Streaming to our H264 Streaming Module.. Next to supporting videos encoded by the Microsoft Expression Encoder (VC-1 multi bit rate) we are also adding support for H.264 encoded videos (H.264 multi bit rate) which can be encoded by open-source (X264) software.

Watch our demo of Smooth Streaming H.264!

H264 Compressed Meta-Data

September 20th, 2008

We’ve written this nice Lighttpd plugin mod_h264_streaming which is being picked up by numerous sites. It enables progressive streaming and seeking for H264 encoded videos in Flash.

One of the issues raised is that when a user jumps forward in a long video the time it takes to restart the video at that position takes too long. The reason why this happens is that the Flash player doesn’t support seeking into a video which has not been buffered yet and so the plugin sends a newly patched video file. Unfortunately the meta-data can take up quite a bit of space (say 750KB for a 30 minute video), so when your bandwidth is 150KB/s, the metadata alone would take 5 seconds to download.

There are a few things we can do about this, and one is compressing the metadata. This is a perfectly viable option and supported by most tools (Apple Quicktime, mplayer, etc…). So ahead I went and added this feature to the mod_h264_streaming plugin. After successful testing and seeing the metadata shrink by 50% to 75% I was in a really good mood. This meant the seektime of a 30 minute video would go down from 5 seconds to about 2 seconds! A job well done.

Surprise!

The flash player doesn’t support compressed metadata. Time to talk to your local Adobe representative and issue a feature request!

H264 streaming

May 5th, 2008

As Adobe released a new version of their flashplayer capable of showing h264, we got excited: the quality is really good (much, much better than flash).

But, you need an Adobe server to stream content … and they do not come cheap!

Well, mod_h624_streaming, a plugin for lighttpd – a really fast and performing webserver – can help there.

If you want a demo – please look here (mind you, have the Adobe 9 beta installed :)

It’s open source, so you can add it to your distribution, create an Apache (or other) plugin from it – it’s not hard to do …

Even so, we customized the setup for a few customers in the USA – so if you see some cool high-res streamin’ vids … chances are it’s mod_h264_streaming.

H264 Pseudo Streaming

October 18th, 2007

We’ve been experimenting with H264 video and were missing the much needed ‘seeking’ functionality.

You can watch a demo or read more about it on the wiki.

If you have any questions or comments, feel free to drop us a line.

mod_264_streaming

October 10th, 2007

I’m looking into seeking for h264 files. So far I’ve come to the conclusion that it’s not as simple as mod_flv_streaming (the lighttpd plugin). You can’t just simply seek in a h264 file and pass that data to the flash player. It doesn’t like that it all.

So I’ve been thinking along the lines that a new lighttpd plugin (mod_264_streaming?) needs to be a smarter. I.e. it reconstructs the necessary h264 headers (so-called ‘moov’) and then send the movie data (‘mdat’) starting from the seekpoint.

The thing is: this is quite a bit of work. Everytime somebody seeks in a file the plugin has to parse the original h264 headers, fix up all the offsets and then send the result back.

My guess is that this may work, but at the same time something tells me that there must be a simpler/easier way to achieve seeking.

If anyone has any ideas or links to other articles it’s much appreciated.


References

- What just happened to video on the web?

- Stream h.264 with PHP script?