Microsoft’s H.264 SVC Implementation

Now that we have a basic understanding of how H.264 SVC works, let’s cover how Microsoft chose to implement H.264. As with all codecs, there are many variations of H.264 SVC, and although it is a “standards based” codec, companies often choose to implement them in different ways.

Microsoft partnered with Polycom, HP, and LifeSize to form the Unified Communications Interoperability Forum (UCIF), which was focused on creating specifications and guidelines for common UC protocols. From this partnership, Microsoft also announced that it would be adopting the H.264 SVC technology that Polycom developed. The version of H.264 SVC that Microsoft has adopted supports many different configuration modes; however, Microsoft has chosen to implement only two of these configuration modes in Lync 2013:

• UCConfig Mode 0—Non-Scalable Single Layer AVC BitStream

• UCConfig Mode 1—SVC Temporal Scalability with Hierarchical P

The additional modes are these:

• UCConfig Mode 2q—SVC Temporal Scalability + Quality/SNR Scalability

• UCConfig Mode 2s—SVC Temporal Scalability + Spatial Scalability

• UCConfig Mode 3—Full SVC Scalability (Temporal + SNR + Spatial)

With each mode, a new level of scalability is introduced. Each mode is additive, and in the end you are left with Full SVC Scalability.

Mode 0 essentially means that no scalability is supported. This mode should be supported by all systems that support this type of H.264 SVC Codec. This mode will most likely be important in Interop scenarios in the future. This mode does allow for multiple streams to be sent, but not multiple frame rates per resolution. Table 19.1 shows an example of the Mode 0 layers that would be available.

Table 19.1. H.264 SVC Mode 0 Sample Layers

Image

Mode 1 introduces temporal scaling. This level of scalability starts to introduce some of the “cool” stuff that H.264 SVC can do. With Mode 1, the endpoint can send a single video stream per resolution for multiple frame rates. The receiving endpoint can then decide whether it wants to display that resolution at 30fps, 15fps, or 7.5fps by dropping entire frames of the video sequence. For example, if the highest frame rate sent is 30fps, the receiving endpoint could scale down to 15fps by dropping every other frame it receives. Table 19.2 shows an example of H.264 SVC Mode 1 Layers.

Table 19.2. H.264 SVC Mode 1 Sample Layers

Image

Lync 2013 leverages H.264 SVC UCConfig Mode 1 for video conferencing functionality. There are three more UCConfig Modes that are included in the spec published by Microsoft and Polycom; one would assume that this functionality will be introduced in later releases.

In addition to the flexibility that H.264 SVC provides, Microsoft has also added dynamic Forward Error Correction (FEC). If you are not familiar with FEC, in short, it allows for media streams to be dynamically rebuilt in packet-loss scenarios. This functionality, combined with H.264 SVC, provides room for impressive video quality on any type of network connection.

As you can see, H.264 SVC introduces the flexibility required for many of the new features in Lync 2013. H.264 SVC allows Lync 2013 to enhance the video conferencing quality, and functionality, without increasing the load on the A/V Conferencing Server. By introducing H.264 SVC as the default video codec in Lync Server 2013, Microsoft has also opened the door for many new interoperability scenarios. Because H.264 is the base for many standard video codecs, integration with systems that use a compatible version of H.264 will allow for higher quality and simplified video interoperability scenarios.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset