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

This thread is going to cover using VirtualDub and VirtualDub Filtermod. 

«1

Comments

  • Aladdin4dAladdin4d Moderator
    edited November 7

    Introduction

    If your source clips were recorded with a cell phone, tablet or screen capture software odds are they were recorded with a variable frame rate (VFR). This is fine if all you want to do is playback a clip but all kinds problems can turn up when you try to edit it with the most common being the audio going out of sync. The only way to fix this problem is to convert the source to something with a constant frame rate (CFR). This tutorial covers using VirtualDub FilterMod to do just that fixing the audio sync issues and transcoding to the edit friendly Cineform codec at the same time.

    About VirtualDub FilterMod

    VirtualDub FilterMod is a fork of the venerable VirtualDub. Like VirtualDub it is a Ginsu Knife kind of utility for working with video files. It's a simple editor, it transcodes, it has batch processing with a queue similar to the new HitFilm render queue, a command line version for processing with a batch file and some unique plugins are available for it. Unlike VirtualDub, VirtualDub FilterMod supports deep color (16 bits per channel) and includes native import filters to handle clips from most cameras, phones, tablets and screen capture apps making it a lot easier to set up than the ‘official’ VirtualDub. If you want to use the official VirtualDub instead you can and here is a PDF of the instructions for that.

    About Cineform

    Cineform is what’s commonly known as an intermediate codec very comparable to ProRes and with the release of the Windows version of HitFilm Pro 2017 it’s natively supported making it the “go to” choice for an intermediate.

    Minimum Requirements

    • GoPro Quick Desktop w/Studio - This supplies a version of the Cineform codec that'll work with VirtualDub FilterMod. Note – If you don’t need to fix VFR clips then this is all you really need transcode to Cineform. The latest release of VirtualDub FilterMod now has native Cineform support so you don't need anything from GoPro anymore.
    • VirtualDub FilterMod

    Getting Started

    Download the requirements of course ;) GoPro Quik has a standard installer. VirtualDub FilterMod doesn't have an installer and just needs to be unzipped. Once it is unzipped you can move it to anywhere that's convenient for you. 

    Configuring VirtualDub FilterMod

    VirtualDub.exe is the GUI version and vdub.exe is the command line version. We're going with the GUI version so double click VirtualDub.exe to start it and you should see this:

    There's a few settings we want to change before getting serious. The first thing we need to do is select the codec we want to use and set the output pixel format. To do that click Video then select Compression...

    This opens the compression properties window. The left side lists the codecs you have available for use with VirtualDub FilterMod. Once you select one some information about it will appear on the right side. Go ahead and select the GoPro Cineform (native) entry as shown.

     Once selected you’ll see the Video codec information change. Just to go over what the different things mean:

    • Delta frames – This will be a little long to fully explain. There are three basic types of frames used in video compression: I‑frames, P‑frames and B‑frames. I-frames are Intra-frames and are essentially fully specified, self-contained images. P-frames are Predicted frames and save space by holding only the differences or deltas from the previous frame so Delta frames is just another way of saying P-frames. B-frames are Bi-Predictive frames that save even more space by holding only the differences or deltas between the preceding and following frames. This extra savings comes at a high cost though as multiple frames must be decoded and held in memory before a B-frame can be fully decoded. All of that to say Cineform uses P-frames!
    • FourCC – This is short hand for Four Character Code and is a 4 byte sequence used to identify the data format. In AVI files (MOV too) it’s used to identify the codec used. Geek Trivia - FourCC originated with the Mac, the Commodore Amiga and the Electronic Arts Interchange File Format
    • Driver name – This displays the file name of the codec.
    • The information window – This supplies extra information about the codec like resolution restrictions and accepted pixel formats (color spaces). Cineform accepts RGB, RGBA, RGB 16, YUY2, and v210. RGB and RGBA are the normal 8 bits per channel color with or without Alpha. RGB 16 has 16 bits per channel color and although not listed RGBA 16 should be accepted as well. YUY2 is 4:2:2 YUV with 8 bits per channel color and v210 is 4:2:2 YUV with 10 bits per channel color.  

    Now that you know all that even if you didn’t want to it’s a good idea to make sure your feeding the codec a color space it will accept. To do that click the Pixel Format button opening the output formats window.

    Once you’re back to the Compression window click the Configure button. This will open the Cineform properties window.

    As before to keep things as faithful to the original as possible make sure all the Dec and Enc options are unchecked as well as the Enable 4:4:4 encoding option. Enabling 4:4:4 forces RGB encoding giving you even larger files sizes with no gain. Only use it if you need 12 bit color or are using an alpha channel.

    New Configuration!

    If you click the Configure button you'll get the Cineform configuration options.

     Unless you are doing something more advanced with deep color or transcoding something with an existing alpha channel then your go to choice should be 4:2:2 YCbCr 10-bit (v210) as shown. Make sure Color space and Component range are set to No change so there are no unexpected shifts from your original. Click OK to close the window or if you wish make this your default option by clicking Save as default then OK. Encoding Quality is going to be up to you. The higher the quality setting the larger the resulting file will be. Experiment to find the lowest quality that works well for you and your footage (Hint: Filmscan 2 and 3 are definitely going to be overkill and for many things so will Filmscan 1). When you're done here click OK then OK again to get back to the main screen.

    Now we need to set the audio output to something that will work with Cineform and the AVI container. To do that all you need to do is go to the Audio menu and select Full processing mode. The default for Full processing mode is to export uncompressed PCM audio which is perfect so no need to do anything else. 

    VirtualDub FilterMod has the ability to save and load settings profiles so you don't have to go through this every time you want to use it. These profiles can be loaded at anytime, called from a command line or added to a shortcut so the program opens to your custom settings. To save the current settings go to the File menu and select Save processing settings..., change Save as type: to All files (*.*) then name your file and add .vcf to end and save it in the VirtualDub FilterMod folder for future use.

    That's it for setting up VirtualDub FilterMod!

    At this point if all you need to do is transcode to Cineform then once load a clip you can go to the File menu and select Save as AVI... If you need to fix a variable frame rate problem then keep reading. 

    Fixing variable frame rate problems

    Now that you have a variable frame rate clip imported you can convert it to a constant frame rate. Go to the Video menu and select Frame Rate...

    This opens the frame rate options window. The top section is for doing adjustments to the source frame rate. You don't want to make any changes in this section but you do want to make note of the actual frame rate of your clip. This is listed just to the right of the "Change so video and audio durations match"  In this example it's 29.842 fps. 

    The bottom section is for frame rate conversion and where you want to make changes. Select "Convert to fps:" and in the box you want to enter the "real" frame rate (23.976, 24, 25, 29.97, 30, 59.94 or 60 etc.) that's closest to your actual frame rate. The closest real frame rate to 29.842 fps is 29.97 so that's what I entered. Click OK and you're ready to transcode.

    Batch Processing

    VirtualDub FilterMod has the same extensive batch processing abilities as VirtualDub. Adding files to the queue to be batch processed is simple once you have a file ready to go. Go to the File menu and select "Queue batch operation" then Save as AVI... You'll be prompted to enter a file name and save location then the job will be added to the queue.

    To add another file to the queue first go to the File menu and Select "Close video file" to close the current file. (Don't worry the batch job will stay in the queue.) Now you can import another file following the steps above and add it to the queue. Repeat until you have all the files you want added to the queue. To start processing the jobs go to the File menu and select "Job control..." This opens the Job Control panel. Here you can remove or re-order jobs and when you're ready to start just click the Start button.

    Another option you have from this window is the ability to process an entire folder using the current settings. To do that go to the Edit menu and select Process directory...

    Multi-track Audio

    HitFilm can only handle files with one audio track so if you have multiple tracks you have to extract the extra tracks first. Luckily VirtualDub FilterMod can help with this too. Once your file is imported you can go to the Audio menu and select "Source audio" then you'll be given the list of the audio streams in your source file. To extract an audio stream select the one you want to extract then go to the File Menu and select "Save WAV" to save that stream as a WAV file. Repeat for each stream you want to extract. Remember to go back and select the stream you want to be included with your video before transcoding or adding the job to the queue. 

    PDF version of this tutorial

  • Triem23Triem23 Moderator

    Bookmarked for reference. A few screencaps aren't showing on my phone. 

  • Aladdin4dAladdin4d Moderator

    @Triem23 Screen caps weren't showing because I was changing things and just finished. Everything should be good now.

  •  Thank you, this guide helped me a lot. I'm currently transcoding 2560x1440@60 FPS game footage, so I'm wondering if it would be wise to scale it down to 1920x1080 in this program (if that's even possible), or if simply downscaling in HitFilm by dragging a corner of the video is still the best way.

    PS. Takes forever, my CPU is so slow. =(

  • Aladdin4dAladdin4d Moderator

    @CNK I would probably resize in VirtualDub unless I knew I wanted the extra resolution to re-frame in HitFIlm. 

    To resize in VirtualDub go to Video and select Filters.... then click the Add button in the window that opens. This opens another window with a list of available filters.  Scroll down until you see Resize, highlight it and click OK to open yet another window. Here you can set the size and what algorithm you want to use. I would probably go with Lanczos3 because it has a sharpening side affect.

  • @Aladdin4d Thx so much for taking the time to publish this!
    What build of VirtualDub FilterMod are you using?
    Reason i ask is that when i try to load the saved processing settings, the codec settings aren't loading back in.
    Also, i have to set the pixel format to default in order to have it set correctly. I've been playing around with both 32 & 64 bit ver builds 38424 & 38425. The original VirtualDub 1.10.4 seems to save & load settings corretly but it doesn´t have the pixel format option.
    Another anamoly... if i try to save a processing setting for Cineform, as you state above, with no alpha and another one with alpha, VDub FilterMod only loads the processing setting that was last saved.
    Have you experienced this or is something up at my end?
    Thx again for everything...

  • Aladdin4dAladdin4d Moderator

    The build I used for this is 38089 32 bit and it is holding settings for me with v210 but I just checked with RGB and it isn't same as you which is strange and probably worth letting the developer know. I'll try to get a hold of him sometime this week.

    VirtualDub 1.10.4 does have the pixel format option except it's under Video-->Color Depth..... There's a screenshot in the PDF instructions for straight VirtualDub

    https://www.dropbox.com/s/qmybaktr8n2w8vd/VirtualdubToCineform.pdf?dl=0

    The biggest reason I chose VirtualDub FilterMod for this is because you don't have to mess around with adding input plugins making it easier to set up. If you have VirtualDub 1.10.4 set up and working for you there's no reason to switch unless you're dealing with deep color sources.

  • @Aladdin4d Thx for clarifying. I've submitted a bug reported on VirtualDub FilterMod's bug tracker at sourceforge.

  • CNKCNK
    edited January 27

    )before you read: I can just record the screen so I can save it that way. So you no longer have to help me =)

    Hey @Aladdin4d What's wrong with my file? I recorded it with OBS, and HitFilm doesn't want to open it. I used my default settings that you created for me.

    Here's straight from OBS: https://drive.google.com/file/d/0Bw80D1pY62I4eWFrNWVWRGk2cTQ/view?usp=sharing

    After transcoding: https://drive.google.com/file/d/0Bw80D1pY62I4UU5kSzM4X25EWjA/view?usp=sharing

    Here's HitFilm's error message: File Not Supported, File Error

    I would like to save this file if at all possible. I can play it back in VLC just fine.

     

  • Aladdin4dAladdin4d Moderator

    @CNK It looks like you made an uncompressed copy using the v210 pixel format. That is valid but I'm pretty sure HitFilm can't handle the v210 pixel format in an uncompressed stream. Try it again and be sure to set the compression to Cineform. 

  • edited October 12

    Does virtual dub still gain access to the cineform codec with the newest version of Quick Desktop v2.5?
    The cineform codec isn't showing up under Video>Compression for me.

  • Aladdin4dAladdin4d Moderator
    edited October 12

    @JackTripcony Yes it does I just did it on a fresh laptop in the field yesterday.

    Be sure to check the whole list it might show up as GoPro Cineform or just Cineform.

    Sorry for being a little short I'm stuck in a general session today

  • Aladdin4d I'm not seeing the   GoPro Cineform or just Cineform codec either. Cinepak is the closest thing I see.  I did install GoPro, any help?

    JackTripcony  Any luck figuring it out? 

  • GoPro Quick 2.5 has problems installing the Cineform codecs. The installer properly sets up the registry entries for Video for Windows and DirectShow but does not copy the files. I cannot say if GoPro did or did not fully intend to install the codecs. If they did intend, it is broken. If they did not intend they should not be setting of the codec in the system registry for VfW and DirectShow.

    Also, Quik 2.5 does not come with studio anymore. I have Quik 2.3 and all is fine with that and it has studio.

  • NormanPCN Hey thanks I downloaded quick 2.3 and GoPro CineForm is in the codecs now.

  • edited November 1

    @Aladdin4d Hey When I open the file in VirtualDub it opens up fine but when I save the file there is no video. There is audio. I've been messing around with the settings trying to fix it but having no luck. When it saves the file it does show a picture in the file thumbnail. I notice that your File window in the tutorial says Save as AVI... mine just says "Save as..." But the file type in the save window says avi. I don't know if that means anything? But its the only difference I can see on my end from your tutorial. Also when I load it into Hitfilm express 2017 it says File Error.
    Any idea why my transcoded file has no video?
    Thanks
    Here is a link to screen shots of GSpot before and after transcode to Cineform If that helps.

    MOD EDIT: Fixed image links.

    Before

    After:

  • Aladdin4dAladdin4d Moderator

    @ProCrash Virtualdub Filtermod is being constantly updated so it's no surprise there are some things slightly different from this tutorial like Save as.

    I'm not sure what's going wrong for sure but I suspect there's some bugs in the latest builds. I just downloaded the latest version and it crashes when I try to import a Cineform clip. Try again with this version and see what happens.

    https://sourceforge.net/projects/vdfiltermod/files/VirtualDub pack/version 16/VirtualDub_FilterMod_40121.zip/download

    It's the latest build that isn't giving me problems importing Cineform clips

  • edited November 1

    @Aladdin4d No change tried with the old version you posted and still blank video....

    VirtualDub does play it fine if that helps at all

    Could you post a link to the Go Pro Quick with Studio you are using maybe the one I'm using isn't quite right?  IDK just guessing at this point

    Also I noticed in an old thread one of the mods was saying, for Hitfilms 3, you had to pay to use Cineform, like $10 or something. Is that the case for Hitfilms express 2017? 

  • Aladdin4dAladdin4d Moderator

    Here's the link

    http://software.gamblisfx.com/download-gopro-quik-2-3-with-gopro-studio-for-windows/

    GoPro lifted the restrictions on Cineform almost 4 years ago now so there's nothing to pay for. Can you upload a small sample so others can try it and see if it works for them?

  • Sure how can I do that?

  • Aladdin4dAladdin4d Moderator

    @ProCrash Usually people share a file using Dropbox, Onedrive or Google Drive. If you don't have anything like that you can upload to my Dropbox and I'll post a share link. This should take you to a page where you can drag and drop an upload.

    https://www.dropbox.com/request/OdZWYCryP7eYYBQBGJHQ

     

  • Okay here is a link to a little 5 sec video for testing. l

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

  • Aladdin4dAladdin4d Moderator

    Ok well I tried three slightly different encodes and all three are working for me.

    https://www.dropbox.com/sh/ebylysetmlsljaw/AAB2sEuW-sscgiS2QOIZfDpKa?dl=0

    On another note, I reported the problem with Virtualdub Filtermod importing Cineform files and another build fixing it was released shortly after that. 

  • edited November 2

    I downloaded those clips from drop box. 
    They are just like the files I transcode. The sound works they have an icon of the footage but they do no play in the windows movie and tv app. They also all say File Error in Hitfilms Express 2017.

    Are you saying they work fine for you? 
    Is there something wrong with my Hitfilms download then or is my codec messed up? 

    I also had hitfilm 3 express installed and thought maybe there was a conflict somewhere so I uninstalled Hitfilm 3 and Hitfilm express 2017  and  re installed Hitfilm express 2017 and the files you posted in drop box still say file error. 

     

  • Aladdin4dAladdin4d Moderator
    edited November 2

    @ProCrash Yep they all work for me in HitFilm. Cineform files won't work in the Movie and TV app. Right click one and select Open With... then choose Media Player and they should work in that. 

    HitFilm's Cineform support is native meaning it doesn't need anything else to work with Cineform files. You could try to uninstall then re-install but if that doesn't work you should definitely contact support. There's something unusual going on and I don't think it's anything you are or aren't doing. 

  •  Arggggg they work in windows Media player.
    Ya I uninstalled everything  and reinstalled it all. No change. 

    I submitted a ticket to support hopefully they can help. 

    Ill stick with hand break until support can help me figure this out. Hand break does help a bit with editing just not enough. 

    Hitfilm SHOULD work pretty smooth for me I have a 
    i7-3840QM 2.0 GHz processor
    GeForce GTX 680M
    32 GB Ram. 
    Right? Its a bit old but still fast. 
    And I'm just doing basic editing stuff like some time lapses and putting clips together. nothing fancy. 

    Anyway thanks for the help! 
    Ill post a solution if support can help me find one. 


  • "i7-3840QM 2.0 GHz processor"

    2Ghz is probably below threshold for AVC/H.264 media decode. Even fast decode AVC.

    The CPU does all the work decoding media and getting the timeline moving. After that the GPU takes over.

  • Sorry 2.80 GHz
    Is that below the threshold?
    Also I'm 'trying' to transcode to  cineform Whats the threshold for that?

  • Aladdin4dAladdin4d Moderator

    @ProCrash Once you can actually import Cineform files you should be ok. Not great mind you but ok ;)

    On thing to try while you wait for support to get back with you is export a Cineform file from HitFilm and see if it works and if you can import it back into HitFilm.

  • Well crap guess its time to build a new computer. lol

    I did try to export to cineform from hitfilms and that worked fine. But it was slow to export

Sign in to comment