Transcoding for better performance and easier editing

Aladdin4dAladdin4d Moderator
edited September 28 in HitFilm Techniques & Questions

HitFilm does not perform as well as some other programs with certain types of footage. When that happens your best option is to transcode to a more edit friendly format. If your footage was recorded with a cell phone, tablet or screen capture software then odds are it was recorded with a Variable Frame Rate (VFR) and the only way to fix it is to transcode it to something with a Constant Frame Rate (CFR). Here's a couple of articles covering the reasons why it's a good idea to transcode regardless of the editor you're using.

Why you should use Avid DNxHD and Apple ProRes

Save Yourself Frustration: Use “Editing” Formats When Editing

Right now there is a lot of information scattered throughout the forum on all the different options available and this thread is an attempt to collect and organize it in one place. Sometimes that will mean making new comments here and other times it will mean linking to existing threads like this example of the kind of performance you can expect after transcoding:

Hitfilm timeline 4k performance demo video

And this long list of available codec options for reference:

The Intermediate Codec Thread

HitFilm 3 and 4 Express Users:

For most things your best option is going to be Norman AVC created with Handbrake.

Windows HitFilm Pro 2017 Users

While Norman AVC is a decent option for many things we now have native Cineform support so unless you want or need to keep your file sizes down Cineform is the intermediate format of choice.

Windows HitFilm Pro 3 and 4 Users

Avid DNxHD/HR or Norman AVC are the top choices. Cineform is also a viable option but may not perform as well.  

HitFilm Mac Users:

Mac users can ignore most of what's here because you already have full access to ProRes. At some point Mac options for transcoding to ProRes might be added (any volunteers?) for completeness. 

