A Los Angeles broadcaster uses a simple method to monitor data integrity in transport streams.
This discussion focuses on a signal chain where sound and picture live in a transport stream as it moves from studio to relay point to transmitter. This transport stream may travel as DVB-ASI or SMPTE 310M on copper or fiber, or perhaps through an IP network via paths as diverse as the public Internet or private IP channels.
In the real world, the transport stream often must survive through a fairly complex path. This article looks at one example: the signal chain that runs from the Los Angeles-based studios of KJLA, KVMD and KXLA to their respective transmitter sites.
From A to a distant Z
All three stations are operated from KJLA's main studios in West Los Angeles near the campus of UCLA. The KJLA transmission facility is located atop Mount Wilson, while the DTV transmitter supporting KVMD is located at Snow Peak, nearly 100mi to the east. The KVMD transport stream is multiplexed with KJLA and delivered by microwave to Mount Wilson. From there, the path consists of a microwave link to a repeater at Blue Mountain and a final link to the KVMD transmitter at Snow Peak.
This complex path offers great potential for signal loss or data integrity impairment. And if trouble occurs, access to the Blue Mountain repeater site is arduous even in good weather.
Ken Brown, chief engineer of KJLA, was looking for some way to monitor each section of this complex path so he could tell when and which part of the path failed. Much of the test equipment used in monitoring and maintaining transport streams focuses on the original construction of the stream. These instruments are superb analysis tools for looking at the performance of encoders and multiplexers. The first question becomes, “How suited are they to the task of fault finding in a signal chain?”
One possible monitoring solution is to think of the issue as a data integrity problem. The assumption was made that the studio would output a properly constructed MPEG signal. The goal is to deliver that signal, ideally with perfect data integrity, to the desired transmitter. In addition, an important system component is to be able to identify if and where any failures occur.
By its very nature, MPEG compression is resilient and tolerates a certain degree of signal loss or corruption. Especially critical packets are frequently repeated, so the loss of a packet is seldom catastrophic. The effect of data corruption is therefore dependent upon the specific piece of data that is corrupted. The random nature of atmospheric impairments to microwave links suggests that some faults would be detected while others would not.
Using a page from the SDI world, it seemed logical to introduce checksum or CRC packets into a transport stream. The system calculates a checksum across a group of data packets. By inserting a checksum (or better, a CRC packet) 10 or 20 times per second, it becomes straightforward to identify when an error occurs at any downstream point.
This proved to be a successful technique to ensure data integrity. And because it operated independently of the content itself, the analysis does not require any prior knowledge of the content being transmitted. In fact, as long as the packet construction adheres to the transport stream specification, this technique also works with encrypted or scrambled data.
This system works by removing one of the null packets and replacing it with a checksum packet. Using null packets, which are already present in some quantity, allows the carriage of the checksum without affecting the stream's bandwidth. The checksums are inserted at an approximate 10Hz rate. This means that over the course of a second, data packets are segregated into 10 distinct blocks, separated by checksum packets. Each checksum packet contains the computed checksum and CRC for all of the data packets since the previous checksum. What emerges at the far end of the link is the original material plus the checksum information.
At a monitoring point, the same checksum and CRC algorithm is applied to the incoming data. When a checksum packet arrives, it is compared to the local calculation. Identical results indicate perfect data integrity for that set of packets, but if the local calculation is different, then there is corruption somewhere in that set of packets. This approach provides an unambiguous answer about data integrity.
In addition to testing the checksums at the ultimate destination, it is also possible to break a path into sections that can each be tested independently. This capability can be achieved by, at each relay, calculating the incoming checksum to test the incoming integrity, then calculating a new checksum that is inserted at the output. In this way, the newly inserted CRC packet contains the history of the upstream links. The entire history of each link in the path is therefore accumulated as the signal propagates from point A to B to … Z.
Hopping to success
To test the system over a real-world STL path, a CRC inserter was installed at the studio and at each relay/repeater site. KJLA's transmitter, located at Mount Wilson, which experiences freezing winter conditions, is fed by a single link. But multiple links are required to reach the KVMD DTV transmitter.
The system inserts checksums at the studio in Los Angeles and then adds link history as the signal passes through each of two microwave relays. These CRC packets eventually flow through into the OTA transmission. They are recovered with a professional receiver at the L.A. studios, and the transport stream is converted back to DVB-ASI, which feeds an MPEG stream processor for data analysis. Initial tests showed perfect data integrity through the complex path running at 19.3Mb/s.
Because a new measurement of data integrity is generated every 100 milliseconds, it's easy to provide an error-seconds count for the link. For example, if the system shows that in the course of 24 hours a count value of 2 was reached, it means there were two seconds during which an error occurred.
One of the benefits in having channel error detection with both fine granularity and fast response is that when a data error occurs, the operator knows about it within a tenth of a second. This is much faster than the analysis response time for traditional MPEG analyzers. The response from the CRC test can be used to generate system alarms or to initiate automatic switching to backup systems.
The system is appealing in its simple implementation. Because it's simple and the impact is small, the test signal can be carried through multiple paths and components in a transmission chain. The CRC relay function can be accomplished with little more complexity than a distribution amplifier. It also has a near-zero demand on bandwidth in a conventional OTA transmission — only about a tenth of a percent of total signal bandwidth.
This technique is also content-agnostic as it does not analyze or decode the stream. It simply tests to see if the data was delivered accurately. That means that it's compatible with unreferenced PIDs that would escape analysis by conventional tools. It works with encrypted or proprietary data that may not lend itself to open-book decoding.
Perhaps best of all, a CRC insertion system is especially helpful for multiple point installations. It provides information on each relay position by hop count and forwards the history of the previous link all the way to the end of the path. Users can also monitor status at links that may have gone down by using an Internet or other connection.
David Wood is chief design engineer and president of Ensemble Designs.