Review: Harmonic ProMedia Xpress
All targets and packagers have output paths. At job end, you can trigger another set of tasks that deliver these files to CIF or FTP locations, invoke additional quality control stages, or create reports or notifications.
Once you create the workflow, you can trigger it via a watch folder that can poll universal naming convention (UNC) or common internet file system (CIFS) drives or retrieve via FTP, by direct file input via another tool called the File Queuer, or via the API. Irrespective of the triggering technique, you can set an encoding priority on a scale from one to 10, with 10 being the highest. While you can’t save a File Queuer action, you can easily requeue a file in the Xpress Manager by right-clicking the log entry and choosing Re-Queue. This is a convenient way to re-encode repetitive jobs or tasks that fail.
Speaking of that, though the high-level workflow is fairly easy to understand, expect a fair amount of errors when you first start using the system. To a degree, that’s to be expected, since absolute precision in addressing and other configuration options is obviously required. However, Harmonic could do more to make the system easier to use and to catch errors before you push the Go button and walk away.
For example, though the system works most efficiently when you use UNC addressing (such as IP addressing), there’s a Browse button that you can use to choose a target folder for your output. Of course, if you use the Browse button and don’t type in the UNC address, your encode may fail, making the Browse button the user interface equivalent of Lucy holding the football for Charlie Brown, then pulling it away just before he kicks. Sure, you can use the convenient Browse button, but your encode may not work.
Harmonic’s error messages are also particularly obtuse. For example, address errors are signified by an “error in the external framework.” I’d prefer something like, “Use a UNC address, dummy,” which would lead to a faster resolution of the problem.
In addition, Harmonic should consider a workflow checking mechanism similar to the “test connection” you see on some programs connecting to an FTP site. Significantly, Elemental checks under the hood when you create an encoding job in Elemental Server, so you can’t start a job that will fail; you get an instant error message.
At one level, this is all tempest-in-a-teapot stuff. Most users will set up workflows for repetitive use when they get the system and won’t experience these types of errors ever again. On the other hand, not all compression geeks are network-savvy, and Harmonic should do what it can to simplify the initial setup and workflow additions that may occur after system installation.
With this as prologue, let’s transition to the tests that I performed.
The first test involved encoding performance in two tests: The first encoded a single 52-minute 1080p file to 11 adaptive streaming presets, and the second encoded 24 1-minute DV files to the same presets. Table 1 contains the results, though some explanation is in order.
Table 1. Performance comparisons
The first two software-only tests involved Episode Engine and ProMedia Carbon, which I performed on a 3.3 GHz, 12-core (24 with HTT) HP Z800. I tested ProMedia Xpress on the ProMedia 5200 application server, which has two 3.33 GHz 12-core (24 with HTT) computers. I tested the two GPU accelerated units on the appliances themselves.
Irrespective of platform, Elemental Server remains the performance leader, though Xpress comes in a relatively close second. More importantly for Harmonic users, it’s significantly faster than ProMedia Carbon, which was the only other option for Harmonic WFS users.
Note that you can run ProMedia Carbon on the 5200 Application server and access it via the same Xpress interface illustrated previously. To compare encoding performance on the same platform, I encoded my 93-second 720p test file into a 6Mpbs 720p H.264 file with Xpress and Carbon. Xpress produced the file in 50 seconds, while Carbon produced it in 186 seconds, which is close to four times as long. Irrespective of the platform, Xpress is much, much faster than Carbon.
During the longest trial, I checked CPU utilization on the computer in the 5200 that was serving as controller, and I saw that it was hovering between 1% and 3%. Though all encoding scenarios are different, if you’re not going to be managing a server farm with the controller, the 5200 may be overkill. You may find it more cost effective to buy the Xpress software and install it on a very fast single computer. Note that other workflow functions, such as quality control, could boost overall system utilization as well, but for the type of episodic encoding that I was doing, the 5200 was clearly underutilized.
Analyzing the quality of the Xpress output raised some heretofore unseen issues. First, I had to convert my standard test files into an MPEG-2 transport stream that Xpress could input, which added another generation of compression artifacts, though at the high data rate used for this conversion, I’m sure that the affect was minimal.
In addition, in the past, I’ve compared MP4 output from the various encoders that I’ve been testing and its relevant contemporaries. However, Xpress doesn’t output MP4 files, and its MPEG-2 transport stream uses a different packing scheme that’s much less efficient than MP4. For this reason, comparing an MP4 file with a .ts file of similar size isn’t an apples-to-apples comparison.
To help work around this issue, Harmonic provided an H.264 elementary stream pulled from an MPEG-2 transport stream file produced by Xpress. I compared this file to output produced by Teletream, Inc.’s Vantage and Elemental Server from my standard test files (e.g., not converted to MPEG-2 transport stream) and found the Xpress file about the same in quality. Of course, this wasn’t a file I could produce from Xpress myself, so I hunted around for a test that I could run using unaltered Xpress output.
I decided to compare Xpress’ HLS output to the HLS output of Sorenson Squeeze 9. Specifically, I created HLS output in two configurations, 720p at 800Kbps and 640x360 at 240Kbps, making sure that the total size of the output files were within 5% of each other. Ultimately, I produced the Xpress files at the stated target data rates and the Squeeze files at 780Kbps and 200Kbps, respectively.
Why Squeeze? Because using the x264 codec, Squeeze’s output quality equals or is slightly superior to encoding tools such as Elemental Server and Vantage, though they are both an order of magnitude faster than Squeeze, particularly Elemental. Also, to be fair, I wanted to start with the test file that I had converted into the MPEG-2 transport stream so that Xpress could encode it, and Squeeze was the only encoder that I had access to.
In one sense, an HLS-to-HLS test is more relevant than comparing MP4 files, because HLS is the actual final output. On the other hand, when comparing HLS output of equal total size, you’re analyzing both the quality of the H.264 in the stream and the efficiency of the transport stream packing scheme, which varies from encoder to encoder.
For example, another approach would have been to encode both files to the same target data rate and compare the output, even if the output file size varied significantly. Unfortunately, that approach assumes that both encoders meet the target data rate precisely, which, in my experience, they seldom do. So if the total file size of one group of files exceeded the other by 25%, I couldn’t tell if this was packing scheme inefficiency or just missing the target data rate.
Overall, I’m going to have to rethink how I compare encoding tools going forward, and it raises some interesting questions for producers as well. For example, when you specify a combined audio/video data rate target of 800Kbps for HLS output, does your encoding tool create an audio/video stream of 800 Kbps -- and then pack it in an MPEG-2 transport stream wrapper -- which obviously adds to the data rate? Or does it create a bitstream that totals 800Kbps, including audio, video, and transport stream overhead?
Certainly, I think you want the latter, but do you know what your encoding tool is providing? Clearly, compression quality plays an important part in the overall quality of the output, but so does transport stream efficiency. Some vendors, such as Zencoder, Inc., promote the efficiency of their HLS output, claiming that they are as much as 13% more efficient than Rhozet and 10% more efficient than Squeeze. None of my analysis even looked at that issue, but it’s an issue that we’ll have to analyze going forward.
So, how did Xpress’ output quality compare to Squeeze? Again, it is very similar. Overall, after the long and winding road of testing, Xpress’ output quality proved very competitive. I should also note that I tested deinterlacing quality and found that competitive as well.
Xpress supports closed captions, Teletext and digital video broadcasting (DVB) subtitling, as well as SCTE cut in insertion. I tested Xpress by passing through CEA-608 titles contained in an MPEG-2 transport stream through to an encoded MPEG-2 transport stream and HLS output, which all worked well.
While not the fastest encoder in the land, Xpress was very competitive in both quality and performance; it is a vast improvement over ProMedia Carbon. If you’re a Harmonic workflow system user, it’s definitely worth checking out. The 5200 application server could be a workhorse in the right environment, though it’s clearly overkill when not used in a server farm operation.
At the 2013 NAB Show, Harmonic announced that Xpress will support HEVC and the Ultra HD codec for OTT video-on-demand application. These features were unavailable for our tests.
This article appears in the June/July 2013 issue of Streaming Media magazine as "Review: Harmonic ProMedia Xpress."
Trading hardware for software-based solutions, Harmonic is promoting Polaris at IBC, a suite that streamlines playout management.
Media companies distributing to Netflix will benefit from a simpler workflow while creating optimized content.
It's a valuable addition to the Vantage Workflow family, but is Transcode Multiscreen the fastest encoder around? Read our detailed test results.
Companies and Suppliers Mentioned