0 Replies Latest reply on Jul 27, 2017 1:06 PM by Kevin-Monahan

    FAQ: How do I speed up rendering, exporting, or encoding?

    Kevin-Monahan Adobe Employee

      "How do I improve rendering, or export times?" is a common question and theme we see on the forums. Fortunately, there are things you can do to export more quickly. This FAQ hopes to help you.

       

      Note: the terms rendering, exporting, and encoding are often used interchangeably (though technically, they have slightly different meanings). For the purposes of this article, we'll use the terms "export" and "encode" when we're speaking about outputting a file to your computer. Keep in mind that the term "rendering" is also used when describing the creation of preview files (sometimes referred to as "renders" or "render files"), which come into play in this FAQ, as well.

       

      To speed up encoding, consider:

      • Faster hardware: Working with faster computers also means that your exporting will be faster (in general).
      • The media you are working with: if media is optimized for export, the exporting process is faster.

       

      Hardware Considerations

      The first thing in improving encoding speed is to consider your hardware.

       

      CPUs: Encoding and rendering previews are a CPU intensive process, so the main control you have over export times is to have the fastest CPUs possible installed in your computer. More CPUs are better, as well. Consider that another computer in your facility, school, or home office might have faster CPUs.

       

      Additional hard drives, RAID arrays, etc.: Another hardware consideration is to have a separate hard drive (or RAID array), minimum, that you are encoding to. It helps quite a bit if it is a high-speed drive (or RAID) for transferring the file data. Many prefer SSD drives for that purpose. Separate high-speed drives for preview files can also assist the encoding process. Pay attention to how hard drives are connected so that transfer rates are optimized. Internally connected drives are typically the fastest. A RAID optimized for both redundancy and speed can be installed inside the computer for encoding. Using an external drive (or RAID) for encoding? You'll want the fastest connection possible available for your computer and those external drives.

       

      GPU: a GPU of any type does not assist the actual encoding process, however, it can improve the processing speed in certain cases. It depends on a number of important factors. This blog post explains what a GPU can and cannot assist (speed up) in the overall exporting process (scaling, GPU accelerated effects, etc.). In some cases in an exporting job, the GPU is used minimally, as there might not be many processes available for the GPU to handle. Real-time GPU accelerated effects may not have been added to the sequence, for example.

       

      That said, a system with a well-performing GPU (or even dual GPUs or more) can be a boon to improving encoding times, as indicated in this article. Some editors create sequences with a great deal of GPU-accelerated effects, for example, others commonly scale 4K footage to HD frame sizes. The GPU offloads processing for items it can handle, like these effects and scaling, giving the CPUs the opportunity to focus on the encoding (rather than effects processing) which can speed up the entire process greatly.

       

      Hardware resources for encoding:

       

      Optimized Media

      To encode more quickly, the media in your sequence should be optimized as much as possible prior to export.

       

      Doing so gives the computer fewer calculations to perform the encode, so its speed improves. Optimizing media allows you to export your sequence free of unexpected problems that might elongate the time of the encoding process. Here are common items to consider when preparing to export more quickly.

      • Scaling: an optimized sequence contains clips that are the same size as the movie you're exporting. If not, you'll pay a penalty in more time added to the encoding process. You can transcode and scale footage to the targeted size in Prelude or Media Encoder (see “smart rendering” below for more info) prior to editing, or replace it after editing (but that's rather painful, most just add time to the encoding process for scaling).
        • Photos: One should pay attention to not only the scale of video clips but also that of photos and other graphics. These are frequently acquired or created at a frame size that is much too large for use in video post-production, making them less than optimal for faster encoding. These graphics should be optimized to be at the native frame size if they are not to be animated using keyframes. If images are to be animated, you can crop them to no more than twice the native frame size.
      • Layered Photoshop files: One should pay attention to many layered Photoshop files and the stress it can put on encoding. It's best to flatten or optimize these images otherwise prior to encoding.
      • Effects: using effects increases the time it takes to encode a movie. The more effects that are added, the more time it takes to encode. Certain effects both native and third party take longer to encode than others. Some third party effects are well known for significantly increasing export times. Cutting down any use of unnecessary effects when in the editing phase can save time in the encoding process. For example, you can transcode footage with Lumetri Color Looks added to them prior to ingesting them into Premiere Pro. This saves time in that the color effect did not need to be processed for encoding, as it was already “baked in.” (see “smart rendering” below).
      • Preview files: Set the codec of your Preview files to the same one as your export codec in Sequence Settings, you can save time in the export process (see “smart rendering” below).
      • Render and Replace: Use the Render and Replace function for After Effects compositions or any other footage that seems suspect. Use the codec you plan to use in the export process to speed overall encoding. (see “smart rendering” below).
      • Supported import formats: Use only the supported import formats that are listed in the Help documentation. Odd formats can slow encoding speed.
      • Frame rate: frame rates in media that do not match sequence settings or export settings will add time to an encode. You can use the Interpret Footage command in the editing process (or by transcoding prior to editing) to conform frame rates.
        • Variable frame rate footage, such as screen captured media like game play, video from web cams, and video captured by certain mobile phone applications must be converted prior to importing to Premiere Pro and the encoding process. Handbrake and MPEG Streamclip are mentioned as transcoding alternatives to Media Encoder, which, like Premiere Pro does not handle variable frame rates. MPEG Streamclip is the recommended application to use since it can export formats in an intermediate codec which might be supported for smart rendering. ProRes, for example, can be exported from MPEG Streamclip for smart rendering with Mac OS.
      • Unnecessary tracks: remove any unnecessary audio or video tracks or disabled clips from the Timeline. Pay special attention to multi-camera sequences that may have unnecessary and unused tracks, especially audio tracks within nested sequences.
      • Audio sample rate: ensure that the audio sample rate is the one expected for export. Remove or convert any suspect audio files, especially music that has been acquired from download sites.
      • Video Previews > Preview File Format: set the preview file so that it matches that of your footage before editing and rendering previews. This can potentially speed up the exporting process at the end of the pipeline.
        • Rendering previews that are the same file format that you ingest and export comes into play when exporting using the smart rendering workflow.
        • Exporting with "Use Previews" can greatly speed up the export process if the preview codec matches ingested and exported footage's file format.
        • Change this in Sequence > Settings.

       

      Note: optimizing media as much as possible in preparing for faster encoding can also assist in avoiding errors in encoding, like "error: compiling movie."

       

      Export

      Once you've optimized your media as best you can, you are able to export more quickly than before.

      • Choose File > Export > Media.
      • Once you are sure that you have the correct preset, be sure that your GPU is enabled in Adobe Media Encoder and Premiere Pro when exporting.
        • Enable GPU acceleration, if available, in the following places:
          • Premiere Pro: Project Settings > General
          • Adobe Media Encoder: Preferences > General
      • Click Queue to send the export to Adobe Media Encoder.
      • Click Export to send to the export to Premiere Pro.

       

      Read on for more techniques on how to encode even more quickly for upcoming projects using smart rendering related techniques and strategies.

       

      Smart Rendering Workflow

      We have found that using smart rendering can help both the speed and reliability of encoding files for the web and broadcast. Smart rendering cuts down on the processing of encoding even more by doing a bit more work up front. Any smart rendering workflow you can add prior to exporting will speed up your exporting process even more than improving hardware and working with optimized media.

       

      The following video by reTooled.net explains the basics of smart rendering in Premiere Pro (full article):

       

      The following info shows you how to use smart rendering in your encoding workflow. We understand that it may not work for everyone and in every case, but it's worth investigating as many people are unaware of the concept of smart rendering and how it relates to encoding. In beginning a discussion about using smart rendering in the encoding process, you need to start with image acquisition: how you shoot or acquire the original footage.

       

      Shooting footage for smart rendering

      • Shooting the footage: If you have control over how footage is shot, you can take advantage of smart rendering from the beginning. Therefore, shoot (or request that your camera operator shoots) the footage in the codec, frame size, and frame rate you plan to master to. Furthermore, use a mezzanine or intermediate codec like ProRes or DNxHD/HR. If the camera originals are already in a codec that can take advantage of smart rendering, you do not have to spend the time to transcode camera originals for that purpose.
      • If your camera does not support recording to an intermediate codec, you can buy video recorders (from Atomos, for example) to attach your camcorder or DSLR to that will record to those formats.
      • Note that the list of codecs which support smart rendering does not include H.264, or other popular camera formats. To add these formats to the list of footage that can use smart rendering, please create a feature request.

       

      Transcode

      Premiere Pro works with any camera's native format. However, some things that go along with that workflow include time penalties in the encoding process unless an intermediate codec is used for acquisition. Unfortunately, many camera formats do not acquire footage in codecs which support smart rendering and there are camera operators with no access to a video recorder that can create files for smart rendering (Atomos Ninjad-2, etc.). One way around this is transcoding your footage to an intermediate codec. These codecs provide a visually lossless transfer for your video files, so any quality loss incurred is undetectable to the eye.

      • If you had no control over the camera originals, and if they are not already in an intermediate codec's format, consider using Prelude or Adobe Media Encoder to transcode source footage to a codec which can take advantage of smart rendering.
      • Transcode to the frame size which you intend on exporting to. If you intend to export HD, transcode everything to a HD frame size.
      • Transcode to the frame rate which you intend on exporting to.
      • Transcode with any other additional elements you are planning to add in the edit, such as, LUTs, watermarks, TC burn in, video limiter, or loudness normalization using an effect in Adobe Media Encoder (Prelude does not offer effects).

       

      Now that you've shot or transcoded footage to the intended target codec, resolution and frame size, you won't have to deal with that added processing when encoding.

       

      Setting up a sequence for smart rendering

      • Set up a "Custom" sequence setting to use for your footage before editing. Choose Sequence > Sequence Settings > Editing Mode > Custom. Settings should match the ingested or transcoded footage precisely.
      • Furthermore, change the Preview File Format's codec for rendering Video Previews to the very same codec, frame size, etc. you ingested or used for transcoding to. This sets up the smart rendering process.

       

      Editing and rendering previews

      Edit as you normally would. You should see better performance in most cases since you're working with an intermediate codec. Note that you don't have to add primary color correction as you've already added your LUT for color correction when you transcoded. Doing a little work up front will give you better Timeline performance and will save you processing time during export. True, you've spent time transcoding, but you have these added benefits now, as well.

      • You can render all previews for any clips that have effects applied to them. We render everything when using this workflow not only to view them on playback, but to greatly speed up the export process. If all previews are rendered prior to exporting, the export time will be lightning fast, as you'll soon see.

       

      Exporting a master

      Now comes the export process. Here's where the time you've spent up front pays off.

      • Choose File > Export > Media. Export matching sequence settings, which results in a file encoded using ProRes, DNxHD, etc. Consider this your "master" file. It's a visually lossless copy that you can use to encode multiple versions of your sequence. Enable "Use Previews" in the Export Settings dialog box.

       

      Our engineers say that export time for this file should be 4 to 12 times faster than real time. However, in practice, we've found that it's even faster (virtually a file transfer), especially if you've rendered all previews ahead of time. Now you see why you might want to render everything prior to export. This is the "smart rendering" process in action.

       

      Creating this master file has not cost you much encoding time to speak of. It's also a file that can be uploaded to YouTube or Vimeo in this state. Doing so, creates a video on these services at excellent quality. Therefore, save yourself the step of creating a H.264 or H.265 file for this purpose, as it's not needed and is of lower quality than your master.

       

      Creating web and other broadcast deliverables

      • If you do need web or other deliverables, import the Master you just created into Media Encoder and use the H.264 or H.265 presets for encoding. If you are doing that process over and over, you can also create a watch folder.
      • The time it takes to encode these files should be much faster than exporting with all the preprocessing and smart rendering you did. You're taxing the CPUs only for the encoding process using this method, most everything else except the change of codecs has already been processed in the smart rendered master. If the time is much more than 1:1, then something may be amiss.

       

      Even though there is some investment in time for transcoding and rendering, there are lots of advantages to encoding using this, or a similar workflow. Please try it and see if it helps improve encoding times.