About the Stream Editors
The Stream Editors were created by MPEG designers (of both hardware
and software) in an effort (a successful one) to assist in the architecture, development,
and test of various MPEG systems. The features in these editors reflect what was necessary to develop complete
MPEG systems. As a result, there are many subtle features which only active designers will appreciate, and
also only which are observable after continued use of the product.
Some of these features are listed below
Conformance checking: Errors in the stream syntax are highlight in bright red
Network Based: Since these stream editors can reside on a server, multiple users of the streams can share information from other places on the network, even the internet for a collabrative effort. For example, one person could be creating streams, and another person checking them. Or perhaps an encoder effort could be debugged by multiple people using this product
Platform Independent: The editors are written in Java, and thus platform independent.
Encoder performance checking: These editors can be used to determine how well an encoder is performing. In some cases, statistics are indicated. In others, heuristic information is given. For example, to view motion vectors, and how well an encoder is predicting motion, click here: motion vectors
Decoder performance checking: These editors can be used to both determine the quality of streams being injected into a decoder under test, and also create various corner case and garden variety streams for the purposes of conformance checking the decoder
Hypertext links:All navigation is through a web browser via hypertext links, so it is easy to go backward and forward to analyze the stream. This makes stream deciphering extermely quick and easy, and cannot be overstated enough
Multidimensional: There are many ways to traverse to the same data. The protocol is multi-dimensional. So is the stream editor
Use of color: to convey information. For example, in the macroblock structure of a video frame, each different color represents a different slice
Editing: Streams can be edited. You can navigate to a particular header or data, and flip bits to create corner cases. Also, streams can be created which meet general design criterion
What You See Is What You Get: These editors were designed to be intuitive, and require very little supporting documentation to use them to the fullest extent
Training: These programs teach the structure of streams, so a novice can learn how they are put together, and see what common encoders do
Reverse Engineering: Streams can be reverse engineered to determine specific encoder architectures
Raw Data: The streams can be looked at interpreted or raw depending on the type of debugging required. Interpreted is full stream parsing and explanation. Raw is the raw binary with start codes highlighted.
Forward and Backward: Most frame (either audio or video) based operations have forward and backward controls to make indexing through frames easy