Multi-stream Encode

Nov 2008

Multi-stream encode is a very useful feature in a lot of applications. It can be seen to be used in surveillance servers which are normally PC systems with multiple analog video inputs connected to them. The system performs multiple stream encoding and saves the compressed bitstreams to hard drive.

Another application is in a SlingBox type application. I am sure it has happened to many SlingBox users with family that while viewing TV remotely, the channel is switched by family member at home. With multi-stream encode, you can view one channel while your family member views another.

Multi-stream encode doesn't necessarily mean multiple video sources. To support different capabilities of different decoding devices, it is useful to be able to encode the same content with different settings. One stream can be encoded at 480x320 to decode with a mobile device later. Another stream can be encoded at 720x480 for viewing it on a PC or TV. Any video conferencing system that supports SmartPhones for instances may find this very useful.

In a high definition surveillance camera system, multi-stream encode also allows individual user to view different portions of the high definition image. One user for instance can perform electronic pan, tilt and zoom on their smartphone without affecting another user's view.

Multi-stream encode is often performed by a PC system with hardware acceleration today. This is a very expensive solution. EyeLytics H264 Encoder is a multi-channel encoder that can perform multi-stream encode without connecting to an expensive PC. It achieves multi-channel by time multiplexing. The context of each stream is stored separately. After encoding each frame, the whole context is switched from one stream to another. This includes switching of the reference frames, QP, image resolution, frame rate and video source.

Most designers/engineers don't think about using multi-stream encoding in their products as it is considered expensive and overkill. However, with EyeLytics H264 Encoder making multi-streaming so cost effective, may be you should think about how that can be incorporated into your product!!