David Schleef just blogged about his recent improvements to the Streaming Server project. This 100% open source project can be downloaded from Entropy Wave Open Source.
What it is?
GSS is a standalone HTTP server implemented as a library. Its special focus is to serve live video streams to thousands of clients, mainly for use inside an HTML5 video tag. It’s based on GStreamer, libsoup, and json-glib, and uses Bootstrap and BrowserID in the user interface.
GSS comes with a streaming server application that is essentially a small wrapper around the library. This application is referred to as the Entropy Wave Streaming Server (ew-stream-server); the code that is now GSS was originally split out of this application. The app can be found in the tools/ directory in the source tree.
Current features :
- Streaming formats: WebM, Ogg, MPEG-TS. (FLV support is waiting for a flvparse element in GStreamer.)
- Streams in different formats/sizes/bitrates are bundled into a single “program”.
- Streaming to Flash via HTTP.
- Authentication using BrowserID.
- Automatic conversion from properly formed MPEG-TS to HTTP Live Streaming.
- Automatic conversion to RTP/RTSP (Experiemental, works for Ogg/Theora/Vorbis only.)
- Stream upload via HTTP PUT (3 different varieties), Icecast, raw TCP socket.
- Stream pull from another HTTP streaming server.
- Content protection via automatic one-time URLs.
- (Experimental) Video-on-Demand stream types.
- Per-stream, per-program, and server metrics.
- HTTP configuration interface and REST API is used to control the server, allowing standalone operation and easy integration with other web servers.
Posted in products
Tagged browserid, code.entropywave.com, firefox, flash, gstreamer, html5, icecast, json-glib, libsoup, live streaming, live video, mozilla, Ogg, streaming server, theora, video, video on demand, video streaming, video tag, WebM
A nice development milestone reached, the latest version of the E1000 Firmware has been released with some very cool new features -
- Switched to using the gst-stream-server library to handle the HTTP user interface and streaming. This library was originally split out of the E1000 encoder software a few months ago and converted to a standalone open-source project.
- Added a live preview image to the Live Edit tab in the administration interface.
- Added support for encoding and streaming in Flash format. The E1000 includes the OSPlayer open source FLV player, which is used in the public streaming interface if only flash streams are enabled.
- In the Server tab, a new option is available that enables or disables the public HTTP interface. This can be used to prevent unauthorized discovery of the streams that are enabled on a server. This switch does not affect the HTTPS interface, which is always enabled.
- One-time stream URLs are now available and are enabled by default. These URLs are created on request for a given stream, and are valid for 5 seconds. Once a viewer connects to this URL, it is no longer valid. This is used to prevent unauthorized access to streams on the server.
- The E1000 can now be configured to push streams encoded in Flash format to a streaming server using RTMP. This can be configured under the Output tab. Flash authentication is supported.