3 Replies Latest reply on May 18, 2017 4:19 PM by Kevin-Monahan

    Color (Bit) Depth and Codecs

    johnt53984649 Level 2

      Let's consider my workflow before I ask my question.  I'm using the After Effects CC 2014.0 release.

       

      • I make 1080p 59.94fps moving video backgrounds in After Effects using images from a variety of sources with varying specifications (resolution, color depth, compression types, etc.)
      • I use all sorts of "effects and presets" in After Effects and animate different parameters of each to create these videos.
        • For example, I might use keyframes to make a solid color layer's opacity fade from 0% to 100% (using the color blending mode so the layers beneath it have the color of this layer).
        • I may animate a solid layer with a gradient applied to it to move back and forth throughout the scene
        • I may animate some brightness and contrast parameters to create flashing effects
        • I also may use the Color Balance (HLS) effect and animate the hue and saturation of layers
      • Once the animation is finished, I export using the following settings:
      • After I have rendered out this MXF file, I import it into Adobe Premiere Pro to convert it into an MP4 file by exporting it with the following settings:
        http://image.prntscr.com/image/ad79159ae3b64a0197dc1f7d6a7398c5.png
      • The reason that I convert it to MP4 is because of how I end up displaying and distributing these videos; through YouTube.
      • So I upload this MP4 file directly to YouTube but also provide viewers with a direct download link so that they can obtain the MP4 file directly (so that the version they obtain hasn't been compressed by YouTube).

       

      So now, considering this workflow, there are several very important things to consider, especially since I'm mostly an amateur and I'm compressing the video twice.

       

      1. Notice that MXF 0P1a AVC-Intra Class100 only allows the "Depth" parameter (under "Output Module Settings") to be "Millions of Colors".  I cannot select any other option, as they're grayed out.  What color depth does this correspond to (8 bit, 16 bit, etc.), or is this something different?
      2. Notice that, under "Render Settings" the "Color Depth" parameter is set to "Current Settings."  I assume that this corresponds to the project settings, in which I can choose between 8 bit, 16 bit, and 32 bit color depths.  Considering question 1 above, which takes precedence?  The Color Depth in the Render Settings or the "Depth" of the codec?  Are they even referring to the same thing?
      3. In the "Color Management" tab of "Output Module Settings" is there any benefit to selecting "Preserve RGB?"
      4. Notice in Premiere that I'm using the H.264 compression codec.  What Color Depth does a "Level" of 4.2 correspond to?
      5. Essentially, considering my workflow, which settings should I change in order to make sure that my final MP4 file has the same color depth as what I've determined in the project settings of After Effects?
      6. Considering the types of animation that I'm doing, the way I'm displaying my content (YouTube), and the way people obtain and use these video files (downloading the exact MP4 file rendered out of Premiere), which color depth should I even be using?

       

      Please be as detailed with your answers as you can possibly be and be sure to address all six questions (if you can answer them).  I've done lots of research up to this point, but I still find it very difficult to know exactly what's happening to the color when it's going through these various compression codecs and any information I can find about color depth always seems to be limited to still images rather than video.  Also, please do not ask why I'm not using Adobe Media Encoder; rendering out of After Effects directly is about ten times faster, and simply converting a two-minute clip to MP4 in Premiere only takes three minutes.

        • 1. Re: Color (Bit) Depth and Codecs
          Mylenium Most Valuable Participant

          You are overthinking this. H.264/ MP4 is ever only 8bit, so there is no option to choose anything else. MPEG-Levels have a completely different meaning and you can easily look this up on Wikipedia. Millions of colors equate to 8bit as well, and AVCIntra is just another MPEG derivative, anyway (though there are more modern 10bit and 12bit variations). Similarly, regardless of this, a CoDec can't render what is not there - even if they supported 16bit or some such thing, if your AE is set to 8bit that is all you ever get. Of course some CoDecs have redundant settings for bit-depth, but this only inflates the color values to 16bit (in technical terms) without bringing any extra visible fidelity back. Preserve RGB only makes sense if you use color management. If you don't use any, it should not have any influence, though occasionally source files with color profiles embedded can whack out, because AE then thinks it needs to do some color management even none exists.

           

          Mylenium

          3 people found this helpful
          • 2. Re: Color (Bit) Depth and Codecs
            Joost van der Hoeven Adobe Community Professional
            • So I upload this MP4 file directly to YouTube but also provide viewers with a direct download link so that they can obtain the MP4 file directly (so that the version they obtain hasn't been compressed by YouTube).

             

            This is a myth. YouTube will always transcode... sorry...

            • 3. Re: Color (Bit) Depth and Codecs
              Kevin-Monahan Adobe Employee

              Hi JohnT,

              Are all your questions covered here by our experts? Please let us know what more you need to know.

               

              Thanks,
              Kevin