Add CineForm support to Voukoder

  • Hello everyone! Recently, I discovered Voukoder and was blown away by how good it works with Media Encoder CS6, After Effects CS6, and Premiere Pro CS6. So, first of all, I wanted to say thank you to Vouk for his work!


    It's great that Voukoder has ProRes support but having CineForm in addition to it would be even better in my opinion.


    I tried to encode a few videos into CineForm with VirtualDub2 and noticed that it encodes noticeably faster than ProRes and it gives even better scrubbing preformance in Pro Pro and AE. In term of file size they're close enough.

  • I took a look at it. The current Voukoder only supports encoders that can be integrated with FFmpeg. Unfortunately the FFmpeg guys decided to not implement it as it doesn't work on any other platform than x86. I am currently working on the Voukoder successor that will support encoders like this one. But there are a couple of months work ahead.

    Help to improve this plugin and support me on patreon or paypal. Thank you.

  • The current Voukoder only supports encoders that can be integrated with FFmpeg. Unfortunately the FFmpeg guys decided to not implement it as it doesn't work on any other platform than x86.

    Oh, I didn't know about that. Thanks for pointing it out.

    I am currently working on the Voukoder successor that will support encoders like this one. But there are a couple of months work ahead.

    Nice! I'll be looking forward to it. Any chance that it would still be compatible with CS6?

  • I tried to encode a few videos into CineForm with VirtualDub2 and noticed that it encodes noticeably faster than ProRes and it gives even better scrubbing preformance in Pro Pro and AE. In term of file size they're close enough.

    I do like Cineform too. For me, it still performs fastest to live playback in Premiere. Even the proxies in lowest quality look so decent I've to look closely to notice difference from full-resolution original. I've tried DNX for a while but went back to cineform again. Prores is the hardest to playback, I find.

    I am slightly confused though, why you ask if cineform is already supported in Adobe, has been for several years by now?

    I also VirtualDub2 from time to time, including cineform. It seems it hasn't been updated for a while, so I've some doubt if it will continue on. My problem with it was its command line usage is quite cumbersome compared to something like ffmpeg. I got it to work before, but then since certain version it for some reason just refused to work anymore.

    I mostly use Media Encoder to transcode to cineform. I experimented a bit with a custom "cfenc" binary some guy F1nkster/marksfink wrote, but since FFMPEG added cfhd I've been using that.


    The current Voukoder only supports encoders that can be integrated with FFmpeg. Unfortunately the FFmpeg guys decided to not implement it as it doesn't work on any other platform than x86.

    They added cfhd encoder a while back, in August. I haven't noticed issues with it in my experience so far. Unless I'm misunderstanding something.

  • Seems I got it right now:


    Help to improve this plugin and support me on patreon or paypal. Thank you.

  • My bad, I didn't realize it's not in official release yet. The one I have installed at this point is ffmpeg-20200818-1c7e55d-win64-static , it's a git windows build by Zeranoe but they don't build anymore now. I just tried latest Gyan.dev git build (ffmpeg-git-full) and it has the encoder too.



    Speed wise, on my pc it's definitely slower than Media Encoder when converting from h264 (and I made sure to disable hardware decoding in Adobe), about 60%.


    There is a quirk with Cineform that it requires the frame width must be evenly divisible by 16 and the frame height by 8. Adobe converts the file anyway even if source doesn't adhere to this rule, but rounds the width to closest appropriate value by adding tiny black bars. For some reason, it doesn't mind the height being not /8. But I've had issues before when video players of youtube would add a black or colored bar to fill the height gap. Not sure if it's an issue still.


    FFmpeg's cfhd just flat out rejects the input with "bad" width and stops with error. Just like Adobe, it seems to not mind the height not being /8.

  • Looks good so far!

    Help to improve this plugin and support me on patreon or paypal. Thank you.

  • Tested, works fine, speed wise seems to be same as ffmpeg (well, obviously).


    When I tried to encode a 3834x2120 ("bad" width) file it failed - which is to be expected since cfhd just fails to initialize with such files. It does actually produce a red error output within ffmpeg

    Code: cmd.exe
    [cfhd @ 000001b782e22dc0] Width must be multiple of 16.
    [cfhd @ 000001b7829e6300] ff_frame_thread_encoder_init failed
    Code: voukoder log
    Opening codec: cfhd with options: quality=high
    Failed opening codec: cfhd
    Unable to open video encoder: cfhd
    Closing encoders ...
    Opening encoder failed! Aborting ...
    0000000066E56DD0

    I don't know if passing some critical errors from ffmpeg is possible, but it might be useful sometimes.


    On a side note, UtVideo works too and seems to be the same speed wise as the official installable VCM codec. It does normally utilize .avi container though, which I understand isn't currently supported in voukoder.

  • Did you try 7rc2 already?

    I did install it yesterday, but didn't specifically test yet in regards to fixes.
    I did just now. Exported to UtVideo (420) .avi, and h264_nvenc to VBR

    bitrate 150M / max 250M/ bufsize 500M , all is fine.


    On a side note, one thing slightly bothered me, is when you switch audio to AAC from another codec, when it's "initialized", the dropdown menu defaults to first entry of 96kbit/s. I realize it happens because GUI dropdown defaults to first entry, but is it possible to make it default it to something like 320?

  • Nice!


    Yes, it is basically using the FFmpeg default value. I could set anything as default, but I guess users have a different favorite setting here.

    Help to improve this plugin and support me on patreon or paypal. Thank you.

  • Vouk, thanks for such a quick feature update! You're the best!


    I am slightly confused though, why you ask if cineform is already supported in Adobe, has been for several years by now?

    As I mentioned in my original post, I'm still using quite dated Adobe Creative Suite 6 Master Collection, which doesn't have some of the latest features of Creative Cloud. I hadn't updated for so long mainly because CS6 does 99% of what I need, almost never crashes (unlike CC), doesn't require a subscription, and has somewhat lower hardware requirements (compared to the latest CC counterparts).