Cineform Issues

Get answers to your questions about color grading, editing and finishing with DaVinci Resolve.
  • Author
  • Message
Offline

RikshaDriver

  • Posts: 651
  • Joined: Sun Aug 12, 2018 10:08 am
  • Location: Melbourne
  • Real Name: Asim Siddiqui

Cineform Issues

PostSun Mar 29, 2020 12:18 pm

There are a few things regarding Cineform I've been meaning to post on for a while:

  • Legacy NTSC Resolution support (720x486)
  • Latest Cineform release

So for the first item... It appears I can't export content at 720x486, despite Resolve showing this as an option under delivery... and despite the codec being capable enough of exporting this resolution.

Any time I try at that res, it keeps spitting out the following error:

cineform_error.png
cineform_error.png (7.76 KiB) Viewed 3675 times



The second issue is that Resolve appears to be using a really old version of the Cineform codec... dating back to 2015... (GoPro Studio 2.5.8.0 / Cineform v9.2.1.108)... since then... Cineform has had numerous updates... gone Open Source (https://gopro.github.io/cineform-sdk/) and is now at a complete new revision (v10.0.2) including bugfixes and further optimizations.

So it begs the question... why not update the included Cineform libraries? I've actually compiled from the source and replaced the legacy libraries under Resolve with the new versions.
GitHub Projects: https://github.com/xtremestuff/
Commercial Plugins: https://xtremestuff.net/store/
Offline

Jim Simon

  • Posts: 34455
  • Joined: Fri Dec 23, 2016 1:47 am

Re: Cineform Issues

PostSun Mar 29, 2020 1:37 pm

It's a good idea for here:

viewforum.php?f=33
My Biases:

You NEED training.
You NEED a desktop.
You NEED a calibrated (non-computer) display.
Offline

Andrew Kolakowski

  • Posts: 9391
  • Joined: Tue Sep 11, 2012 10:20 am
  • Location: Poland

Re: Cineform Issues

PostSun Mar 29, 2020 2:22 pm

486 is not mod 16 so Cineform does not support it.
There is still old and very bad limitation in Cineform code which requires dimensions to be mod 16.
Offline

RikshaDriver

  • Posts: 651
  • Joined: Sun Aug 12, 2018 10:08 am
  • Location: Melbourne
  • Real Name: Asim Siddiqui

Re: Cineform Issues

PostSun Mar 29, 2020 9:41 pm

Andrew Kolakowski wrote:486 is not mod 16 so Cineform does not support it.
There is still old and very bad limitation in Cineform code which requires dimensions to be mod 16.


I've gone through the source code and see no such limitation. The only reference I can see is multiples of 2.
GitHub Projects: https://github.com/xtremestuff/
Commercial Plugins: https://xtremestuff.net/store/
Offline
User avatar

Dmytro Shijan

  • Posts: 1766
  • Joined: Wed Sep 17, 2014 7:15 pm
  • Location: UA

Re: Cineform Issues

PostSun Mar 29, 2020 10:27 pm

I personally may suggest to stay away from Cineform, especially for SD interlaced video. It is not consistent abandoned codec now, it is very different from version to version. It seems it always force HD Rec709 color space even if video was actually SD with Rec601, so with SD video you will always expect tiny color shift in Resolve. It may produce artifacts due AVI vs MOV compatibility problems. I described some adventures with legacy Cineform here viewtopic.php?f=3&t=109259#p604955
BMMCC/BMMSC Rigs Collection https://bmmccrigs.tumblr.com
My custom made accessories for BMMCC/BMMSC https://lavky.com/radioproektor/
Offline
User avatar

Dmytro Shijan

  • Posts: 1766
  • Joined: Wed Sep 17, 2014 7:15 pm
  • Location: UA

Re: Cineform Issues

PostSun Mar 29, 2020 10:30 pm

RikshaDriver wrote:
Andrew Kolakowski wrote:486 is not mod 16 so Cineform does not support it.
There is still old and very bad limitation in Cineform code which requires dimensions to be mod 16.


I've gone through the source code and see no such limitation. The only reference I can see is multiples of 2.

Maybe it is due color sampling model https://forum.selur.net/showthread.php?tid=12 :

RGB: (4:4:4)

width no restriction
height no restriction if video is progressive
height mod-2 if video is interlaced

YUY2: (4:2:2)

width mod-2
height no restriction if video is progressive
height mod-2 if video is interlaced

YV12: (4:2:0)

width mod-2
height mod-2 if video is progressive
height mod-4 if video is interlaced
BMMCC/BMMSC Rigs Collection https://bmmccrigs.tumblr.com
My custom made accessories for BMMCC/BMMSC https://lavky.com/radioproektor/
Offline

RikshaDriver

  • Posts: 651
  • Joined: Sun Aug 12, 2018 10:08 am
  • Location: Melbourne
  • Real Name: Asim Siddiqui

Re: Cineform Issues

PostMon Mar 30, 2020 12:43 am

Dmitry Shijan wrote:I personally may suggest to stay away from Cineform, especially for SD interlaced video. It is not consistent abandoned codec now, it is very different from version to version. It seems it always force HD Rec709 color space even if video was actually SD with Rec601, so with SD video you will always expect tiny color shift in Resolve. It may produce artifacts due AVI vs MOV compatibility problems. I described some adventures with legacy Cineform here viewtopic.php?f=3&t=109259#p604955


FFMpeg uses a hacked/reverse engineered version of Cineform - hence your issues. Resolve also converts 601 to 709 internally. FFMpeg developers refuse to incorporate the official open source version due to x86 specific targets. The rest of the commentary on it being "not consistent" and "abandoned" is pure speculation.

In my opinion Cineform is actually far superior to DNxHD and ProRes in a number of scenarios... for one it doesn't suffer from macroblocking issues. Far from being legacy, it has been been standardized by SMPTE as VC-5 only a few years ago.
GitHub Projects: https://github.com/xtremestuff/
Commercial Plugins: https://xtremestuff.net/store/
Offline
User avatar

Dmytro Shijan

  • Posts: 1766
  • Joined: Wed Sep 17, 2014 7:15 pm
  • Location: UA

Re: Cineform Issues

PostMon Mar 30, 2020 6:35 am

I didn't claim that Cineform it totally bad codec, i told about problems when use that codec between different systems, different codec generations and and different OSes.

If workflow is simple and you work within single app, single OS and render/import to single version of current Cineform codec - it usually work ok.

But if you need to use Cineform files from different codec versions generated 10 years ago with different software - it may produce huge problems.
Codec consistency is very important thing. For example industry approved things like DV codec works in any modern app exact same as in 1995.
My additional problems with Cineform in past (probably fixed in new OSes and codec versions):
Gamma shifts between .mov vs .avi containers.
Active metadata disaster. It looked like nice idea, but in reality some apps read that Cineform active metadata some not, so your video may looked random in random apps. Total mess.
As i know there are no tools for quick lossless trim of Cineform files.

All Cineform history consists of endless changes, renames and bugfixes. It always feels like beta version. Nice technology but unlucky fate and inconsistent development. It don't feels like future proof thing for me, even if it weights slightly less than ProRes. Quality is also subjective. Compression vs Speed, Macroblocking vs too smoothed "plastic look" produced by wavelet compression.
Less codecs - more stable workflow. I prefer everything in ProRes that "just works" without any surprises and currently natively supported on Mac and Windows by most video editing apps, cameras, recorders and other hardware.
BMMCC/BMMSC Rigs Collection https://bmmccrigs.tumblr.com
My custom made accessories for BMMCC/BMMSC https://lavky.com/radioproektor/
Offline

Andrew Kolakowski

  • Posts: 9391
  • Joined: Tue Sep 11, 2012 10:20 am
  • Location: Poland

Re: Cineform Issues

PostMon Mar 30, 2020 9:26 am

RikshaDriver wrote:
Andrew Kolakowski wrote:486 is not mod 16 so Cineform does not support it.
There is still old and very bad limitation in Cineform code which requires dimensions to be mod 16.


I've gone through the source code and see no such limitation. The only reference I can see is multiples of 2.


It has such a limitation:

"David Newman
We do have a mod 16 horizontal limit (not vertically.) Always had this. We might change this one day. Fortunately all the standard horizontal resolutions are divisible by 16: 320, 360, 704, 720, 960, 1280, 1440, 1920, 2048 and so on."

but horizontally (which I forgotten), so 720x486 should actually be fine.

There was 1 change in the Cineform code which broke compatibility if I remember well. After that point all files should be fine. When it comes to stability ProRes is the best implemented codec out there, mainly because Apple overlooks those implementations (with other codecs it's a free world).
Offline

RikshaDriver

  • Posts: 651
  • Joined: Sun Aug 12, 2018 10:08 am
  • Location: Melbourne
  • Real Name: Asim Siddiqui

Re: Cineform Issues

PostFri Sep 18, 2020 1:16 pm

Reviving this old discussion.

Now that ffmpeg 4.3.x has an implementation of Cineform, I thought I might check on the version of Cineform used in Resolve... and to no surprise, it's still the old v9.2 dating back to 2015.

Is there any technical reason preventing the implementation of the updated version that's now open sourced at https://github.com/gopro/cineform-sdk ?
GitHub Projects: https://github.com/xtremestuff/
Commercial Plugins: https://xtremestuff.net/store/
Offline

Andrew Kolakowski

  • Posts: 9391
  • Joined: Tue Sep 11, 2012 10:20 am
  • Location: Poland

Re: Cineform Issues

PostSat Sep 19, 2020 5:04 pm

All official Cineform release have mod 16 horizontal limit.
ffmpeg version may be different, but I haven't checked yet.
Offline

Jim Simon

  • Posts: 34455
  • Joined: Fri Dec 23, 2016 1:47 am

Re: Cineform Issues

PostSun Sep 20, 2020 2:52 pm

Andrew Kolakowski wrote:"Fortunately all the standard horizontal resolutions are divisible by 16: 320, 360, 704, 720, 960, 1280, 1440, 1920, 2048 and so on."

That begs the question of why Cineform fails at 2K DCI Scope. (2048 x 858)
My Biases:

You NEED training.
You NEED a desktop.
You NEED a calibrated (non-computer) display.
Offline
User avatar

Uli Plank

  • Posts: 25124
  • Joined: Fri Feb 08, 2013 2:48 am
  • Location: Germany and Indonesia

Re: Cineform Issues

PostMon Sep 21, 2020 4:12 am

Right. Failing here too.
My disaster protection: export a .drp file to a physically separated storage regularly.

Studio 19.1.3
MacOS 13.7.4, 2017 iMac, 32 GB, Radeon Pro 580 + eGPU
MacBook M1 Pro, 16 GPU cores, 32 GB RAM, MacOS 14.7.2
SE, USM G3
Offline

RikshaDriver

  • Posts: 651
  • Joined: Sun Aug 12, 2018 10:08 am
  • Location: Melbourne
  • Real Name: Asim Siddiqui

Re: Cineform Issues

PostMon Sep 21, 2020 5:17 am

And the old 720x486 fails as well.

Is it a Resolve specific arbitrary limit that's preventing the codec from being used with these resolutions?
GitHub Projects: https://github.com/xtremestuff/
Commercial Plugins: https://xtremestuff.net/store/
Offline

Andrew Kolakowski

  • Posts: 9391
  • Joined: Tue Sep 11, 2012 10:20 am
  • Location: Poland

Re: Cineform Issues

PostMon Sep 21, 2020 9:04 am

These are Resolve related problems probably.
720 and 2048 should work.
Offline

Jim Simon

  • Posts: 34455
  • Joined: Fri Dec 23, 2016 1:47 am

Re: Cineform Issues

PostMon Sep 21, 2020 3:52 pm

It's actually the 858 that isn't working, which belies Newman's claim that there is no vertical limit in Cineform.

2048 x 1080 works fine.
My Biases:

You NEED training.
You NEED a desktop.
You NEED a calibrated (non-computer) display.
Offline

Andrew Kolakowski

  • Posts: 9391
  • Joined: Tue Sep 11, 2012 10:20 am
  • Location: Poland

Re: Cineform Issues

PostMon Sep 21, 2020 4:16 pm

David wrote that code so the knows what he is talking about :)

Resolve only issue. 858 vertical works fine with Cineform "core" code.
Offline

Jim Simon

  • Posts: 34455
  • Joined: Fri Dec 23, 2016 1:47 am

Re: Cineform Issues

PostMon Sep 21, 2020 4:35 pm

I suppose that can be tested by trying to encode 2K DCI in another program.

I just don't have any installed. :(
My Biases:

You NEED training.
You NEED a desktop.
You NEED a calibrated (non-computer) display.
Offline

Andrew Kolakowski

  • Posts: 9391
  • Joined: Tue Sep 11, 2012 10:20 am
  • Location: Poland

Re: Cineform Issues

PostMon Sep 21, 2020 4:40 pm

Exactly what I've done. Tested with Vdub2 which uses CF SDK and Premiere.
Offline
User avatar

Cary Knoop

  • Posts: 1654
  • Joined: Sun Mar 12, 2017 6:35 pm
  • Location: Newark, CA USA

Re: Cineform Issues

PostMon Sep 21, 2020 4:53 pm

Andrew Kolakowski wrote:David wrote that code so the knows what he is talking about :)

