7 Replies Latest reply on Oct 15, 2010 3:46 AM by Powered by Design

    Battling Hardware MPE, Episode 2: Chunky Blurs

    Colin Brougham Level 6

      Round Two of my hardware acceleration MPE tests...

       

      When using direct export with hardware MPE, any effect that renders a blurred alpha channel (Fast Blur, Gaussian Blur, etc.) creates an extremely ugly/chunky/unusable result. The source footage and sequence does not matter, nor does the destination format. The following examples are of an animated Gaussian Blur (from 0 to something) on a title clip, wiped off with a Gradient Wipe transition (toggle the GradWipe makes no difference). As with my previous thread (Battling Hardware MPE, Episode 1: Cropping on Export), I tested four variations of exporting: with hardware acceleration on and off, and with direct export and sending to the AME queue:

       

      GPU Acceleration off, sent to AME queue:

       

      gpu-off-queue.png

       

      GPU Acceleration off, direct export:

       

      gpu-off-export.png

       

      GPU Acceleration on, sent to AME queue:

       

      gpu-on-queue.png

       

      GPU Acceleration on, direct export:

       

      gpu-on-export.png

       

      So we've got good, good, good, bad. As before, the direct export method using hardware MPE seems to throw a wrench in the works. Any effect that blurs like this (including soft shadows or glows) suffers this ugly banding and harsh falloff. What's curious is that the last example is how the Program Monitor appears while GPU acceleration is enabled; if I disable it, it looks like it does in the first three. What I can't figure out, then, is where hardware MPE is actually at work! Is it in the direct export (bad) or in the queue (same as non-GPU accelerated)? It's not making much sense to me.

       

      Now, I had a chance to have a brief email exchange with one of the engineers regarding a similar issue a few months ago. In response to similar observations and questions, here is his reply:

       

      You are correct that composting with alpha can give different results. This is caused by processing in linear color so that blending is more like natural light. With MPE GPU acceleration, all composting is always done in linear color. This is nothing to do with the hack, but an intentional design decision to never compromise in quality. In software, composting is only done in linear color when rendering at maximum render quality because on the CPU it takes a lot longer. This probably also explains why you occasionally saw this with software. In the monitors we never show anything at maximum quality with unrendered footage. With software you thus need to export with max render quality specified or set max render quality in the sequence settings and render previews. For consistent results when switching between software and GPU acceleration I suggest enabling both max render quality and max bit depth.

       

      Either I'm not understanding this, or it's confirming the bug. I get that hardware acceleration is supposed to enable "linear color processing;" that's fine, if that's better than how it's usually done (whatever that is--I'm not an engineer), but based on what I'm seeing with the hardware direct export, it's WORSE than any software render or encode. Ultimately, I don't care what is technically superior if it looks aesthetically inferior. With the GPU on, a direct export is not usable, and when rendering through the queue, it looks visually no different than when not using the GPU.

       

      So based on the response above, I just did some more tests, this time with the Maximum Render Quality and Maximum Bit Depth options. I did not change the MRQ and MBD settings for the sequence itself--only in the export window--as it is my understanding that those check boxes will enable or disable those features. Using the same example above, I found some interesting results:

       

      EXPORT-BLUR-TESTS.png

       

      So, this would appear to largely bear out what the engineer explained. My observations now:

       

      1. Hardware acceleration, at least as it pertains to this linear color processing issue, is fundamentally equivalent to Maximum Render Quality in software rendering mode.
      2. Maximum Render Quality does nothing to soften the chunky blurs, shadows or glows. Instead, Maximum Bit Depth must be enabled.
      3. In my initial tests, GPU On + Queue resulted in the same visual effect as GPU Off; in this test, GPU On + Queue resulted in the same effect as GPU On + Export (???)
      4. Setting the Maximum Bit Depth option for your sequence in hardware mode will display smooth blurs with soft falloff in the Program Monitor.
      5. Setting the Maximum Bit Depth and/or the Maximum Render Quality option in software mode has no effect on the Program Monitor display.
      6. Regardless of sequence settings, failure to set either the MRQ or MBD option in the export window will result in those settings not being applied.
      7. Setting either the MRQ or MBD option in the export window will always result in those settings being applied, regardless of sequence settings.

       

      After going through all this, I may be willing to concede that everything is working correctly, more or less. However, my complaint is now, "WHY does this have to as complicated as this?" There are simply too many combinations that have to be set properly to get the desired quality of output, and I firmly believe that this needs to be simplified. When exporting or rendering in hardware/GPU mode, I believe that MRQ and MBD should be on by default; as it is, even with the promise of "linear color processing" with hardware acceleration, I still have to remember to tick another box to make sure that blurs, shadows, and glows don't look like stair steps. The jury is still out on how "good" linear color processing is; maybe I just got used to software rendering of these soft alpha channels, but I'm having difficulty seeing the benefit of more "realistic" light processing at the moment. With hardware acceleration on, you're basically stuck with how those soft elements look; with the hardware acceleration off, I can opt for the more subtle look if I like, even if it means I give up the other presumed benefits of linear color processing. When I design graphics in Photoshop, I expect them to look at least reasonably similar in Premiere; with hardware acceleration on, all bets are off.

       

      I realize this is a new technology and will, hopefully, continue to mature and improve, but I'm hoping that this at least sparks some conversation about this issue. Casual users may not care too much, but anyone using this product for broadcast or other commercial work should be aware of the complications associated with the technology, and should demand that it work consistently and at an expected level of quality. Maybe I'm expecting too much of this, but I certainly hope not.

       

      Your comments are requested and appreciated.

        • 1. Re: Battling Hardware MPE, Episode 2: Chunky Blurs
          Jim_Simon Level 8

          Maximum Render Quality does nothing to soften the chunky blurs

           

          It seems to do quite the opposite.  According to your last picture, the one thing consistent with all the problem footage is MRQ.  It seems that feature is actually causing the problem.

          • 2. Re: Battling Hardware MPE, Episode 2: Chunky Blurs
            Colin Brougham Level 6

            According to your last picture, the one thing consistent with all the problem footage is MRQ.  It seems that feature is actually causing the problem.

             

            Correct; that was basically a test to see if what was described by the engineer (namely, enabling MRQ to produce better alpha channel compositing) held true. Well, it's sort of six of one, a half dozen of the other. In essence:

             

            Hardware MPE = Software MPE + Maximum Render Quality = Linear Color Processing

             

            Enabling MRQ in hardware mode does nothing; enabling MRQ in software mode makes software mode act like hardware mode. In either of those scenarios, the alpha channel is composited using linear color, which causes soft shadows, glows, etc. to balloon. Additionally, the soft shadows are banding, due to 8-bit processing. Only by enabling Maximum Bit Depth can the banding be eliminated, but the bulbous glow remains. Setting Maximum Bit Depth alone in software mode has no apparent effect; the alpha channel may not be composited "more realistically" thanks to linear color processing, but it doesn't grow grotesquely or reveal banding, either.

             

            The tests above were conducted with the Gaussian Blur effect within Premiere. I decided to try a test using a Photoshop document; the PSD is a simple text layer with an Outer Glow layer style applied. I tried importing the layer with the layer style as it is, I tried flattening the layer, and I tried merging the layered document on import into Premiere; all resulted in the same effect. The results are more troubling than the examples above, as I use Photoshop for the vast majority of my graphics work for Premiere. Here's the test:

             

            This is text composited against the background video in Photoshop, so that I can see how the glow should be rendered:

             

            psd-glow.png

             

            Nothing fancy, but the glow has a nice, subtle fall-off. When I import the PSD into Premiere, edit the alpha text layer over the background clip, and render out in software mode, this is the result:

             

            gpu-off-psd-glow.png

             

            Visually identical to what I created in Photoshop; so far, so good. Now, if I enable MRQ and MBD on export, still in software mode, this is the result:

             

            gpu-off-mrq-mbd-psd-glow.png

             

            Um, yuck. Enabling MRQ has had the same ballooning effect as in the tests above, but since the graphic and background video are 8-bit, and I'm not using a 32-bit effect (like the Premiere Gaussian Blur effect), enabling Maximum Bit Depth has no effect. The glow shows banding, and is just downright ugly.

             

            So what happens in hardware accelerated mode? No prizes for guessing correctly:

             

            gpu-on-psd-glow.png

             

            No combination of Maximum Render Quality or Maximum Bit Depth has any effect in this case; the glow always looks like this in hardware accelerated mode.

             

            This is a HUGE problem, as far as I am concerned. Not only can I not use hardware MPE to export if I want a decent-looking glow, but I can't even use it in the design and build phase because the composited result looks NOTHING like what I'm building in Photoshop. I have a keyboard shortcut set up now to launch the Project Settings panel so I can toggle back and forth between software and hardware mode, so I can at least enjoy some of the acceleration of hardware for general editing, but for detail work and for export, hardware MPE is proving to be an Achilles heel.

             

            This is proving to be really depressing. Until I did these tests, I didn't quite realize the depth of the problem. Granted, no one is forcing me to use hardware acceleration, but am I wrong in calling this a serious flaw?

            • 3. Re: Battling Hardware MPE, Episode 2: Chunky Blurs
              Jim_Simon Level 8

              This is a HUGE problem, as far as I am concerned.

               

              Agreed.  MPE and/or MRQ should NOT make things worse.

              • 4. Re: Battling Hardware MPE, Episode 2: Chunky Blurs
                Colin Brougham Level 6

                MPE and/or MRQ should NOT make things worse.

                Abso-freaking-lutely. The problem is, this isn't a bug. This is working exactly the way it's supposed to, and that's what makes this all the worse. This is what happens when decisions about technical correctness trumps aesthetic and creative control.

                 

                I guess I'm just finding it odd that no one else is up-in-arms about this. These kind of issues severely limit hardware MPE's usability in a real production scenario; I don't think that what I'm finding is going beyond the boundaries of realistic expectations.

                • 5. Re: Battling Hardware MPE, Episode 2: Chunky Blurs
                  Jim_Simon Level 8
                  this isn't a bug

                   

                  Whatever name one puts to it, it is something that should not be.

                  • 6. Re: Battling Hardware MPE, Episode 2: Chunky Blurs
                    pejaka Level 1

                    One workaround is to play with different blend modes in Effect Control window.

                    It looks like this "non-bug" is active only when your blend mode is normal.

                    All the other blend modes seems to behave correctly.

                    • 7. Re: Battling Hardware MPE, Episode 2: Chunky Blurs
                      Powered by Design Level 4

                      Keep up the good work Colin.

                       

                      This has been very good reading.

                       

                      The pictures are worth a 1000 words too.  It drives your point home.

                       

                       

                      ENjoy:  GLenn