Comments

  • Aladdin4dAladdin4d Moderator
    edited January 12

    Norman AVC

    @NormanPCN has put in some time and effort to come up with a low decode overhead AVC solution using Handbrake or FFMpeg. His definitive thread on the subject is:

    Transcoding to fast decode AVC for timeline performance

    Check there for the most up to date information or see his comments later in this thread.

    The basics of using Handbrake are covered in these two videos from the  How to work with & edit video game footage in HitFilm thread.

    https://www.youtube.com/watch?v=kmBmkIrekBk

    https://www.youtube.com/watch?v=4wWI_9Sscjc

    NormanPCN's current recommended extra options are "keyint=10:bframes=0". If you are dealing with a variable frame rate be sure to select Constant Framerate and to choose an appropriate frame rate. Leaving the frame rate option set to "Same as source" may result in your transcoded video still having a variable frame rate. 

     

  • Aladdin4dAladdin4d Moderator
    edited January 6

    Cineform

    For the moment we're laying out three options for converting to Cineform.

    1 - HitFilm Pro 2017 itself. You can import your clips and add them one by one to the render queue, set up or select a Cineform preset and transcode away. A little cumbersome but you don't need anything extra and you have all the HitFilm tools if you want to make minor adjustments at the same time. If your clips are really troublesome for HitFilm though, you probably want use one of the other options. 

    2 - VirtualDub/VirtualDub FilterMod. If you need to

    • Convert Variable Frame Rate clips to a Constant Frame Rate or
    • Deinterlace your clips (can also be done in Pro 2017) or
    • Transcode a clip with an alpha channel (can also be done in Pro 2017) or
    • Use quality settings that aren't available in GoPro Studio (can also be done in Pro 2017)

    Then VirtualDub is the way to go.

    How to Use VirtualDub FilterMod to fix VFR issues and convert to Cineform

    3 - GoPro Studio If your needs are simple or you happen to have a paid version then this is a good, easy to use choice. The bad news is in order to use Cineform outside of apps that natively support it like HitFilm Pro 2017 (Win) and Adobe Premiere you have to install the GoPro Quik Desktop/Studio software. The good news is it's now totally free unlocking the codec for all to use and it transcodes! There are some limitations with Studio such as:

    • It can only import h.264 sources. This isn't much of a limitation as this covers the vast majority of current cameras
    • Your sources have to be progressive as there's no way to deinterlace footage
    • The trimmer appears to only work with actual GoPro clips
    • It can't convert variable frame rate clips to a constant frame rate
    • It doesn't give you access to all of the Cineform options. It appears to be limited to 4:2:2 10 bit Cineform and the lowest three quality settings, Low, Medium and High. (See the VirtualDub link above if you need to use a higher quality) 

    Back in the plus column Flux is available for smooth speed ramps, time lapses and Twixtor like slow motion. 

    Once you have it installed and are ready, start GoPro Studio. The first thing you need to do is import some files by clicking the blue Import New Files button in the upper left corner.

    Once you have at least one clip imported you can review it in the trimmer but it seems you can't actually trim it unless it's from a true GoPro camera. Clicking the Advanced Settings button at the bottom of the window near the center brings up a few options.

    Under normal circumstances you shouldn't need to change anything here except for Quality. As mentioned before the only quality settings available are the lowest three. Try them and see if the results are acceptable to you. If not then you'll need to move on to VirtualDub. On a historical note GoPro Studio used to have paid versions with more features. Those versions are gone now so while the codec is unlocked and other programs can access its more advanced features Studio is still limited in features.

    Just to the right of the Advanced Settings button is the Save To location. This can be changed by clicking Change Directory. 

    When you're ready click the Add Clip to Conversion List button to add it to the queue. Repeat until your done adding clips then click the Convert All button to start transcoding.

    And that's it!

  • I will add an item which helps performance in Hitfilm with common DSLR and Digicam and Phone AVC MOV file footage. This has only been tested on Windows.

    You are better off transcoding but if you are resistent to that then for the stated media types you can rename the file extension from MOV to MP4.

    I once wrote up a thread on this topic and here is the link.

    https://hitfilm.com/forum/discussion/40059/timeline-playback-performance-with-mov-dslrs-phones-etc

  • edited January 27

    I reference a thread here that I just created on the fast decode AVC (Norman AVC) settings I created that are referenced above. Handbrake stuff is the same. I include a download link to a ZIP of some ffmpeg Windows scripts to make this transcode easy.

    As typically encoded, AVC has a high decode overhead. Most cameras like DSLRs, digicams, action cameras, phones and web cams encode to a higher overhead AVC. AVC is commonly found in MP4 and MOV file containers. AVC can be encoded to a lower overhead configuration.

    https://hitfilm.com/forum/discussion/42415/transcoding-to-fast-decode-avc-for-timeline-performance

  • Aladdin4dAladdin4d Moderator
    edited January 17

    Avid DNxHD/HR

    In the past the Avid codecs were the intermediate of choice for serious work but there are some issues in using them. 

    • DNxHD/HR files usually use an MXF container but HitFilm cannot import such files. Instead DNxHD/HR files must use QuickTime MOV as the container before HitFilm can import them.
    • QuickTime must be installed before HitFilm can import MOV files.
    • QuickTime Windows has been abandoned by Apple 
    • Because of the QuickTime requirement HitFilm performance with MOV's is not as good as other options.
    • There are limited options for producing DNxHD/HR MOV files with Windows. 
    • Avid uses an inverted alpha channel compared to everything else in the world so alpha channel creation and support outside of Avid products can be problematic

    Requirements 

    There are two things you must have in order to work with DNxHD/HR files

    1. QuickTime Windows 
    2. Avid QuickTime Codecs LE

    Install QuickTime first if you don't have it already then the Avid codecs. If you're installing QuickTime for the first time you must reboot before using HitFilm. HitFilm won't recognize QuickTime files until you do.

    Mpeg Streamclip 

    Note: Mpeg Streamclip has the ability to convert variable frame rate clips to a constant frame rate with some codecs however that option is not available when transcoding to DNxHD/HR. If you need to fix variable frame rate clips then you have to use another option. 

    This is one of the scarce options for Windows users. It's free but it can't import some file types, hasn't been updated in years and requires QuickTime to be installed so it should probably be considered abandoned. On the plus side it still works even on Windows 10 and can utilize any QuickTime codecs you might have installed. Use the link below and download the 1.2.1b6 beta for Windows.

    Squared 5 Mpeg Streamclip

    This is another program that doesn't have an installer it's just a ZIP file. Once unzipped you can place it anywhere that's convenient for you. Start the program by double clicking. You'll get a notice about starting QuickTime support then the main window will open.

    Go to File and select Open Files... to import a clip.

    If you want to trim the clip you can use the transport buttons or the scroll bar to scrub and the In and Out points are set with the I and O keys respectively. 

    To transcode the clip go to File and select Export to Other Formats

    This opens the first Other Formats options window. Click the Options button to get to the second. 

    On this second options window click the Settings button under Video.

    On this window go to the compression type drop down and select Avid DNxHD codec for HD clips. (If you have 4k clips then select Avid DNxHR codec.)

    That will finally bring you to this.

    There are two important things to do here. The first has to do with the color levels. If your camera or source records full range (most action cams and DSLR's do) then change this to RGB levels otherwise leave it set to 709. The other has to do with setting the level of compression. This is done with the Resolutions drop down list. DNxHD compression rates are set to specific resolutions and frame rates. To pick a correct one (yes there will be more than one possibility) look up compatible frame rates and resolutions using the tables here:

    List of Avid DNxHD resolutions

    Once you have located the right table for your footage choose a bit rate. The lowest bit rate is usually only good as a proxy so you want something higher but experiment and go with the lowest that gives you acceptable quality. The clip I'm using for this is 1080p with a frame rate of 29.97 and I chose DnxHD 145. After you make your selection click OK to get back to the previous window.

    Mpeg Streamclip defaults to a 44.1 Khz sample rate but most things record with a 48 Khz sample rate so you probably want to change to that. Click to the Settings button under sound to do this.

    Click the triangle to the right of the sample to get a drop down list where you can select a 48 Khz sample rate and click OK. Click OK again to close the settings window. You should now be back to the original Other Formats window. 

    Mpeg Streamclip has the ability to save and load Presets. To save the current settings as a Preset click the Presets button to open the Presets manager. 

    Clicking the New button will let you save the current settings as a Preset. Once you have saved the Preset you can exit the manager by clicking cancel to get back to the Other Formats window.

     

    If your footage is already progressive be sure to uncheck Deinterlace Video. On the other hand if your footage is interlaced and you want to deinterlace while you transcode (good idea) then make sure Deinterlace Video is checked. Click OK on this window and you will be prompted for a save location. Once you choose one transcoding will begin!

    Batch Processing - Mpeg Streamclip has batch processing. To start adding files to be processed go to List and select Batch List.

    That should open the Batch List manager. Click the Add Files button to start adding files. 

    Once you have added a file or files you'll be asked to choose a task. Use the drop down list to select Export to Other Formats and click OK

    Next you'll be asked to choose a destination folder where your transcoded files will be saved. After you select a destination you'll be taken to the now familiar Other Formats settings window with one difference. There's now a To Batch button instead of an OK button. 

    You can load a Preset or choose completely different settings. Either way when you are ready click To Batch to get back to the Batch List window. 

    When you're done adding files click the Go button to start processing the list.

     

  • Triem23Triem23 Moderator

    @Aladdin4d I thank you for writing the script for at least one of my upcoming tutorials. ;-) 

  • Aladdin4dAladdin4d Moderator

    @DLKeur So what are you trying to say? ;)

    @Triem23 Welcome Sir! Let me know If there's something you do differently or if I need to add something etc etc. to keep things in sync

  • @Aladdin4d : WOW = Your dedication to helping others is only exceeded by your patience and kindness when helping others.

  • Triem23Triem23 Moderator

    @DLKeur transcoding issues come up so often... By doing a very thorough breakdown ONCE we can all refer future users to this thread and save a lot of typing and retyping in the long run. Same with Norman's recent transcode info. ;-).

    It's the smart form of lazy. Do it one correctly, reuse forever. 

  • Stargazer54Stargazer54 Moderator
    edited September 28

    @Triem23 @Alladin4D ; Great write up, indeed!

    As to finding these wonderful tomes later I always find it difficult to locate them again.  Even clicking the Star icon at the top of the thread only works up to a point.  Once you have a lot of those, it's still hard to locate the info that is a post within a thread.

    I have no answers, but it would be great to have some other method of making this information readily accessible.   The permanent links at the top of the forum are a good start.  But even the one named "How to work with & edit video game footage in HitFilm" tells the newcomer little about "Hey, read this to fix your variable frame rate problem."   Even then, you would have to know you have a variable frame rate problem.

    And as you have often noted, Triem, the same questions are asked and answered over and over.

  • Aladdin4dAladdin4d Moderator

    @Stargazer54 This is totally a work in progress and nothing is set in stone about the organization. Right now, for me at least, the most important thing is just getting something written up and/or tutorial videos made. If my inbox is any indication ideally we want both written and video tuts available. 

    It's easy to split off a comment or comments into a new thread and in the long run that's probably what will happen making this thread a central hub of links that hopefully gets pinned to the top at some point. I don't know if you've noticed this yet but it's actually a lot easier to locate and edit one of your own comments than it is one of your own topics. If you go straight to your bookmarked topic you can't access the edit controls for the topic. You can access the edit controls for any comment under that topic but not the topic itself. To get access to the edit controls for the topic, you have to find it in the discussions list first which can mean going back through several pages. 

    You raise a good point about needing to know you have a variable frame rate problem to begin with. Somebody should write something up about that. Hmmmmm .........maybe somebody like the moderator that thought of it? ;)

    @DLKeur This is all about work smarter not harder. The goal for Fxhome is to shoot for a five fold increase in the number of users!

    http://www.edp24.co.uk/business/from_hollywood_to_youtube_shift_in_focus_for_norwich_special_effects_firm_fxhome_which_has_featured_in_hit_movies_such_as_salt_and_the_hangover_part_2_1_4851023

    I don't wanna type out the same stuff five times more than I already am and I know the other mods are on the same page on that score. It just makes a lot more sense to get some basics down we can all refer to easily before things really get out of hand. 

     

  • edited January 17

    One thing nice about DNxHR is that you don't have to worry about the frame size or frame rate like you do with DNxHD. So if you want to use "DNx" then maybe just use DNxHR.

    I'll add a link to some ffmpeg Windows scripts that can be used to do easy transcoding to DNxHD, DNxHR and Prores. The ZIP has a contained readme text file.

    https://drive.google.com/open?id=0B0Ns35ef10qNT2t0ZDg1U0N1clk

  • Aladdin4dAladdin4d Moderator
    edited January 18

    @NormanPCN There's two things about DNxHR I haven't covered yet and need to at some point. First it won't do 720p (officially anyway) and second Avid has restricted 1920 x 1080 DNxHR to proxy use only regardless of the quality setting in true 2k or higher resolution projects. You can't even select DNxHR from within an HD Media Composer project.

    http://avid.force.com/pkb/articles/en_US/White_Paper/DNxHR-Codec-Bandwidth-Specifications#HD

    That means if you unwittingly send a 1080p DNxHR clip on to an Avid user it probably can't be used.

  • edited October 7

    While not free, it is inexpensive. Convert V4, now named Dali's Mustache is a useful utility to do transcoding to some edit formats. e.g. DNxHD, DNxHR, Prores, XDCAM.

    Sadly Cineform not yet available for output but it can read Cineform input. You can also generate image sequences from video or transcode image sequences to video. Do image stabilization. It has quite a number of features.

    The program is a GUI front end (interface) to ffmpeg/ffmbc.

    http://hdcinematics.com/

  • edited February 4

    Ah, well, I'm plugging Hitfim to the authors I know who want to make book trailers, @Aladdin4d and I include a reference to it in the end credits of anything I officially post.  I have a pretty good following, so, hopefully, that nets Fxhome some more users.

Sign in to comment