Resolve only issue. 858 vertical works fine with Cineform "core" code.

Resolve really should fix this, it's a very simple fix.
Offline
User avatar

Dmytro Shijan

  • Posts: 1766
  • Joined: Wed Sep 17, 2014 7:15 pm
  • Location: UA

Re: Cineform Issues

PostTue Nov 10, 2020 3:05 am

Seems it was fixed in Resolve 17:
"Decoding and encoding GoPro CineForm clips with non multiple of 16 res."
BMMCC/BMMSC Rigs Collection https://bmmccrigs.tumblr.com
My custom made accessories for BMMCC/BMMSC https://lavky.com/radioproektor/
Offline
User avatar

Uli Plank

  • Posts: 25124
  • Joined: Fri Feb 08, 2013 2:48 am
  • Location: Germany and Indonesia

Re: Cineform Issues

PostTue Nov 10, 2020 4:08 am

Thanks, BM. I really like Cineform.
My disaster protection: export a .drp file to a physically separated storage regularly.

Studio 19.1.3
MacOS 13.7.4, 2017 iMac, 32 GB, Radeon Pro 580 + eGPU
MacBook M1 Pro, 16 GPU cores, 32 GB RAM, MacOS 14.7.2
SE, USM G3
Offline

RikshaDriver

  • Posts: 651
  • Joined: Sun Aug 12, 2018 10:08 am
  • Location: Melbourne
  • Real Name: Asim Siddiqui

Re: Cineform Issues

PostFri Jan 01, 2021 11:00 am

Not to rehash this thread again, but the Cineform codecs included with Resolve are still the old versions dating back to 2015.

There have been plenty of updates since then...

https://github.com/gopro/cineform-sdk
GitHub Projects: https://github.com/xtremestuff/
Commercial Plugins: https://xtremestuff.net/store/
Offline

Andrew Kolakowski

  • Posts: 9391
  • Joined: Tue Sep 11, 2012 10:20 am
  • Location: Poland

Re: Cineform Issues

PostFri Jan 01, 2021 6:07 pm

It's meaningless. Nothing changed in engine since 2015.
All files are compatible. 858 problem was a different problem, unrelated to used CF SDK.
There was some change in the core, but way before this (around 2005 or so).

Return to DaVinci Resolve

Who is online

Users browsing this forum: Bing [Bot], Majestic-12 [Bot], Yahoo [Bot] and 319 guests